mirror of
https://github.com/Links2004/arduinoWebSockets.git
synced 2025-07-16 16:52:05 +02:00
add support for ESP32 ETH.h see #443
This commit is contained in:
@ -57,7 +57,6 @@
|
|||||||
|
|
||||||
#if defined(ESP8266) || defined(ESP32)
|
#if defined(ESP8266) || defined(ESP32)
|
||||||
|
|
||||||
#define HAS_SSL
|
|
||||||
#define WEBSOCKETS_MAX_DATA_SIZE (15*1024)
|
#define WEBSOCKETS_MAX_DATA_SIZE (15*1024)
|
||||||
#define WEBSOCKETS_USE_BIG_MEM
|
#define WEBSOCKETS_USE_BIG_MEM
|
||||||
#define GET_FREE_HEAP ESP.getFreeHeap()
|
#define GET_FREE_HEAP ESP.getFreeHeap()
|
||||||
@ -87,6 +86,7 @@
|
|||||||
#define NETWORK_W5100 (2)
|
#define NETWORK_W5100 (2)
|
||||||
#define NETWORK_ENC28J60 (3)
|
#define NETWORK_ENC28J60 (3)
|
||||||
#define NETWORK_ESP32 (4)
|
#define NETWORK_ESP32 (4)
|
||||||
|
#define NETWORK_ESP32_ETH (5)
|
||||||
|
|
||||||
// max size of the WS Message Header
|
// max size of the WS Message Header
|
||||||
#define WEBSOCKETS_MAX_HEADER_SIZE (14)
|
#define WEBSOCKETS_MAX_HEADER_SIZE (14)
|
||||||
@ -100,7 +100,7 @@
|
|||||||
|
|
||||||
#elif defined(ESP32)
|
#elif defined(ESP32)
|
||||||
#define WEBSOCKETS_NETWORK_TYPE NETWORK_ESP32
|
#define WEBSOCKETS_NETWORK_TYPE NETWORK_ESP32
|
||||||
|
//#define WEBSOCKETS_NETWORK_TYPE NETWORK_ESP32_ETH
|
||||||
#else
|
#else
|
||||||
#define WEBSOCKETS_NETWORK_TYPE NETWORK_W5100
|
#define WEBSOCKETS_NETWORK_TYPE NETWORK_W5100
|
||||||
|
|
||||||
@ -143,6 +143,7 @@
|
|||||||
#include <ESP31BWiFi.h>
|
#include <ESP31BWiFi.h>
|
||||||
#endif
|
#endif
|
||||||
#define WEBSOCKETS_NETWORK_CLASS WiFiClient
|
#define WEBSOCKETS_NETWORK_CLASS WiFiClient
|
||||||
|
#define WEBSOCKETS_NETWORK_SSL_CLASS WiFiClientSecure
|
||||||
#define WEBSOCKETS_NETWORK_SERVER_CLASS WiFiServer
|
#define WEBSOCKETS_NETWORK_SERVER_CLASS WiFiServer
|
||||||
|
|
||||||
#elif (WEBSOCKETS_NETWORK_TYPE == NETWORK_W5100)
|
#elif (WEBSOCKETS_NETWORK_TYPE == NETWORK_W5100)
|
||||||
@ -168,12 +169,24 @@
|
|||||||
#include <WiFi.h>
|
#include <WiFi.h>
|
||||||
#include <WiFiClientSecure.h>
|
#include <WiFiClientSecure.h>
|
||||||
#define WEBSOCKETS_NETWORK_CLASS WiFiClient
|
#define WEBSOCKETS_NETWORK_CLASS WiFiClient
|
||||||
|
#define WEBSOCKETS_NETWORK_SSL_CLASS WiFiClientSecure
|
||||||
|
#define WEBSOCKETS_NETWORK_SERVER_CLASS WiFiServer
|
||||||
|
|
||||||
|
#elif (WEBSOCKETS_NETWORK_TYPE == NETWORK_ESP32_ETH)
|
||||||
|
|
||||||
|
#include <ETH.h>
|
||||||
|
#define WEBSOCKETS_NETWORK_CLASS WiFiClient
|
||||||
#define WEBSOCKETS_NETWORK_SERVER_CLASS WiFiServer
|
#define WEBSOCKETS_NETWORK_SERVER_CLASS WiFiServer
|
||||||
|
|
||||||
#else
|
#else
|
||||||
#error "no network type selected!"
|
#error "no network type selected!"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef WEBSOCKETS_NETWORK_SSL_CLASS
|
||||||
|
#define HAS_SSL
|
||||||
|
#endif
|
||||||
|
|
||||||
// moves all Header strings to Flash (~300 Byte)
|
// moves all Header strings to Flash (~300 Byte)
|
||||||
#ifdef WEBSOCKETS_SAVE_RAM
|
#ifdef WEBSOCKETS_SAVE_RAM
|
||||||
#define WEBSOCKETS_STRING(var) F(var)
|
#define WEBSOCKETS_STRING(var) F(var)
|
||||||
@ -236,9 +249,9 @@ typedef struct {
|
|||||||
|
|
||||||
bool isSocketIO; ///< client for socket.io server
|
bool isSocketIO; ///< client for socket.io server
|
||||||
|
|
||||||
#if (WEBSOCKETS_NETWORK_TYPE == NETWORK_ESP8266) || (WEBSOCKETS_NETWORK_TYPE == NETWORK_ESP32)
|
#if defined(HAS_SSL)
|
||||||
bool isSSL; ///< run in ssl mode
|
bool isSSL; ///< run in ssl mode
|
||||||
WiFiClientSecure * ssl;
|
WEBSOCKETS_NETWORK_SSL_CLASS * ssl;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
String cUrl; ///< http url
|
String cUrl; ///< http url
|
||||||
|
@ -154,7 +154,7 @@ void WebSocketsClient::loop(void) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if (WEBSOCKETS_NETWORK_TYPE == NETWORK_ESP8266) || (WEBSOCKETS_NETWORK_TYPE == NETWORK_ESP32)
|
#if defined(HAS_SSL)
|
||||||
if(_client.isSSL) {
|
if(_client.isSSL) {
|
||||||
DEBUG_WEBSOCKETS("[WS-Client] connect wss...\n");
|
DEBUG_WEBSOCKETS("[WS-Client] connect wss...\n");
|
||||||
if(_client.ssl) {
|
if(_client.ssl) {
|
||||||
@ -162,7 +162,7 @@ void WebSocketsClient::loop(void) {
|
|||||||
_client.ssl = NULL;
|
_client.ssl = NULL;
|
||||||
_client.tcp = NULL;
|
_client.tcp = NULL;
|
||||||
}
|
}
|
||||||
_client.ssl = new WiFiClientSecure();
|
_client.ssl = new WEBSOCKETS_NETWORK_SSL_CLASS();
|
||||||
_client.tcp = _client.ssl;
|
_client.tcp = _client.ssl;
|
||||||
if(_CA_cert) {
|
if(_CA_cert) {
|
||||||
DEBUG_WEBSOCKETS("[WS-Client] setting CA certificate");
|
DEBUG_WEBSOCKETS("[WS-Client] setting CA certificate");
|
||||||
@ -180,7 +180,7 @@ void WebSocketsClient::loop(void) {
|
|||||||
delete _client.tcp;
|
delete _client.tcp;
|
||||||
_client.tcp = NULL;
|
_client.tcp = NULL;
|
||||||
}
|
}
|
||||||
_client.tcp = new WiFiClient();
|
_client.tcp = new WEBSOCKETS_NETWORK_CLASS();
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
_client.tcp = new WEBSOCKETS_NETWORK_CLASS();
|
_client.tcp = new WEBSOCKETS_NETWORK_CLASS();
|
||||||
|
Reference in New Issue
Block a user