Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: WebSocketClient WiflyInterface mbed messages
Fork of IoT_Ex by
Diff: source/globals.cpp
- Revision:
- 2:7abdaa5a9209
- Parent:
- 1:4403f2ed1c1f
- Child:
- 3:f20e114eb2ee
--- a/source/globals.cpp Tue Oct 04 13:19:19 2016 +0000
+++ b/source/globals.cpp Tue Oct 04 13:59:13 2016 +0000
@@ -21,6 +21,7 @@
Serial pc(USBTX, USBRX);
InterruptIn UIBut1(USER_BUTTON);
Timer DisplayTimer;
+DigitalOut Led(LED1);
WiflyInterface eth(D8, D2, D6, LED1, wifissid, wifipassword, WPA2);
@@ -131,22 +132,29 @@
void ReceiveNetworkData(unsigned int * wifi_cmd, unsigned int * var, float * value){
char msg_buffer[CHARMSGBUFF];
char msg_buffer2[CHARMSGBUFF];
- // Check for data on the websocket:
- if(ws.readmsg(msg_buffer)){
- INFO("Received: %s", msg_buffer);
- sscanf(msg_buffer, "%d,%s", wifi_cmd, msg_buffer2);
- if(*wifi_cmd == CHANGEVAR_WIFI_CMD){
- // Get two more values:
- sscanf(msg_buffer2, "%d,%f", var, value);
+ int resp;
+ if(IotStatus.CheckFlag(SF_SERVERCONNECTED)){
+ // Check for data on the websocket:
+ resp = ws.readmsg(msg_buffer);
+ if(resp == 1){
+ INFO("Received: %s", msg_buffer);
+ sscanf(msg_buffer, "%d,%s", wifi_cmd, msg_buffer2);
+ if(*wifi_cmd == CHANGEVAR_WIFI_CMD){
+ // Get two more values:
+ sscanf(msg_buffer2, "%d,%f", var, value);
+ }else{
+ // Get one:
+ sscanf(msg_buffer2, "%f", value);
+ }
+ }else if(resp == -1){
+ // Connection to the server is lost:
+ IotStatus.ClearFlag(SF_SERVERCONNECTED);
}else{
- // Get one:
- sscanf(msg_buffer2, "%f", value);
+ //DBG("Did not receive anything :(\n\r");
+ *wifi_cmd = NO_WIFI_CMD;
+ *var = 0;
+ *value = 0.0f;
}
- }else{
- //DBG("Did not receive anything :(\n\r");
- *wifi_cmd = NO_WIFI_CMD;
- *var = 0;
- *value = 0.0f;
}
return;
}
