now this shit works
Fork of ESP8266NodeMCUInterface by
Revision 37:6887e61cf674, committed 2015-05-02
- Comitter:
- mbedAustin
- Date:
- Sat May 02 03:58:22 2015 +0000
- Parent:
- 36:e1545c6c2cb3
- Child:
- 38:86e75901efc1
- Commit message:
- Updated UDP LIbrary sentto command to initialize endpoint flag. was lost in a previous commit on accident.
Changed in this revision
| ESP8266/ESP8266.cpp | Show annotated file Show diff for this revision Revisions of this file |
| Socket/UDPSocket.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/ESP8266/ESP8266.cpp Sat May 02 03:30:52 2015 +0000
+++ b/ESP8266/ESP8266.cpp Sat May 02 03:58:22 2015 +0000
@@ -82,7 +82,7 @@
if( sendCommand( cmd.c_str(), "OK", NULL, 10000) ) {
// successfully joined the network
state.associated = true;
- INFO("ssid: %s, phrase: %s, security: %s", this->ssid, this->phrase);
+ INFO("ssid: %s, phrase: %s", this->ssid, this->phrase);
return true;
}
return false;
--- a/Socket/UDPSocket.cpp Sat May 02 03:30:52 2015 +0000
+++ b/Socket/UDPSocket.cpp Sat May 02 03:58:22 2015 +0000
@@ -48,7 +48,14 @@
int idx = 0;
confEndpoint(remote);
-
+ // initialize transparent mode if not already done
+ if(!endpoint_configured) {
+ // initialize UDP (default id of -1 means transparent mode)
+ if(!wifi->start(ESP_UDP_TYPE, remote._ipAddress, remote._port, remote._id)) {
+ return(-1);
+ }
+ endpoint_configured = true;
+ }
tmr.start();
while ((tmr.read_ms() < _timeout) || _blocking) {
@@ -68,13 +75,13 @@
int idx = 0;
int nb_available = 0;
int time = -1;
-
+
//make this the non-blocking case and return if <= 0
// remember to change the config to blocking
// if ( ! _blocking) {
- // if ( wifi.readable <= 0 ) {
- // return (wifi.readable);
- // }
+ // if ( wifi.readable <= 0 ) {
+ // return (wifi.readable);
+ // }
// }
//---
tmr.start();
@@ -90,28 +97,28 @@
// blocking case
else {
tmr.reset();
-
- while (time < _timeout){
+
+ while (time < _timeout) {
nb_available = wifi->readable();
if (nb_available < 0) return nb_available;
if (nb_available > 0) break ;
time = tmr.read_ms();
}
-
- if (nb_available == 0) return nb_available;
- }
-
+
+ if (nb_available == 0) return nb_available;
+ }
+
// change this to < 20 mS timeout per byte to detect end of packet gap
// this may not work due to buffering at the UART interface
tmr.reset();
// while ( tmr.read_ms() < 20 ) {
- // if ( wifi.readable() && (idx < length) ) {
- // buffer[idx++] = wifi->getc();
- // tmr.reset();
- // }
- // if ( idx == length ) {
- // break;
- // }
+ // if ( wifi.readable() && (idx < length) ) {
+ // buffer[idx++] = wifi->getc();
+ // tmr.reset();
+ // }
+ // if ( idx == length ) {
+ // break;
+ // }
// }
//---
while (time < _timeout) {
