diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/tempmodule/main.ino | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/src/tempmodule/main.ino b/src/tempmodule/main.ino index 5e6285f..5931d2c 100644 --- a/src/tempmodule/main.ino +++ b/src/tempmodule/main.ino @@ -40,7 +40,6 @@ static char *udppacketcursor = NULL; IPAddress ip; WiFiUDP Udp; -static void sleep(void); static void udp_init_packet(IPAddress ip, const int port); static void udp_push(const void * const data, const size_t size); static int udp_flush(void); @@ -95,9 +94,9 @@ void loop(void) if (wifistate) { udp_push(&data, sizeof(data)); + /* if flushing fails, disconnect WiFi */ if (!(udp_flush())) { - Udp.stop(); - sleep(); + wifidesired = 0; } } @@ -106,13 +105,6 @@ void loop(void) ++ticker; } -static void sleep(void) -{ - do { - blink_led(iled, 3000, 3000); - } while (1); -} - static void udp_init_packet(IPAddress ip, const int port) { Udp.beginPacket(ip, port); @@ -159,6 +151,7 @@ static int wifi_connect(const char * const ssid, const char * const password, co static void wifi_disconnect(void) { wifiled_toggle(); + Udp.stop(); WiFi.disconnect(1); WiFi.forceSleepBegin(); wifistate = 0; |