Navigation

    LILYGO

    • Register
    • Login
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    T-Display-S3 UART communication issue

    Common problems
    1
    2
    803
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      eflorea last edited by eflorea

      I have this device : SIM7600G-H, 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.

      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.

      I have tried the Serial Example, 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 ???

      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.

      Thank You.

      #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) > millis());
      
        Serial.println("Timed out..." + String(x));
      
        Serial.print("Response : ");
        Serial.println(response);
        Serial.println();
      
      }
      
      1 Reply Last reply Reply Quote 0
      • E
        eflorea last edited by

        Little update.

        I am able to receive the initialization message from the SIM7600 board, so at least I know that the hardware serial read works :

        RDY
        
        +CPIN: READY
        
        SMS DONE
        
        PB DONE
        

        If anyone has this issue, you can just do a read in the main loop....

          String response = "";
        
          while (SIMCOM.available()) {
             char c = SIMCOM.read();
             response += c;
          }
          Serial.print(response);
        

        and then power cycle the SIM7600 with The T-Display-S3 connected

        Still a mystery as to what is going on

        1 Reply Last reply Reply Quote 0
        • First post
          Last post
        Powered by NodeBB | Contributors