C027_Support library test
Dependencies: C027_Support
Dependents: C027_SupportTest_xively_location software_test_v1
Fork of Seeed_GPRS_Library_HelloWorld by
When running this example make sure you have:
- edited the SIM PIN, APN, USER and PASSWORD for you network operator
- have inserted a SIM card with enough credits
- the antennas connected
- have good reception (especially for GPS)
- installed the mbed CDC drivers if you run windows
- connected a terminal program, such as teraterm
The example will connect the modem to the network and attach it. I will place a post request to download a file from mbed website. It will do a USSD request and finally wait for incoming SMS. It will try to answer your SMS (try asking "where are you").
You should see a similar output in your preferred console program:
C027 Support Example Device Init Device Status: Device: SARA-G350 Power Save: Active SIM: Ready CCID: xxxxxxxxxxxxxxxxxxxxxxxxxxx IMEI: xxxxxxxxxxxxxxxxxxx IMSI: xxxxxxxxxxxxxxxxxxx Manufacturer: u-blox Model: SARA-G350 Version: 08.49 Network Check Network Status: Registration: Home Signal Strength: -87 dBm Operator: Swisscom Phone Number: +41xxxxxxxxxxx Network Join IP Address: xx.xx.xx.xx Socket Create Socket Connect Make a Http Post Request Socket Send Socket Recving Socket 0: 337 bytes pending Socket 0: 145 bytes pending Socket 0: closed by remote host Socket Recv "HTTP/1.1 200 OK Server: nginx/1.1.19 Date: Thu, 10 Apr 2014 13:09:02 GMT Content-Type: text/plain Connection: close Last-Modified: Fri, 27 Jul 2012 13:30:34 GMT Cache-Control: max-age=36000 Expires: Thu, 10 Apr 2014 20:43:53 GMT Vary: Accept-Encoding X-Mystery-Header: 260358892 X-be: web0_prod_sjc Age: 8709 Hello world! " Socket Close Socket Free Network Disconnect Send Ussd Command *#134# Got Ussd Answer: "UNKNOWN APPLICATION" Checking SMS and GPS GPS Location: 47.28xxx 8.56xxx GPS Location: 47.28xxx 8.56xxx ... GPS Location: 47.28xxx 8.56xxx GPS Location: 47.28xxx 8.56xxx Network Status: Registration: Home Signal Strength: -89 dBm Operator: Swisscom Phone Number: +41xxxxxxxxx GPS Location: 47.28xxx 8.56xxx GPS Location: 47.28xxx 8.56xxx ...
Diff: main.cpp
- Revision:
- 11:b8505cbbd55c
- Parent:
- 10:d2da2028a233
- Child:
- 12:96c7b62c7aaf
--- a/main.cpp Mon May 05 15:45:31 2014 +0000 +++ b/main.cpp Wed May 07 15:36:38 2014 +0000 @@ -22,10 +22,21 @@ */ #define PASSWORD NULL - //---------------------------------------------------------------------- +/* This example was tested on C027-U20 and C027-G35 with the on board modem. + + Additionally it was tested with a shield where the SARA-G350 RX/TX/PWRON + is connected to D0/D1/D4 and the GPS SCL/SDA is connected D15/D15. In this + configuration the following platforms were tested (it is likely that others + will work as well) + - C027-XX. + - LPC1549v2 + - FRDM-KL25Z + - FRDM-KL46Z + - NUCLEO-F401RE +*/ #if defined(TARGET_UBLOX_C027) || defined(TARGET_LPC1768) - //#define C027_USEONBOARD // remove this if you have a GSM/GPS shield + #define C027_USEONBOARD // remove this if you have a GSM/GPS shield #ifdef C027_USEONBOARD #include "C027.h" C027 c027; @@ -104,11 +115,16 @@ int ret; char buf[512] = ""; - Serial pc(USBTX,USBRX); - pc.baud(115200); + // only trace if + if ((USBRX!=MDMRXD)&&(USBTX!=MDMTXD)) { + Serial pc(USBTX,USBRX); + pc.baud(115200); + } + + wait_ms(1000); TRACE("GSM/GPS Support Example\r\n"); - + #ifdef C027_USEONBOARD // turn on the supplies of the Modem and the GPS c027.mdmPower(true); @@ -120,7 +136,7 @@ mdmPwrOn = 1; #endif wait(2); - + // Create the GPS object #if defined(GPSSCL) && defined(GPSSDA) && defined(GPSADR) GPSI2C gps(GPSSDA,GPSSCL,GPSADR); // use GPSI2C class @@ -129,13 +145,14 @@ #else #warning "please define the pins for the GPS" #endif + // Create the modem object MDMSerial mdm(MDMTXD,MDMRXD,MDMBAUD #if DEVICE_SERIAL_FC ,MDMRTS,MDMCTS #endif ); - + // initialize the modem TRACE("Device Init\r\n"); MDMParser::DevStatus devStatus; @@ -203,9 +220,9 @@ unsigned int i = 0xFFFFFFFF; const int wait = 100; bool abort = false; - DigitalOut led(LED1); + //DigitalOut led(LED1); while (!abort) { - led = !led; + // led = !led; while ((ret = gps.getMessage(buf, sizeof(buf))) > 0) { int len = LENGTH(ret);