Testing the module's internet connection (spoiler: it doesn't work) WARNING: this code has been written in a hurry during an hackathon. It's total crap.

Dependencies:   GPS_CanSat mbed

Testing the module's internet connection (spoiler: it doesn't work) WARNING: this code has been written in a hurry during an hackathon. It's total crap.

Committer:
gipmad
Date:
Sat Jul 11 20:48:40 2015 +0000
Revision:
0:8f9b472ff818
plain 1;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gipmad 0:8f9b472ff818 1 #include "mbed.h"
gipmad 0:8f9b472ff818 2 #include "GPS.h"
gipmad 0:8f9b472ff818 3 //#include "gsm.h"
gipmad 0:8f9b472ff818 4 //#include "modem.h"
gipmad 0:8f9b472ff818 5
gipmad 0:8f9b472ff818 6 Serial pc(SERIAL_TX, SERIAL_RX);
gipmad 0:8f9b472ff818 7 //v0.2
gipmad 0:8f9b472ff818 8 Serial GSM(PC_10, PC_11);
gipmad 0:8f9b472ff818 9 // Serial GPS(PB_6, PB_7);
gipmad 0:8f9b472ff818 10 GPS g1(PB_6, PB_7);
gipmad 0:8f9b472ff818 11 //Modem gsm1(PC_10, PC_11, 115200);
gipmad 0:8f9b472ff818 12
gipmad 0:8f9b472ff818 13 //v0.1
gipmad 0:8f9b472ff818 14 //Serial GPS(PC_10, PC_11);
gipmad 0:8f9b472ff818 15 //Serial GSM(PA_14, PA_15);
gipmad 0:8f9b472ff818 16
gipmad 0:8f9b472ff818 17 //breadboard
gipmad 0:8f9b472ff818 18 //Serial GSM(PB_6, PB_7);
gipmad 0:8f9b472ff818 19 //Serial GPS(PC_4, PC_5);
gipmad 0:8f9b472ff818 20
gipmad 0:8f9b472ff818 21 //GPS g1(PC_10, PC_11);
gipmad 0:8f9b472ff818 22
gipmad 0:8f9b472ff818 23 //DigitalIn mybutton(USER_BUTTON);
gipmad 0:8f9b472ff818 24 DigitalOut myled(PB_2);
gipmad 0:8f9b472ff818 25 DigitalOut GSMsw(PA_15);
gipmad 0:8f9b472ff818 26
gipmad 0:8f9b472ff818 27 DigitalOut DET(PB_13);
gipmad 0:8f9b472ff818 28 /*
gipmad 0:8f9b472ff818 29 int main() {
gipmad 0:8f9b472ff818 30 while(1) {
gipmad 0:8f9b472ff818 31 if (mybutton == 0) { // Button is pressed
gipmad 0:8f9b472ff818 32 myled = !myled; // Toggle the LED state
gipmad 0:8f9b472ff818 33 wait(0.2); // 200 ms
gipmad 0:8f9b472ff818 34 }
gipmad 0:8f9b472ff818 35 }
gipmad 0:8f9b472ff818 36 }
gipmad 0:8f9b472ff818 37 */
gipmad 0:8f9b472ff818 38
gipmad 0:8f9b472ff818 39
gipmad 0:8f9b472ff818 40 int main() {
gipmad 0:8f9b472ff818 41
gipmad 0:8f9b472ff818 42 DET = 0;
gipmad 0:8f9b472ff818 43
gipmad 0:8f9b472ff818 44 pc.baud(115200);
gipmad 0:8f9b472ff818 45 //GPS.baud(9600);
gipmad 0:8f9b472ff818 46 GSM.baud(115200);
gipmad 0:8f9b472ff818 47
gipmad 0:8f9b472ff818 48 int i = 1;
gipmad 0:8f9b472ff818 49 pc.printf("Hello World !\n");
gipmad 0:8f9b472ff818 50
gipmad 0:8f9b472ff818 51
gipmad 0:8f9b472ff818 52 ///INIT
gipmad 0:8f9b472ff818 53 myled = 1;
gipmad 0:8f9b472ff818 54 GSMsw = 1;
gipmad 0:8f9b472ff818 55 wait(1);
gipmad 0:8f9b472ff818 56 myled = 0;
gipmad 0:8f9b472ff818 57
gipmad 0:8f9b472ff818 58 pc.printf("ON\n");
gipmad 0:8f9b472ff818 59
gipmad 0:8f9b472ff818 60 float LAT;
gipmad 0:8f9b472ff818 61 float LON;
gipmad 0:8f9b472ff818 62
gipmad 0:8f9b472ff818 63 /*if(gsm1.sendCmdAndWaitForResp("AT+CMGF=1\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 64 if(gsm1.sendCmdAndWaitForResp("AT+SAPBR=3,1,\"APN\",\"mobile.vodafone.it\"\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 65 if(gsm1.sendCmdAndWaitForResp("AT+SAPBR=3,1,\"USER\",\"\"\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 66 if(gsm1.sendCmdAndWaitForResp("AT+SAPBR=3,1,\"PWD\",\"\"\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 67 if(gsm1.sendCmdAndWaitForResp("AT+SAPBR=3,1,\"PHONENUM\",\"*99#\"\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 68 if(gsm1.sendCmdAndWaitForResp("AT+SAPBR=1,1\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 69 if(gsm1.sendCmdAndWaitForResp("AT+HTTPINIT\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 70 if(gsm1.sendCmdAndWaitForResp("AT+HTTPPARA=\"CID\",1\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 71 */
gipmad 0:8f9b472ff818 72 while(1) {
gipmad 0:8f9b472ff818 73
gipmad 0:8f9b472ff818 74 /*if(gsm1.sendCmdAndWaitForResp("AT+HTTPPARA=\"URL\",\"http://www.mastrogippo.it/b/conta.php\"\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 75 if(gsm1.sendCmdAndWaitForResp("AT+HTTPACTION=0\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 76
gipmad 0:8f9b472ff818 77 //if(gsm1.sendCmdAndWaitForResp("AT\r\n","OK",DEFAULT_TIMEOUT,CMD) == 0) pc.printf("bea!\r\n"); else pc.printf("Err\r\n");
gipmad 0:8f9b472ff818 78 wait(1);*/
gipmad 0:8f9b472ff818 79
gipmad 0:8f9b472ff818 80
gipmad 0:8f9b472ff818 81 if(GSM.readable())
gipmad 0:8f9b472ff818 82 pc.putc(GSM.getc());
gipmad 0:8f9b472ff818 83 if(pc.readable())
gipmad 0:8f9b472ff818 84 GSM.putc(pc.getc());
gipmad 0:8f9b472ff818 85
gipmad 0:8f9b472ff818 86 /*if(GPS.readable())
gipmad 0:8f9b472ff818 87 pc.putc(GPS.getc());
gipmad 0:8f9b472ff818 88 if(pc.readable())
gipmad 0:8f9b472ff818 89 GPS.putc(pc.getc());*/
gipmad 0:8f9b472ff818 90
gipmad 0:8f9b472ff818 91
gipmad 0:8f9b472ff818 92 /*wait(1);
gipmad 0:8f9b472ff818 93
gipmad 0:8f9b472ff818 94 pc.printf("ns: %d\r\n", g1.ns());
gipmad 0:8f9b472ff818 95 pc.printf("ew: %d\r\n", g1.ew());
gipmad 0:8f9b472ff818 96 pc.printf("lock: %d\r\n", g1.lock());
gipmad 0:8f9b472ff818 97 pc.printf("t: %f\r\n", g1.time());
gipmad 0:8f9b472ff818 98
gipmad 0:8f9b472ff818 99 if(g1.lock() == 0)
gipmad 0:8f9b472ff818 100 {
gipmad 0:8f9b472ff818 101 pc.printf("No fix; faking it...\r\n");
gipmad 0:8f9b472ff818 102 LAT = 45.564411;
gipmad 0:8f9b472ff818 103 LON = 12.428018;
gipmad 0:8f9b472ff818 104 }
gipmad 0:8f9b472ff818 105 else
gipmad 0:8f9b472ff818 106 {
gipmad 0:8f9b472ff818 107 LAT = g1.latitude();
gipmad 0:8f9b472ff818 108 LON = g1.longitude();
gipmad 0:8f9b472ff818 109 }
gipmad 0:8f9b472ff818 110
gipmad 0:8f9b472ff818 111 pc.printf("lat: %f\r\n", LAT);
gipmad 0:8f9b472ff818 112 pc.printf("lon: %f\r\n", LON);*/
gipmad 0:8f9b472ff818 113 }
gipmad 0:8f9b472ff818 114 }
gipmad 0:8f9b472ff818 115