Interactive session with cellular modem, and more

Hmm, lots of questions popping up regarding the cellular modem. Here comes a few:

  1. Is it possible to hook the cellular modem up to a pc with teraterm to get an interactive AT-session with it? And how?

  2. Have anyone experienced with upgrading the firmware on the SIM900 chip?

  3. The built-in IP protocol stuff in the SIM900 chip does not seem to be used anywhere, is there a good reason for that…? (See for details…)

Any pointers appreciated…!

Hi Niels

I can help with 1. :slight_smile:

You can connect to a PC and the easiest way is to get yourself a USB - TTL converter, the 3.3V types and a Gadgeteer socket breakout board. If you use a USB - RS232 converter you will need a level converter in between. The first option avoids that and it’s a handy tool to have around to connect to Gagdgeteer UARTS anyway for testing :slight_smile:

You’ll most likely need and external 5V power supply for it as the SIM900 is not designed for the limited 500mA current from the USB.

You can then connect it up and talk AT commands to it.

I am trying to POST to a server with the SIM 900 using the GPRS network. HEre is my code:

        public static string GetRequestString(Device device)
            string requeststring = string.Empty;
            string enfofline = "\r\n";
            JsonSerializer serializer = new JsonSerializer(DateTimeFormat.Default);
            string json = serializer.Serialize(device);
            requeststring += "POST /1/classes/hummingbird HTTP/1.1" + enfofline; // "POST HTTP/1.1" + enfofline;
            requeststring += "X-Parse-Application-Id: XPxXwDAXAjh7UmYE73P7PUHEcjbs92qLOaO0h1BS" + enfofline;
            requeststring += "X-Parse-REST-API-Key: 2eOLXh4TtIqnHRmvTBQESEiGyEir9kcQfmUAXn2a" + enfofline;
            requeststring += "Host:" + enfofline;
            requeststring += "Content-Type: application/json" + enfofline;
            requeststring += "Content-Length: " + json.Length + enfofline; // +enfofline;
            requeststring += json;
            return requeststring;

DOes anyone see anything wrong with this? For some reason i’m able to connect but the response is ‘CLOSED’…very unfriendly sounding and not what I expect.

If you manually capture that request and post it from a browser, does it work ?