Skip to content

Garbage characters randomly received by HardwareSerial when communicating with SIM800L modem #2198

@toomasz

Description

@toomasz

Hardware:

Board: TTGO Bluetooth&Battery
Core Installation/update date: 15 dec 2018
IDE name: Visual Micro
Flash Frequency: 80Mhz
PSRAM enabled: no
Upload Speed: 115200
Computer OS: Windows 10

Description:

Hi, I'm designing a library for Simcom gsm modems on ESP32. Since the beginning im fighting with strange serial behavior - which is that HardwareSerial sometimes receives garbage characters from GSM modem, especially when it's transmitting/receiving.

Example:

[GSM] => AT+CSQ
[GSM]  <= +CSQ: 11,0
[GSM]  <= OK
[GSM] --- 
[GSM] => AT+CBC
[GSM]  <= +CBC: 0,91,4132
[GSM]  <= OK
[GSM] --- 
[GSM] => AT+CPIN?
[GSM]  <= +CPIN: READY
[GSM]  <= OK
[GSM]  <= ����������������n��������W�����������������o{_��o���������s���o����������V��߿{����������������~������w��������������������߿w�o���������o��������~~����7�
[GSM]  <= RING
[GSM]  <= +CLIP: "+48XXXXXXXXX",145,"",0,"",0
[GSM] --- 
[GSM] => AT+CREG?
[GSM]  <= +CREG: 0,5
[GSM]  <= OK
[GSM] --- 
battery: 91%, voltage = 4.13 V
Signal quality: 11, operator = 
[GSM] => AT
[GSM]  <= }�����������?���������������}�������������~��������������_������������������������-���v��l��{��w?���׾���������;�����w������O_���=���������w���j��u����?������
[GSM]  <= OK
[GSM] --- 

Some facts:

  • Problem occurs mainly when antenna is attached to SIM800L

  • I'm using ESP32 16 Pin for RX from gsm, 17 Pin for TX to modem
  • I tried many different ESP32 boards and Sim800l modes and problem always accured.
  • Problem happens mainly when I connect external antenna to SIM800L, without it most of the time there is no garbage on serial.
  • I have proper power source that is capable of giving 2A for SIM800L and also external 1000uF capacitor attached to GND and VCC of module.
  • I didn't have this problem when I played with modem on regular Arduino UNO
  • Garbage characters occur when modem is transmitting/received packets so while making call, while registering to network, while sending/receiving data
  • Issue tracking the problem on my library: Garbage on serial toomasz/SimcomGsmLib#1
  • Serial initialization code: https://github.com/toomasz/SimcomGsmLib/blob/master/src/SimcomAtCommandsEsp32.h

Questions:

  • Does ESP32 have some kind of filtering for UART that can be activated?
  • Why might ESP32 serial be more susectible to interference than Arduino one?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions