Moduł GSM nagle przestał działać

Mam pewną konstrukcję z popularnym modułem GSM SIM800L. W ciągu ostatnich kilku lat wykonałem kilka egzemplarzy, które bezawaryjnie działały w kilku różnych lokalizacjach. Ostatnio jedna z nich przestała. Po podpięciu się przez UART i odczytaniu logów okazało się, że modem wywala się na początku konfiguracji, przy próbie ustawienia pracy w trybie tekstowym (AT+CMGF=1). Zawsze w tym momencie zwracał "OK", teraz zwraca "ERROR". Firmware zarządzający urządzeniem w takiej sytuacji podejmuje próbę resetu modułu i jego ponownej konfiguracji, jednak sytuacja powtarza się w kółko.

Co mogło się zmienić, że nagle komenda przestała się podobać modemowi? Przychodzą mi do głowy dwie możliwości:

  1. Doszło do uszkodzenia samego modułu, które objawia się dopiero w momencie konfiguracji łączności GSM. Prostsze komendy (AT, ATE0) przechodzą pomyślnie, zwracając "OK".
  2. Coś zmieniło się po stronie sieci. Czy wynik komendy AT+CMGF może być zależny od sieci?
Reply to
Atlantis
Loading thread data ...

On 05.07.2022 09:01, Atlantis wrote: [...]

Tak sobie strzelam:

formatting link

Reply to
JDX

Raczej nie, bo to zmienia tylko komunikację z pdu na text w obrębie lokalnego interfejsu. Kojarzę chyba taki przypadek u siebie, że nagle polecenie które "normalnie" zwracało OK nagle zaczęło zwracać ERROR. Możliwe powody:

- CMGF przed użyciem może wymagać rejestracji w sieci (upewnij się że jest)

- zmiana kolejności poprzedzających poleceń konfiguracyjnych Niektóre wymagają odpowiedniej kolejności

- czas "ciszy" na interfejsie między wysłaniem klientowi polecenia, oczekiwaniem na OK (a dokładnie na \r\n za OK) (najczęściej piszesz kolejne polecenie zanim modem dokończy OK)

- coś grzebałeś i popsułeś składnię polecenia (tylko wydaje Ci się że jest prawidłowa)

- występują zakłócenia co przekłamuje składnię "widzianą" przez modem (miałem tak z sim900A, który sam sobie zakłócał linie uart podczas transmisji GSM). Takie problemy najlepiej diagnozuje się z włączonym echo na uarcie, widzisz wtedy "przekłamane echo". Ty wysyłasz np AT+CMGF=1 a modem w echu zwraca np. AT-MGF=1 (przekłamanie w transmisji).

Reply to
Marek

wtorek, 5 lipca 2022 o 09:01:04 UTC+2 Atlantis napisał(a):

Tzw. Internet sugeruje próbowanie AT+CMGF=1 w pętli. Od sieci może to zależeć tak, że sim800l może wymagać rejestracji w sieci przed tą komendą (RTFM dla tego modułu, podobno zgłasza rejestrację komunikatem "SMS Ready", "niestandardowe" to) - a coś się mogło zmienić w sieci, że rejestracja do GSM trwa w tej lokalizacji dłużej. Inny roaming? Co to za operator? A w ogóle "ręcznie" da się na tym module i karcie SIM wysłać/odebrać sms i zadzwonić/odebrać rozmowę? Najlepiej test w docelowej lokalizacji.

Reply to
Dawid Rutkowski
  1. Karta SIM działa? Abonament opłacony/konto zasilone? :)
  2. Zasięg jest?

MJ

Reply to
Michał Jankowski

Raczej nie sądzę. Z tego co pamiętam mam to zrealizowane w ten sposób, że funkcja odpowiedzialna za pobieranie odbieranie danych z modułu wrzuca je do bufora cyklicznego i sprawdza, czy została przesłana cała linia. Dopiero wtedy parser otrzymuje informację o dostępnej linii i pobiera ją do własnego bufora, zajmując się jej analizą. Poza tym gdyby problem był tutaj, to raczej miałbym do czynienia z niestabilnym działaniem. Tymczasem urządzenia oparte na tym kodzie pracowały stabilnie przez kilka lat i jedno z nich nagle przestało działać zupełnie.

Nie było żadnych zmian ani aktualizacji oprogramowania od ponad pół roku.

To też możliwe - sęk w tym, że komunikacja wywala się zawsze w tym samym miejscu. Gdyby powodem były zakłócenia, to raz na jakiś czas nie przechodziłoby też "AT" i ATE0".

Reply to
Atlantis

A jak wygląda status rejestracji w sieci? Czy była zmieniana karta SIM?

Reply to
Marek

Może w tym rejonie wyłączyli sieć 2/2.5G ?

c.

Reply to
Cezar

Może sprawdź, czy inny taki moduł pracuje w tej felernej lokalizacji? Albo czy ten felerny w innej. Będziesz wtedy wiedzieć, że to wina „zewnętrzna”.

Reply to
Grzexs

No to trzeba wyjąc kartę i sprawdzić telefonem i będzie wszystko jasne. Mi się raz zapchała pamięć sms, ale nie pamiętam jak to się objawiało.

Reply to
Mirek

A i jeszcze jedno - jaki jest stan pamięci SMS? Usuwasz smsy po odebraniu (cmgr/cmgd)?

Reply to
Marek

Tak, na ten problem natrafiłem na początku eksperymentów z modułami GSM. Teraz maszyna stanów obsługująca odbieranie SMS-ów zapobiegawczo czyści skrzynkę przy każdym starcie i usuwa każdego odebranego SMS-a po przeparsowaniu.

Reply to
Atlantis

A co ze statusem sieci, nie komentowałeś tego.

Reply to
Marek

Urządzenie się nie zmieniło, ale co mogło się zmienić:

  1. Temperatura. To może powodować różne dziwne problemy. Urządzenie pracuje wewnątrz czy na zewnątrz?
  2. Coś z siecią. Może wcześniej zanim urządzenie dogadało się z modemem, modemowi już udawało się zalogować do sieci, a teraz trwa to dłużej, a ta komenda nie zadziała bez zalogowania do sieci?
Reply to
Arnold Ziffel

Karta sim jest z całą pewnością aktywna. Co do samego zasięgu, to dopiero trzeba będzie sprawdzić.

Reply to
Atlantis

Możesz to urządzenie przenieść? Sprawdzić - jednak - z inną kartą?

A w ogóle to po błędzie odpytaj o 'extended error'.

AT+CEER

MJ

Reply to
Michał Jankowski

Ale to się zdalnie sprawdza banalnie, wystarczy zadzwonić na jego nr, odpowiada?

Reply to
Marek

Sprawa już się wyjaśniła. Padł moduł GSM. Wymiana na inny egzemplarz momentalnie rozwiązała problem.

Reply to
Atlantis

Eee mało prawdopodobne choć nie niemożliwe. Raczej coś się zmieniło w konfiguracji, co może grozić też nowemu.

Reply to
Marek

Ja wiem czy mało? Np. jakiś EEPROM został zakatowany i dupa. Czasami się zdarza.

Reply to
JDX

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.