<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[T-Display-S3 UART communication issue]]></title><description><![CDATA[<p dir="auto">I have this device : <a href="https://www.waveshare.com/wiki/SIM7600E-H_4G_HAT" rel="nofollow ugc">SIM7600G-H</a>, that I know works because I started my initial tests on the Arduino UNO, and I was able to get an "OK" from a basic status check ("AT" command), I could send SMS, make a call...everything on the UNO is working great.</p>
<p dir="auto">Moving over to the T-Display-S3, I can't get anything out of the unit, not even an "OK", I trimmed the code down to the basic instructions that should work.</p>
<p dir="auto">I have tried the <a href="https://github.com/Xinyuan-LilyGO/T-Display-S3/blob/main/example/SerialExample/SerialExample.ino" rel="nofollow ugc">Serial Example</a>, posted in the Github repo, and that works, so I can see the data I enter into the Serial Monitor to pass through the ports, so I would think everything is okay, but then why would it not work on the T-Display S3, but work on the Arduino UNO ???</p>
<p dir="auto">I tried other ports 21, and 16, as shown in the Github repo example, and that didn't work...Running out of ideas here, if anyone has had issues implementing a Hardware Serial build please let me know.</p>
<p dir="auto">Thank You.</p>
<pre><code>#define RX_PIN 18
#define TX_PIN 17

#define SIMCOM Serial1

const long int SIMCOM_BITRATE = 115200;

void setup() {

  Serial.begin(115200);
  
  while (!Serial) {
    ; 
  }
  delay(3000);

  SIMCOM.begin(SIMCOM_BITRATE, SERIAL_8N1, RX_PIN, TX_PIN);
  while (!SIMCOM) {
    ; 
  }  
  delay(3000);

}

void loop() {

  char message[] = "AT";

  SIMCOM.write(message);

  Serial.println(message);

  delay(100);

  long int time = millis();

  int timeout = 5000;
  
  int x = 0;
  char response[128];

  do {

    if (SIMCOM.available() != 0 ) {
        response[x] = SIMCOM.read();
        x++;
    }

  } while ((time + timeout) &gt; millis());

  Serial.println("Timed out..." + String(x));

  Serial.print("Response : ");
  Serial.println(response);
  Serial.println();

}
</code></pre>
]]></description><link>https://www.community.lilygo.cc/topic/582/t-display-s3-uart-communication-issue</link><generator>RSS for Node</generator><lastBuildDate>Sun, 17 May 2026 06:02:58 GMT</lastBuildDate><atom:link href="https://www.community.lilygo.cc/topic/582.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 29 Aug 2023 04:24:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to T-Display-S3 UART communication issue on Wed, 30 Aug 2023 20:42:21 GMT]]></title><description><![CDATA[<p dir="auto">Little update.</p>
<p dir="auto">I am able to receive the initialization message from the SIM7600 board, so at least I know that the hardware serial read works :</p>
<pre><code>RDY

+CPIN: READY

SMS DONE

PB DONE
</code></pre>
<p dir="auto">If anyone has this issue, you can just do a read in the main loop....</p>
<pre><code>  String response = "";

  while (SIMCOM.available()) {
     char c = SIMCOM.read();
     response += c;
  }
  Serial.print(response);
</code></pre>
<p dir="auto">and then power cycle the SIM7600 with The T-Display-S3 connected</p>
<p dir="auto">Still a mystery as to what is going on</p>
]]></description><link>https://www.community.lilygo.cc/post/1069</link><guid isPermaLink="true">https://www.community.lilygo.cc/post/1069</guid><dc:creator><![CDATA[eflorea]]></dc:creator><pubDate>Wed, 30 Aug 2023 20:42:21 GMT</pubDate></item></channel></rss>