Example program streaming accelerometer data to a websocket server over a Sprint Mobile Broadband connection

Dependencies:   MMA7660 SprintUSBModem WebSocketClient mbed-rtos mbed

Committer:
chris
Date:
Fri Oct 26 09:50:24 2012 +0000
Revision:
6:b3fc13de8f5e
Parent:
5:5aed2f21d249
Child:
7:e61aa764fba4
Example program streaming live accelerometer data to a web socket server over a Sprint CDMA conenction

Who changed what in which revision?

UserRevisionLine numberNew contents of line
donatien 0:0389bce1c74d 1 #include "mbed.h"
donatien 0:0389bce1c74d 2 #include "SprintUSBModem.h"
donatien 4:c1ce97cb8d74 3 #include "Websocket.h"
chris 6:b3fc13de8f5e 4 #include "MMA7660.h"
chris 6:b3fc13de8f5e 5
chris 6:b3fc13de8f5e 6 MMA7660 MMA(p28, p27);
donatien 0:0389bce1c74d 7
donatien 0:0389bce1c74d 8 void test(void const*)
donatien 0:0389bce1c74d 9 {
chris 6:b3fc13de8f5e 10 SprintUSBModem modem;
chris 6:b3fc13de8f5e 11 Websocket ws("ws://sockets.mbed.org/ws/sensors/wo");
chris 6:b3fc13de8f5e 12 char json_str[100];
donatien 0:0389bce1c74d 13
donatien 0:0389bce1c74d 14 Thread::wait(5000);
chris 6:b3fc13de8f5e 15 printf("Switching power on\r\n");
donatien 0:0389bce1c74d 16
donatien 0:0389bce1c74d 17 int ret = modem.connect();
donatien 0:0389bce1c74d 18 if(ret)
donatien 0:0389bce1c74d 19 {
donatien 2:9304861e65d6 20 printf("Could not connect\r\n");
donatien 0:0389bce1c74d 21 return;
donatien 0:0389bce1c74d 22 }
donatien 0:0389bce1c74d 23
donatien 4:c1ce97cb8d74 24 bool c = ws.connect();
donatien 4:c1ce97cb8d74 25 printf("Connect result: %s\r\n", c?"OK":"Failed");
donatien 4:c1ce97cb8d74 26
chris 6:b3fc13de8f5e 27 while (1) {
chris 6:b3fc13de8f5e 28 sprintf(json_str, "{\"id\":\"mbed-app-board\",\"ax\":\"%d\",\"ay\":\"%d\",\"az\":\"%d\"}", (int)(MMA.x()*200), (int)(MMA.y()*200), (int)(MMA.z()*200));
chris 6:b3fc13de8f5e 29 ws.send(json_str);
chris 6:b3fc13de8f5e 30 wait(0.2);
donatien 0:0389bce1c74d 31 }
donatien 0:0389bce1c74d 32
donatien 0:0389bce1c74d 33 }
donatien 0:0389bce1c74d 34
donatien 0:0389bce1c74d 35
donatien 0:0389bce1c74d 36 int main()
donatien 0:0389bce1c74d 37 {
donatien 0:0389bce1c74d 38 DBG_INIT();
donatien 0:0389bce1c74d 39 DBG_SET_SPEED(115200);
donatien 0:0389bce1c74d 40 DBG_SET_NEWLINE("\r\n");
donatien 0:0389bce1c74d 41 Thread testTask(test, NULL, osPriorityNormal, 1024 * 5);
donatien 0:0389bce1c74d 42 DigitalOut led(LED1);
donatien 0:0389bce1c74d 43 while(1)
donatien 0:0389bce1c74d 44 {
donatien 0:0389bce1c74d 45 led=!led;
donatien 0:0389bce1c74d 46 Thread::wait(1000);
donatien 0:0389bce1c74d 47 }
donatien 0:0389bce1c74d 48
donatien 0:0389bce1c74d 49 return 0;
donatien 0:0389bce1c74d 50 }