From 0b35e32b2a1d59041a87dc1216ad04eb616b50f7 Mon Sep 17 00:00:00 2001 From: Links Date: Tue, 6 Feb 2018 21:10:29 +0100 Subject: [PATCH] examples for ESP32 --- examples/WebSocketClient/WebSocketClient.ino | 34 ++++++++++++++++++- examples/WebSocketServer/WebSocketServer.ino | 35 ++++++++++++++++++-- travis/common.sh | 4 ++- 3 files changed, 68 insertions(+), 5 deletions(-) diff --git a/examples/WebSocketClient/WebSocketClient.ino b/examples/WebSocketClient/WebSocketClient.ino index 3ce8498..689dada 100644 --- a/examples/WebSocketClient/WebSocketClient.ino +++ b/examples/WebSocketClient/WebSocketClient.ino @@ -10,15 +10,30 @@ #include #include +#if defined(ESP8266) + #include #include + #include #include + ESP8266WiFiMulti WiFiMulti; +#elif defined(ESP32) + #include + #include + WiFiMulti WiFiMulti; + + HardwareSerial Serial1(2); +#endif + #include #include -ESP8266WiFiMulti WiFiMulti; WebSocketsClient webSocket; #define USE_SERIAL Serial1 +#ifndef ESP8266 +void hexdump(const void *mem, uint32_t len, uint8_t cols = 16); +#endif + void webSocketEvent(WStype_t type, uint8_t * payload, size_t length) { switch(type) { @@ -90,3 +105,20 @@ void setup() { void loop() { webSocket.loop(); } + + + +#ifndef ESP8266 +void hexdump(const void *mem, uint32_t len, uint8_t cols) { + const uint8_t* src = (const uint8_t*) mem; + USE_SERIAL.printf("\n[HEXDUMP] Address: 0x%08X len: 0x%X (%d)", (ptrdiff_t)src, len, len); + for(uint32_t i = 0; i < len; i++) { + if(i % cols == 0) { + USE_SERIAL.printf("\n[0x%08X] 0x%08X: ", (ptrdiff_t)src, i); + } + USE_SERIAL.printf("%02X ", *src); + src++; + } + USE_SERIAL.printf("\n"); +} +#endif diff --git a/examples/WebSocketServer/WebSocketServer.ino b/examples/WebSocketServer/WebSocketServer.ino index 5e266a2..de9c63e 100644 --- a/examples/WebSocketServer/WebSocketServer.ino +++ b/examples/WebSocketServer/WebSocketServer.ino @@ -7,8 +7,18 @@ #include -#include -#include +#if defined(ESP8266) + #include #include + #include #include + ESP8266WiFiMulti WiFiMulti; +#elif defined(ESP32) + #include + #include + WiFiMulti WiFiMulti; + + HardwareSerial Serial1(2); +#endif + #include #include @@ -18,6 +28,11 @@ WebSocketsServer webSocket = WebSocketsServer(81); #define USE_SERIAL Serial1 + +#ifndef ESP8266 +void hexdump(const void *mem, uint32_t len, uint8_t cols = 16); +#endif + void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t length) { switch(type) { @@ -28,7 +43,7 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t length { IPAddress ip = webSocket.remoteIP(num); USE_SERIAL.printf("[%u] Connected from %d.%d.%d.%d url: %s\n", num, ip[0], ip[1], ip[2], ip[3], payload); - + // send message to client webSocket.sendTXT(num, "Connected"); } @@ -84,3 +99,17 @@ void loop() { webSocket.loop(); } +#ifndef ESP8266 +void hexdump(const void *mem, uint32_t len, uint8_t cols) { + const uint8_t* src = (const uint8_t*) mem; + USE_SERIAL.printf("\n[HEXDUMP] Address: 0x%08X len: 0x%X (%d)", (ptrdiff_t)src, len, len); + for(uint32_t i = 0; i < len; i++) { + if(i % cols == 0) { + USE_SERIAL.printf("\n[0x%08X] 0x%08X: ", (ptrdiff_t)src, i); + } + USE_SERIAL.printf("%02X ", *src); + src++; + } + USE_SERIAL.printf("\n"); +} +#endif diff --git a/travis/common.sh b/travis/common.sh index 1cf8bff..10237bb 100644 --- a/travis/common.sh +++ b/travis/common.sh @@ -25,6 +25,8 @@ function build_sketches() function get_core() { + echo Setup core for $1 + cd $HOME/arduino_ide/hardware if [ "$1" = "esp8266" ] ; then @@ -42,5 +44,5 @@ function get_core() cd esp32/tools python get.py fi - + }