summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Gediminas Jakutis <gediminas@varciai.lt> 2019-04-11 15:34:24 +0300
committerGravatar Gediminas Jakutis <gediminas@varciai.lt> 2019-04-11 15:34:24 +0300
commita45ac4e5bc248a733f289d8a023c332f2b1872b0 (patch)
treedc3c9a30470b47b2e8b96329d906efbeb37ada88
parent403ca92524dfdf2916986a63a8c318703aea6a90 (diff)
downloadusurpation-a45ac4e5bc248a733f289d8a023c332f2b1872b0.tar.gz
usurpation-a45ac4e5bc248a733f289d8a023c332f2b1872b0.tar.bz2
usurpation-a45ac4e5bc248a733f289d8a023c332f2b1872b0.zip
device: make sure to flush the udp buffer on time.
Signed-off-by: Gediminas Jakutis <gediminas@varciai.lt>
-rw-r--r--src/device/main.ino16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/device/main.ino b/src/device/main.ino
index 28e8dae..d4fec2c 100644
--- a/src/device/main.ino
+++ b/src/device/main.ino
@@ -30,13 +30,14 @@ static const unsigned int internal_led = 2;
static unsigned int led_state = 0;
static const char servermagic[] = "I love coffee!";
static const char clientmagic[] = "I love tea!";
+static const int com_port = 6996;
IPAddress ip;
WiFiUDP Udp;
unsigned int toggle_led(const int ip);
static void discover_client(void);
static int wifi_connect(const char * const ssid, const char * const password, const char doblink, const int ledpin);
-static void discover_client(void);
+static void discover_client(const int port);
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);
@@ -49,7 +50,8 @@ void setup(void)
pinMode(internal_led, OUTPUT);
toggle_led(internal_led);
wifi_connect(ssid, password, 1, internal_led);
- discover_client();
+ Udp.begin(com_port);
+ discover_client(com_port);
}
/* the logic is a placeholder right now */
@@ -59,9 +61,9 @@ void loop(void)
static unsigned int delta = 2000;
delay(delta);
- udp_init_packet(ip, 6996);
- Udp.begin(6996);
+ udp_init_packet(ip, com_port);
udp_push(clientmagic, sizeof(clientmagic));
+ udp_flush();
}
/* toggle the bult-in led and return current state */
@@ -99,16 +101,14 @@ static int wifi_connect(const char * const ssid, const char * const password, co
return 0;
}
-static void discover_client(void)
+static void discover_client(const int port)
{
IPAddress bcastip(255, 255, 255, 255);
- static const char servermagic[] = "I love coffee!";
- static const char clientmagic[] = "I love tea!";
char buffer[32] = {0};
size_t done = 0;
do {
- udp_init_packet(bcastip, 6996);
+ udp_init_packet(bcastip, port);
udp_push(servermagic, sizeof(servermagic));
udp_flush();
delay(5);