AT command script processor for GSM modem debugging

in utilities by 7 | 20 comments

Last week we wrote some software for a GSM (cellular) modem module.  The GSM modem is controlled by AT commands, like an old landline modem. Debugging is usually done by typing AT commands into Hyperterminal or the Bus Pirate.

We got tired of tapping out tons of AT commands by hand, so we created an AT Command Script Processor in C# (Visual C# 2010 Express Edition). We’re releasing it so people can share AT command scripts that demonstrate how various devices are configured.

Download it here, the current version as of this writing is 00.08.01 Alpha Release. We also added a page to the documentation wiki.

Use examples after the break.

There are two files included in the download: the application and a sample script file.

AT Command| Get Response (bool)| Delay|  Comment

The script file formatting is like this. The AT command is first, followed by a Boolean (TRUE/FALSE) value that tells the program if it needs to get a response. Finally, tell it how long to delay before retrieving data from the modem. The last field is an optional comment that is ignored.

Example#1

AT|TRUE|1000|Send  AT then delay for 1 sec then get data

This example waits 1 second and then gets a reply from the GSM modem.

Example#2

AT|FALSE| 1000|Send AT then delay for 1 sec

This example doesn’t get a reply from the GSM modem

This utility helped us test a series of AT commands during development. We’re releasing it so people can share AT command scripts that demonstrate how various devices are configured.

This entry was posted in utilities and tagged , , .

Comments

  1. -S- says:

    Great! Could you do a java version of it or something else portable?

  2. Wartos says:

    Does this mean we can expect a new Dangerous Prototype with a cellular module anytime soon? :p

  3. sjaak says:

    with us you can expect everything ;P

    But suppose we aren’t, do you have an idea for one?

  4. -S- says:

    A very small size gps tracker to be put into bicycle frame tube. I’d buy one :)

  5. tayken says:

    As I remember, AT commands are also used by bluetooth modules.

  6. nutwalker says:

    nice!

  7. 7 says:

    There is a new version: 00.08.02

    - Added Option to adjust RX Buffer Size
    - Special Command for sending ascii from any hex range: __@HEX Usage: __@HEX=AA|TRUE|100|None — example: for creating SMS, Ctrl+Z is needed at the end of the message creation.

  8. 7 says:

    @tayken

    ah yeah, bluetooth modules also use AT commands. thank you for that :D

  9. tayken says:

    Hey, doesn’t Xbee modules also use AT commands? I have some, I’ll check it out sometime.

  10. 7 says:

    Hi tayken,

    thank you so much… I also tested it with the Bus Pirate and it works as well :D

  11. Fonsken says:

    Speaking about AT commands, is there a specification about timeouts? Or is it up to client to decide when he has waited enough?

  12. Ken Than says:

    The download link is no longer working. Can you post the new download link?

  13. HERU says:

    it seem doesn’t compatible with command AT+STGI=0 / AT+STGR= ; for GSM SIM TOOL KIT , because can not Read Reply from Provider.

  14. thor says:

    HERU

    if it can be done on hyperterminal, it can also be done using this tool. maybe you just need to add some delays.

  15. 7 says:

    well said thor ;)

  16. iqbal says:

    I can’t download the application. Could you give me the link?Tq

  17. luite says:

    @iqbal see comment #14

  18. Jonathan says:

    Hi, I’m using this software and first of all I’d like to say thanks for writing it, because its pretty great.

    Secondly I have a question. When I use the AT command AT#SD to activate a remote socket connection directly through a terminal program (in my case secureCRT) I get the response “AT#SD = 1,0,80,”google.co.uk” but with my script using your software, the resonsei get is “AT#SD = 1,0,80,”google.co.uk”.

    Can anyone tell me why this difference is appearing?

Leave a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Notify me of followup comments via e-mail. You can also subscribe without commenting.