GPS location transmitter for Vodafone USB Modem

Dependencies:   GPS_Alt VodafoneUSBModem mbed-rtos mbed

Committer:
richardemeadows
Date:
Mon Jun 09 16:48:53 2014 +0000
Revision:
0:47d8d53f9374
Child:
1:e52f844ed032
Initial Commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
richardemeadows 0:47d8d53f9374 1 #include "mbed.h"
richardemeadows 0:47d8d53f9374 2 #include "VodafoneUSBModem.h"
richardemeadows 0:47d8d53f9374 3 #include "GPS.h"
richardemeadows 0:47d8d53f9374 4 #include <stdio.h>
richardemeadows 0:47d8d53f9374 5
richardemeadows 0:47d8d53f9374 6 char *phone_numbers[] = {
richardemeadows 0:47d8d53f9374 7 "+447956146408",
richardemeadows 0:47d8d53f9374 8 "+447835739543",
richardemeadows 0:47d8d53f9374 9 "+447900473091",
richardemeadows 0:47d8d53f9374 10 "+447769294192" };
richardemeadows 0:47d8d53f9374 11
richardemeadows 0:47d8d53f9374 12 GPS gps(p9, p10);
richardemeadows 0:47d8d53f9374 13
richardemeadows 0:47d8d53f9374 14 int main() {
richardemeadows 0:47d8d53f9374 15 DigitalOut led(LED1);
richardemeadows 0:47d8d53f9374 16 char buffer[1000];
richardemeadows 0:47d8d53f9374 17
richardemeadows 0:47d8d53f9374 18 VodafoneUSBModem modem;
richardemeadows 0:47d8d53f9374 19
richardemeadows 0:47d8d53f9374 20 printf("Hello World\r\n");
richardemeadows 0:47d8d53f9374 21
richardemeadows 0:47d8d53f9374 22 modem.sendSM(phone_numbers[0], "SEDS Awake");
richardemeadows 0:47d8d53f9374 23 //modem.sendSM(phone_numbers[1], "SEDS Awake");
richardemeadows 0:47d8d53f9374 24 //modem.sendSM(phone_numbers[2], "SEDS Awake");
richardemeadows 0:47d8d53f9374 25 //modem.sendSM(phone_numbers[3], "SEDS Awake");
richardemeadows 0:47d8d53f9374 26
richardemeadows 0:47d8d53f9374 27 printf("Sent\r\n");
richardemeadows 0:47d8d53f9374 28
richardemeadows 0:47d8d53f9374 29 while(1)
richardemeadows 0:47d8d53f9374 30 {
richardemeadows 0:47d8d53f9374 31 if(gps.sample()) {
richardemeadows 0:47d8d53f9374 32 // "https://maps.google.com/maps?q=%f,%f"
richardemeadows 0:47d8d53f9374 33 sprintf(buffer, "Location: https://maps.google.com/maps?q=%f,%f\nAltitude: %.0fm (%.0f ft)\n(Satellites = %d)",
richardemeadows 0:47d8d53f9374 34 gps.latitude, gps.longitude, gps.altitude, gps.altitude * 3.28084, gps.satellites);
richardemeadows 0:47d8d53f9374 35 } else {
richardemeadows 0:47d8d53f9374 36 sprintf(buffer, "No Lock (Satellites = %d)", gps.satellites);
richardemeadows 0:47d8d53f9374 37 }
richardemeadows 0:47d8d53f9374 38
richardemeadows 0:47d8d53f9374 39 printf("Sending: %s.. \n", buffer);
richardemeadows 0:47d8d53f9374 40
richardemeadows 0:47d8d53f9374 41 modem.sendSM(phone_numbers[0], buffer);
richardemeadows 0:47d8d53f9374 42 Thread::wait(3000);
richardemeadows 0:47d8d53f9374 43 //modem.sendSM(phone_numbers[1], buffer);
richardemeadows 0:47d8d53f9374 44 //Thread::wait(500);
richardemeadows 0:47d8d53f9374 45 //modem.sendSM(phone_numbers[2], buffer);
richardemeadows 0:47d8d53f9374 46 //Thread::wait(500);
richardemeadows 0:47d8d53f9374 47 //modem.sendSM(phone_numbers[3], buffer);
richardemeadows 0:47d8d53f9374 48 //Thread::wait(500);
richardemeadows 0:47d8d53f9374 49
richardemeadows 0:47d8d53f9374 50 printf("Sent\r\n");
richardemeadows 0:47d8d53f9374 51
richardemeadows 0:47d8d53f9374 52 led=!led;
richardemeadows 0:47d8d53f9374 53 }
richardemeadows 0:47d8d53f9374 54 }