Cellular module firmware update - HOW TO?

Hmm, still messing with cellular - its 19 months since I started. Interesting that I still cannot get it to work in a stable and meaningful way.

Anyway, after hacking a few days trying to send an MMS with the cellular module, I concluded that the firmware version on the module is not supporting it…bad luck.

The firmware on my module is:

According to this link: GeekOnfire.com is for sale | HugeDomains

It should be possible to update to a version that supports MMS.

But can anyone of you suggest an easy way to get the tool on the pc to connect to the module… I am willing to invest in extra hardware…

Hint hint, I see now on the module there is a RX/TX connection option I can solder stuff to. Confirmed in the schematics… http://www.ghielectronics.com/downloads/schematic/Cellular_Radio_Module_SCH.pdf

I really hope you are going to share what you learn back with everyone. Wish I could help.


Yes you can update it and yes you can use the TX,RX pins that show on the board labelled as J3.
I’ve updated the SIM900 firmware on the module I’ve been working with.

First you need the update tool that you can download here: http://bit.ly/sim900-ut-v1-8
You can find the user guide here: http://wm.sim.com/downloaden.aspx?id=2818 (need to register first)

There is a guy who seems to be keeping a list of the latest firmware available here:

In order to boot the SIM900 in “update” mode you need to pull down the reset pin as you power up the module. As these pins are not exposed in the module, what I did was short circuit pins 1 and 3 of the K connector before powering it.

To connect the update tool with the module I’m using an FTDI USB-RS232 cable with TTL output level.

With all the tips above I believe you should be able to update the firmware. If not, let me know what you are struggling with and I’ll try to guide you through.



Wuaw, sounds promising.

Can you be very precise on your hardware setup… I don’t understand how the link from PC to sim900 exists?

Thank you so much

@ njbuch: you are right I missed that part… just edited my original post.

I’m using an FTDI USB-RS232 cable with TTL output level to connect the J2 rx, tx pins. Also don’t forget to connect the cable GND to the module GND. :wink:

Could this one be an example: http://www.ebay.com/itm/FTDI-Serial-Cable-Adapter-Chipset-XD-43-FT232-USB-With-CTS-RTS-USB-to-TTL-NEW-/291266591423

Thanks again

This is the wires, can you be completely specific on where you have attached them… :think: :think:

@ njbuch: that cable looks all right.
As for the wires you’ll need RX, TX and GND (black, with and green). You should connect them to the respective signals at the module board.

A clarification is in order: I recommended the FTDI cable because it happens to be the one that I have here and that I’ve used.

Having said that and knowing that the update tool only “talks” to a COM port, I would say that any other USB-RS232 cable or regular RS232 port that you may have on your PC would be good to connect to the module board. Providing the signal levels are within the range of the module voltage!

@ JSimoes - I think I am now ready to try. Just need to find best suited firmware for the job then. Any idea how to choose?

PPP and mms available in same version.

@ njbuch: I haven’t tested the features you are after with the firmware that I’m using.
I did a quick visit to the URL on your original post. I would say that you should be good using that firmware to update your SIM900.

I had a dialogue with Dost Muhammad Shah who is the man behind the archive of firmwares. He told me that this post contains the newest firmware available for SIM900: http://dostmuhammad.com/blog/latest-enhance-firmware-for-simcom-sim900-module-1137b03sim900m64_st_enhance/

According to him, the Enhance is the newest series of firmwares, and it looks really promising. Lots of cool features to load off the Cerberus with email, ntp, mms and more.

Looking forward to get my cable so I can give it a spin.

If anyone else tries this, please let me know.

Thanks to Dost and @ JSimoes for the assistance. :slight_smile:

EDIT: This firmware is from May 2014. Pretty new!
EDIT2: I was told that new modules bought from Simcom has this version of the firmware.


This topic did really help me to update the firmware of the SIM900 on the Cellular Radio module.

I did use a standard USB to serial device/cable. The signal seemed however not to be TTL compatible. Lucky for me, I had a hex inverting buffer (MC14049UB) which I previously used to read serial values from a Maxbotic distance sensor together with the Cerberus mainboard. Using this hex inverting buffer, I was able to update the firmware via the J3 Rx/Tx connectors on the module.

I have successful updated 4 modules from 1137B10SIM900M64_ST to 1137B13SIM900M64_ST.

Hmm, I am still waiting for my cable, but now getting nervous. Can you be more specific, what signal are you talking about? And can you post a picture of the working setup?

The SIM900 interface IO works at 2.8V and not 3.3 or 5V as some designs seem to indicate. Even the latest devices that can be powered from 3.3V instead of the usual 4.3V still use 2.8 as the interface.

You NEED to use a level shifter on the inputs as a minimum. As the interface is basically a SLOW rate, the FET level shifter you can find on Sparkfun will work well.

Watch out for this with SIMCOM modules.

Attached, the way I was able to update the firmware successfully. I doubt whether the connection between the GND of the serial port and the module is needed, but since I used it it seems good to draw it anyway :wink:

I think that the cable you ordered is already having the right signal, since it’s a TTL cable. There is a difference between RS232 and TTL (https://www.sparkfun.com/tutorials/215) and since I only had a RS232 cable, I needed the hex converter.

I like to hear your experiences with the ordered cable once it arrives, since it’s much easier than my construction.

Since Dave said that the signal voltage should be 2,8V, I might have been lucky that it did work and did not damage the SIM900 chip due to a too high voltage?


I’m watching this thread with some interest @ njbuch as I have three modules I’m thinking of updating based on your experience.

@ Sprigo - will submit experiences here ASAP

So, here is the first attemtp: FAIL

  1. Bought the TTL USB cable (see previous)
  2. Soldered pins to TX,RX and GND on the module
  3. Downloaded and installed drivers from FTDI (checked that they are enabled and working)
  4. Connected USB-DP->Extender->Cellular while connecting Pin1&Pin3 on the extender
  5. Connected GND (black), RX (white) and TX (green) to the module and plugged it into the USB port
  6. Com port appears on the PC
  7. Fired up the Flash tool
  8. Tool complains that COM port cannot be opened (see screenshot)

Tried looking for bad connections and others stuff, it seems that no matter what I do the comport cannot be openened.

What is wrong?