SIM900A jako zamiennik dla SIM900 #1

SIM900 to bardzo popularne kiedyś moduły GSM/GPRS pracujące w pasmach 850/ 900/ 1800/ 1900 MHz.

Niestety od 2015 roku nie są już produkowane.

Można by powiedzieć mała strata - na rynku są już nowocześniejsze i tańsze odpowiedniki jak choćby SIM800C (czy jeszcze tańszy SIM800L) jednak czasem istnieje potrzeba zachowania kompatybilności z dotychczasowym layoutem PCB.

Jest na to kilka rozwiązań - zastosowanie kompatybilnych modułów SIM800F dla technologii 2G, SIM5300E dla 3G czy SIM7100 dla 4G.

Jednak jeśli ktoś może poświęcić trochę czasu a layout PCB uwzględnił wyprowadzenie pinów DBG-TXD i DBG-RXD (odpowiednio 27 i 28) lub możliwość podłączenia się pod TXD i RXD (piny 9, 10) oraz łatwego podłączenie zasilania to może wykorzystać SIM900A - azjatycką wersję modułu SIM900 działającą po zmianie oprogramowania również w europejskich sieciach komórkowych.

Zaletą takiego rozwiązania może być cena modułów - czasem poniżej 1$ za sztukę z wysyłką do Polski na popularnej chińskiej platformie sprzedażowej. Kompletne moduły z gniazdem ufl, układem zasilania oraz gniazdem kart SIM też mają śmiesznie niską cenę - prezentowany na zdjęciach kosztował 3,5$.

Jest względnie dobrze wykonany choć maska opisowa mogłaby być czytelniejsza. Zawsze można posiłkować się zdjęciami z internetu.

Do przeprowadzenia aktualizacji wymagany jest konwerter USB-TTL.

Jeśli moduł GSM zasilany ma być z niego to napięcie wyjściowe musi być ustawione na 5V.

Przy niższym napięciu dioda niebieska dioda sygnalizująca zasilanie będzie się świeciła, ale napięcie na module będzie zbyt niskie. Można to sprawdzić wykonując pomiar napięcia na pinie VBTA (Twórcy widać wkradła się literówka) lub bezpośrednio na module (VBAT - piny 55 do 57). Jeśli jest poniżej 3,2V to moduł nie uruchomi się. Jeśli jest prawidłowe (zakres 3,4-4,5V) to czerwona dioda zacznie mrugać.

Łączymy odpowiednio Tx modułu z Rx konwertera i analogicznie dla drugiej pary.

Żeby sprawdzić czy moduł komunikuje się z nami potrzebny jest dowolny program terminalowy do komunikacji na portach COM np. Putty.

Parametry połączenia należy ustawić jak na obrazku. Musi być włączona opcja wysyłania kodu CR (carriage return).

Na komendę AT moduł powinien odpowiedzieć OK.

Jednak próba wykonania połączenia komendą "ATDO+numer telefonu" zakończy się komunikatem NO CARRIER. Podobnie będzie przy próbie wysłania SMS'a czy sprawdzeniu gotowości karty SIM poleceniem AT+CPIN?.

Tego należało się spodziewać. Ważne, że moduł działa i można rozpocząć zmianę oprogramowania na takie pochodzące z modułu SIM900.

Wykonuje się je np. za pomocą programu Simcom_-_sim900_Customer_flash_loader_V1.01 - choć to nie jedyne dostępne oprogramowanie do tego celu.

Należy ściągnąć oprogramowanie do zmiany firmware jak i sam firmware (dostępne na stronie SIMCOM - https://simcom.ee/documents/?dir=SIM900, plik 1137B15SIM900M64_ST.RAR), wypakować go, rozłączyć się z portem COM, uruchomić flash loader, załadować plik o rozszerzeniu *.cla, ustawić prędkość 460800, odpowiedni port COM i pozostaje kliknąć START.

W tym momencie loader zatrzymuje się na komunikacie "Please power up the target".

Wystarczy odłączyć modułowi zasilanie i podłączyć je z powrotem lub zewrzeć pin RST do GND na ułamek sekundy.

Rozpocznie się przesyłanie firmware a następnie jego aktualizacja co może potrwać kilka minut. W tym czasie czerwona dioda będzie świeciła ciągle.

Po poprawnie zakończonej operacji pojawi się komunikat "Download done" a po zrestartowaniu modułu będzie on już działał w europejskich sieciach co można zobaczyć na poniższych obrazkach.

PS bez podłączenia anteny przez ufl lub wlutowaniu jej na PCB komunikacja prawdopodobnie nie zadziała :)