Send MMS From Serial Port on Raspberry Pi

4828 2



In order to establish the PPP connection:

  • AT+CGDCONT? This should respond with the context you are on. This means you are ready to attach/connect.
  • AT+CGATT=1 (attach your modem)
  • AT+CGDATA=? (check what is the data mode)
  • AT+CGACT=1 (activate your connection)

Now you are on PPP, and then you talk over the modem using whatever your provider is using. It could be anything from direct HTTP to MMSE protocol.

For example, here is a complete transcript over HTTP. First, we need to setup the modem and connection information. All these commands should get a response of OK from the modem.

AT+CMMSINIT # Initialize the MMS method

AT+CMMSCURL=”” # the MMS center URL

AT+CMMSCID=1 # Set bearer

AT+CMMSPROTO=”″,8080 # MMS Proxy information

AT+SAPBR=3,1,”Contype”,”GPRS” # How you are sending

AT+SAPBR=3,1,”APN”,”foobar” # Set the APN

AT+SAPBR=1,1 # Activate the bearer context

Next, we prepare the message:

> AT+CMMSEDIT=1 # Enter edit mode


> AT+CMMSDOWN=”PIC”,54321,30000 # Download a pic that is 54321 bytes

# and set the latency

# for the download to 30000 ms

CONNECT                         # This means, ready to receive data

# so send your file

OK                            # Data received

> AT+CMMSRECP=”123456789″       # Set the recipient


> AT+CMMSVIEW                   # View your message

(your message)


> AT+CMMSSEND                   # Send the message

OK                             # Message sent

> AT+CMMSEDIT=0                 # Exit edit mode, and clear the buffer





foobar = simple


MMS Proxy:

TCP Connection over GPRS using SIM900 and AT Commands


Related Post

Serial Commands used by our Satellite transciever.

Posted by - October 17, 2015 0
We will need the crc16 python code library : [crayon-6169e913d1424118964432/] [crayon-6169e913d1429174327941/]   [crayon-6169e913d142b551184083/] Keep Reading : Serial Communication with…

python to send a SMS message

Posted by - October 18, 2015 0
[crayon-6169e913d19ae698314596/] Keep Reading : Serial Communication with SMS Modem (FONA) GPS RESPONSE CODE ORDER Serial Commands used by our Satellite…

Turn string into array with split

Posted by - October 18, 2015 0
textWithCommas = “bee,apple,pear,dog,carrot,robot” wordList = textWithCommas.split(“,”) print “the second item is : ” + textWithCommas[1] Keep Reading : Identify USB…

There are 2 comments

  1. Avatar

    a couple questions…
    MMS PROXY… what is it ? how do you obtain the IP address and port number for it ???
    also, “PIC”, is that the file name of the image file ???

    1. Avatar

      I found my MMS Proxy on a list of MMS details on google, but I can’t find the page now. PIC is the kind of file you are sending, it can also be set to TXT and other things, please see the PDF that I referenced at the bottom of the article.

  2. Pingback: Super Simple Google AIY Surveillance Camera – Not A Bomb

Leave a Reply to tom Cancel reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.