SIM900A is very cost effective Dual-band GSM / GPRS solution for projects involve text or web application. Most of the development boards available in market are either country or network locked and useless in certain countries or networks. This particular article aims at upgrading the SIM900A firmware to unlock the modem to work with most of the networks.
Locked SIM900A gives +CPIN: PH-NET PIN when issued AT + CPIN? command. Similarly it fails to register over network and shows Not registered Network status as shown in picture below (if you want to test your module, visit Step C – Testing below).
Firmware upgrading involves few simple steps including connecting the module with PC using Serial Adapter and uploading unlocked firmware. In the end you will restart your module and it will connect to any network.
Contents:
- Hardware Requirements
- Software Requirements
- Step By Step Procedure
- – – – Step A – Connections
- – – – Step B – Firmware Uploading
- – – – Step C – Testing
Hardware Requirements:
- SIM900A Mini GSM GPRS Development Board
- Arduino UNO / Compatible Development Board
- CP2102 Micro USB to UART TTL Module
- Jumper wires
- 5V Power Supply
- Working 2G Supported SIM Card
Software Requirements:
- Arduino IDE
- Adafruit Fona Library for Arduino IDE
- SIMXX Tools
- SSCOM Terminal
- SIM900 Series Download Tools
- SIM900A Firmware
Step By Step Procedure:
Step A – Connections:
There are certain pins available on SIM900A development board. Connect TX, RX and GND ports to Serial adapter and provide power to development board from spare 5V power supply otherwise you will stuck during firmware upgrade. Do not forget to share common GND between SIM900A, Serial Adapter and Power Supply. Connect the Serial Adapter according to the following combinations.
SIM900A & Serial Adapter:
Serial Adapter | SIM900A |
TX | TX |
RX | RX |
GND | GND |
SIM900A & Power Supply:
Power Supply | SIM900A |
5V | 5V |
GND | GND |
Step B – Firmware Uploading:
Download and extract SSCOM Terminal, SIM900 Series Download Tools and SIM900A Firmware available under SIMXX Tools compressed zip file. Launch SIM900 Series Download Tools and under SERIAL Download Tab, choose;
- SIM900A under Target
- Appropriate Port
- 460800 Baud Rate
- 1137B09SIM900B32_ST.cla firmware upgrade file
- Check “Don’t check file name”
Hit “Start Download” in the end and application will wait for firmware upgrading mode. Just short EN pin present on SIM900A development board to GND using a male jumper wire and progress bar will show changes. It will take couple of minutes until it will show “Download complete” under status windows and progress bar will reach up to 100%.
SIM900A development board will not reboot after upgrade automatically, so reboot it manually by disconnecting the power for few seconds.
Step C – Testing:
Insert SIM Card in SIM900A and launch sscom32 terminal. Operate further according to the picture (Left Side) given below;
- Choose appropriate Port
- Hit Connect
- Open command sidebar
- Insert AT + CPIN? command and launch it
- Terminal will show output which means module in now unlocked and ready for use
Let’s test SIM900A module by connecting it to Arduino Development Board installed with FONAtest example sketch of Adafruit Fona Library. Connect RX, TX and GND of SIM900A with Arduino Development Board and power the SIM900A using external power supply in the same way as described before. Select the connected Port and Launch Serial Console in Arduino IDE. Follow the test sketch instructions and you can see that SIM900A is registered over network (as shown in picture below). Try sending a test message and voila!, message has been Sent! successfully.
Is correct Connect the Serial Adapter to SIM900A, it should not be like this: Adapter Tx to SIM900A Rx? In the description on your website is Adapter Tx to SIM900A Tx. Is this good?
Late reply. But you are right. With TX-TX it doesn’t work. Today I connected as you mentioned above and download completed otherwise the progress stays at zero
Thank you very much, this article was very useful.
I just bought the module SIM900A and after I turn it on (With 5V 2A External Power supply) the light is blinking fast with the sim card in it. Tried every thing but the sim is apparently not working.
Is it necessary to unlock the modules and otherwise they don’t work in Pakistan ??
another question is that will it work after firmware update ??
Many thanks for the article!
As already mentioned, TX-TX and RX-RX should be corrected to TX-RX and RX-TX.
I successfully flashed my SIM900A with SIM900 firmware under Linux using wine. The only change I needed is communication speed: 460800 failed, 230400 worked out well. The process took me 3 min 50 sec
Which SIM900A version are you using? MINI ? or shield ?
Cheers
Hi, wha’ts the EN pin ? can you show me please?
Cheers.
I also unable to find the EN pin
is there any other way. I m stuck
EN pin is SIM900A RST pin (Reset), You should connect SIM900A ground to the RST pin for 1 second after you click “Start Download”, then release the RST pin connection.