Skip to content

Commit 847b600

Browse files
committed
ESPIDF 4.0 hacks
1 parent 6daf773 commit 847b600

File tree

7 files changed

+43
-70
lines changed

7 files changed

+43
-70
lines changed

CMakeLists.txt

Lines changed: 1 addition & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -38,18 +38,12 @@ set(CORE_SRCS
3838
)
3939

4040
set(LIBRARY_SRCS
41-
libraries/ArduinoOTA/src/ArduinoOTA.cpp
4241
libraries/AsyncUDP/src/AsyncUDP.cpp
4342
libraries/BluetoothSerial/src/BluetoothSerial.cpp
44-
libraries/DNSServer/src/DNSServer.cpp
4543
libraries/EEPROM/src/EEPROM.cpp
46-
libraries/ESPmDNS/src/ESPmDNS.cpp
4744
libraries/FFat/src/FFat.cpp
4845
libraries/FS/src/FS.cpp
4946
libraries/FS/src/vfs_api.cpp
50-
libraries/HTTPClient/src/HTTPClient.cpp
51-
libraries/HTTPUpdate/src/HTTPUpdate.cpp
52-
libraries/NetBIOS/src/NetBIOS.cpp
5347
libraries/Preferences/src/Preferences.cpp
5448
libraries/SD_MMC/src/SD_MMC.cpp
5549
libraries/SD/src/SD.cpp
@@ -60,22 +54,6 @@ set(LIBRARY_SRCS
6054
libraries/SPI/src/SPI.cpp
6155
libraries/Ticker/src/Ticker.cpp
6256
libraries/Update/src/Updater.cpp
63-
libraries/WebServer/src/WebServer.cpp
64-
libraries/WebServer/src/Parsing.cpp
65-
libraries/WebServer/src/detail/mimetable.cpp
66-
libraries/WiFiClientSecure/src/ssl_client.cpp
67-
libraries/WiFiClientSecure/src/WiFiClientSecure.cpp
68-
libraries/WiFi/src/ETH.cpp
69-
libraries/WiFi/src/WiFiAP.cpp
70-
libraries/WiFi/src/WiFiClient.cpp
71-
libraries/WiFi/src/WiFi.cpp
72-
libraries/WiFi/src/WiFiGeneric.cpp
73-
libraries/WiFi/src/WiFiMulti.cpp
74-
libraries/WiFi/src/WiFiScan.cpp
75-
libraries/WiFi/src/WiFiServer.cpp
76-
libraries/WiFi/src/WiFiSTA.cpp
77-
libraries/WiFi/src/WiFiUdp.cpp
78-
libraries/Wire/src/Wire.cpp
7957
)
8058

8159
set(AZURE_SRCS
@@ -175,20 +153,14 @@ set(COMPONENT_SRCS ${CORE_SRCS} ${LIBRARY_SRCS} ${AZURE_SRCS} ${BLE_SRCS})
175153
set(COMPONENT_ADD_INCLUDEDIRS
176154
variants/esp32/
177155
cores/esp32/
178-
libraries/ArduinoOTA/src
179156
libraries/AsyncUDP/src
180157
libraries/AzureIoT/src
181158
libraries/BLE/src
182159
libraries/BluetoothSerial/src
183-
libraries/DNSServer/src
184160
libraries/EEPROM/src
185161
libraries/ESP32/src
186-
libraries/ESPmDNS/src
187162
libraries/FFat/src
188163
libraries/FS/src
189-
libraries/HTTPClient/src
190-
libraries/HTTPUpdate/src
191-
libraries/NetBIOS/src
192164
libraries/Preferences/src
193165
libraries/SD_MMC/src
194166
libraries/SD/src
@@ -197,15 +169,11 @@ set(COMPONENT_ADD_INCLUDEDIRS
197169
libraries/SPI/src
198170
libraries/Ticker/src
199171
libraries/Update/src
200-
libraries/WebServer/src
201-
libraries/WiFiClientSecure/src
202-
libraries/WiFi/src
203-
libraries/Wire/src
204172
)
205173

206174
set(COMPONENT_PRIV_INCLUDEDIRS cores/esp32/libb64)
207175

208-
set(COMPONENT_REQUIRES spi_flash mbedtls mdns ethernet)
176+
set(COMPONENT_REQUIRES spi_flash mbedtls mdns fatfs)
209177
set(COMPONENT_PRIV_REQUIRES fatfs nvs_flash app_update spiffs bootloader_support openssl bt)
210178

211179
register_component()

libraries/SD/src/sd_diskio.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@
1313
// limitations under the License.
1414
#include "sd_diskio.h"
1515
extern "C" {
16+
#include "ff.h"
1617
#include "diskio.h"
1718
#include "ffconf.h"
18-
#include "ff.h"
1919
//#include "esp_vfs.h"
20+
#include "diskio_impl.h"
2021
#include "esp_vfs_fat.h"
2122
char CRC7(const char* data, int length);
2223
unsigned short CRC16(const char* data, int length);

libraries/WiFi/src/ETH.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,11 @@
1919
*/
2020

2121
#include "ETH.h"
22-
#include "eth_phy/phy.h"
23-
#include "eth_phy/phy_tlk110.h"
24-
#include "eth_phy/phy_lan8720.h"
22+
#include "esp_eth.h"
23+
#include "esp_eth_mac.h"
24+
#include "esp_eth_phy.h"
25+
// #include "eth_phy/phy_tlk110.h"
26+
// #include "eth_phy/phy_lan8720.h"
2527
#include "lwip/err.h"
2628
#include "lwip/dns.h"
2729

libraries/WiFi/src/ETH.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@ class ETHClass {
5555
bool initialized;
5656
bool started;
5757
bool staticIP;
58-
eth_config_t eth_config;
58+
esp_eth_config_t eth_config;
5959
public:
6060
ETHClass();
6161
~ETHClass();
6262

63-
bool begin(uint8_t phy_addr=ETH_PHY_ADDR, int power=ETH_PHY_POWER, int mdc=ETH_PHY_MDC, int mdio=ETH_PHY_MDIO, eth_phy_type_t type=ETH_PHY_TYPE, eth_clock_mode_t clk_mode=ETH_CLK_MODE);
63+
bool begin(uint8_t phy_addr=ETH_PHY_ADDR, int power=ETH_PHY_POWER, int mdc=ETH_PHY_MDC, int mdio=ETH_PHY_MDIO, eth_phy_type_t type=ETH_PHY_TYPE,esp_eth_clock_mode_t clk_mode=ETH_CLK_MODE);
6464

6565
bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = (uint32_t)0x00000000, IPAddress dns2 = (uint32_t)0x00000000);
6666

libraries/WiFi/src/WiFiClient.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ class WiFiClientRxBuffer {
4646
return 0;
4747
}
4848
int count;
49-
int res = lwip_ioctl_r(_fd, FIONREAD, &count);
49+
int res = lwip_ioctl(_fd, FIONREAD, &count);
5050
if(res < 0) {
5151
_failed = true;
5252
return 0;
@@ -227,7 +227,7 @@ int WiFiClient::connect(IPAddress ip, uint16_t port, int32_t timeout)
227227
tv.tv_sec = 0;
228228
tv.tv_usec = timeout * 1000;
229229

230-
int res = lwip_connect_r(sockfd, (struct sockaddr*)&serveraddr, sizeof(serveraddr));
230+
int res = lwip_connect(sockfd, (struct sockaddr*)&serveraddr, sizeof(serveraddr));
231231
if (res < 0 && errno != EINPROGRESS) {
232232
log_e("connect on fd %d, errno: %d, \"%s\"", sockfd, errno, strerror(errno));
233233
close(sockfd);

libraries/WiFi/src/WiFiSTA.cpp

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -488,8 +488,8 @@ IPAddress WiFiSTAClass::dnsIP(uint8_t dns_no)
488488
if(WiFiGenericClass::getMode() == WIFI_MODE_NULL){
489489
return IPAddress();
490490
}
491-
ip_addr_t dns_ip = dns_getserver(dns_no);
492-
return IPAddress(dns_ip.u_addr.ip4.addr);
491+
const ip_addr_t* dns_ip = dns_getserver(dns_no);
492+
return IPAddress(dns_ip->u_addr.ip4.addr);
493493
}
494494

495495
/**
@@ -687,7 +687,9 @@ bool WiFiSTAClass::beginSmartConfig() {
687687
esp_wifi_disconnect();
688688

689689
esp_err_t err;
690-
err = esp_smartconfig_start(reinterpret_cast<sc_callback_t>(&WiFiSTAClass::_smartConfigCallback), 1);
690+
smartconfig_start_config_t config;
691+
config.enable_log = false;
692+
err = esp_smartconfig_start(&config);
691693
if (err == ESP_OK) {
692694
_smartConfigStarted = true;
693695
_smartConfigDone = false;
@@ -734,27 +736,27 @@ const char * sc_type_strings[] = {
734736
#endif
735737

736738
void WiFiSTAClass::_smartConfigCallback(uint32_t st, void* result) {
737-
smartconfig_status_t status = (smartconfig_status_t) st;
738-
log_d("Status: %s", sc_status_strings[st % 5]);
739-
if (status == SC_STATUS_GETTING_SSID_PSWD) {
740-
#if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
741-
smartconfig_type_t * type = (smartconfig_type_t *)result;
742-
log_d("Type: %s", sc_type_strings[*type % 3]);
743-
#endif
744-
} else if (status == SC_STATUS_LINK) {
745-
wifi_sta_config_t *sta_conf = reinterpret_cast<wifi_sta_config_t *>(result);
746-
log_d("SSID: %s", (char *)(sta_conf->ssid));
747-
sta_conf->bssid_set = 0;
748-
esp_wifi_set_config(WIFI_IF_STA, (wifi_config_t *)sta_conf);
749-
esp_wifi_connect();
750-
_smartConfigDone = true;
751-
} else if (status == SC_STATUS_LINK_OVER) {
752-
if(result){
753-
#if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
754-
ip4_addr_t * ip = (ip4_addr_t *)result;
755-
log_d("Sender IP: " IPSTR, IP2STR(ip));
756-
#endif
757-
}
758-
WiFi.stopSmartConfig();
759-
}
739+
// smartconfig_status_t status = (smartconfig_status_t) st;
740+
// log_d("Status: %s", sc_status_strings[st % 5]);
741+
// if (status == SC_STATUS_GETTING_SSID_PSWD) {
742+
// #if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
743+
// smartconfig_type_t * type = (smartconfig_type_t *)result;
744+
// log_d("Type: %s", sc_type_strings[*type % 3]);
745+
// #endif
746+
// } else if (status == SC_STATUS_LINK) {
747+
// wifi_sta_config_t *sta_conf = reinterpret_cast<wifi_sta_config_t *>(result);
748+
// log_d("SSID: %s", (char *)(sta_conf->ssid));
749+
// sta_conf->bssid_set = 0;
750+
// esp_wifi_set_config(WIFI_IF_STA, (wifi_config_t *)sta_conf);
751+
// esp_wifi_connect();
752+
// _smartConfigDone = true;
753+
// } else if (status == SC_STATUS_LINK_OVER) {
754+
// if(result){
755+
// #if ARDUHAL_LOG_LEVEL >= ARDUHAL_LOG_LEVEL_DEBUG
756+
// ip4_addr_t * ip = (ip4_addr_t *)result;
757+
// log_d("Sender IP: " IPSTR, IP2STR(ip));
758+
// #endif
759+
// }
760+
// WiFi.stopSmartConfig();
761+
// }
760762
}

libraries/WiFi/src/WiFiServer.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ WiFiClient WiFiServer::available(){
4949
else {
5050
struct sockaddr_in _client;
5151
int cs = sizeof(struct sockaddr_in);
52-
client_sock = lwip_accept_r(sockfd, (struct sockaddr *)&_client, (socklen_t*)&cs);
52+
client_sock = lwip_accept(sockfd, (struct sockaddr *)&_client, (socklen_t*)&cs);
5353
}
5454
if(client_sock >= 0){
5555
int val = 1;
@@ -99,15 +99,15 @@ bool WiFiServer::hasClient() {
9999
}
100100
struct sockaddr_in _client;
101101
int cs = sizeof(struct sockaddr_in);
102-
_accepted_sockfd = lwip_accept_r(sockfd, (struct sockaddr *)&_client, (socklen_t*)&cs);
102+
_accepted_sockfd = lwip_accept(sockfd, (struct sockaddr *)&_client, (socklen_t*)&cs);
103103
if (_accepted_sockfd >= 0) {
104104
return true;
105105
}
106106
return false;
107107
}
108108

109109
void WiFiServer::end(){
110-
lwip_close_r(sockfd);
110+
lwip_close(sockfd);
111111
sockfd = -1;
112112
_listening = false;
113113
}

0 commit comments

Comments
 (0)