Skip to content

Commit 9286ce3

Browse files
authored
Tasmota changes
* Ethernet support (JL1101 driver added) * esp-modem only esp32, esp32s2 and esp32s3 * remove `OpenThread` * remove all BT BLE libraries * remove zigbee * remove SPIFFS * remove Client Secure * remove Provisioning * remove TfLite, Insights and Rainmaker * make GPIOViewer working * Update esp_modem version to ^2.0.0
1 parent 4067702 commit 9286ce3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+130
-324680
lines changed

CMakeLists.txt

Lines changed: 37 additions & 201 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# idf.py build
77

88
set(min_supported_idf_version "5.3.0")
9-
set(max_supported_idf_version "5.5.99")
9+
set(max_supported_idf_version "6.0.99")
1010
set(idf_version "${IDF_VERSION_MAJOR}.${IDF_VERSION_MINOR}.${IDF_VERSION_PATCH}")
1111

1212
if ("${idf_version}" AND NOT "$ENV{ARDUINO_SKIP_IDF_VERSION_CHECK}")
@@ -26,7 +26,6 @@ set(CORE_SRCS
2626
cores/esp32/base64.cpp
2727
cores/esp32/cbuf.cpp
2828
cores/esp32/ColorFormat.c
29-
cores/esp32/chip-debug-report.cpp
3029
cores/esp32/esp32-hal-adc.c
3130
cores/esp32/esp32-hal-bt.c
3231
cores/esp32/esp32-hal-cpu.c
@@ -45,8 +44,7 @@ set(CORE_SRCS
4544
cores/esp32/esp32-hal-sigmadelta.c
4645
cores/esp32/esp32-hal-spi.c
4746
cores/esp32/esp32-hal-time.c
48-
cores/esp32/esp32-hal-timer.c
49-
cores/esp32/esp32-hal-tinyusb.c
47+
cores/esp32/esp32-hal-timer.c
5048
cores/esp32/esp32-hal-touch.c
5149
cores/esp32/esp32-hal-touch-ng.c
5250
cores/esp32/esp32-hal-uart.c
@@ -69,87 +67,59 @@ set(CORE_SRCS
6967
cores/esp32/StreamString.cpp
7068
cores/esp32/Tone.cpp
7169
cores/esp32/HWCDC.cpp
72-
cores/esp32/USB.cpp
73-
cores/esp32/USBCDC.cpp
74-
cores/esp32/USBMSC.cpp
7570
cores/esp32/FirmwareMSC.cpp
7671
cores/esp32/firmware_msc_fat.c
7772
cores/esp32/wiring_pulse.c
7873
cores/esp32/wiring_shift.c
7974
cores/esp32/WMath.cpp
8075
cores/esp32/WString.cpp
8176
)
77+
if(IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
78+
list(APPEND CORE_SRCS
79+
cores/esp32/esp32-hal-tinyusb.c
80+
cores/esp32/USB.cpp
81+
cores/esp32/USBCDC.cpp
82+
cores/esp32/USBMSC.cpp)
83+
endif()
8284

8385
set(ARDUINO_ALL_LIBRARIES
8486
ArduinoOTA
8587
AsyncUDP
86-
BLE
87-
BluetoothSerial
8888
DNSServer
8989
EEPROM
90-
ESP_I2S
91-
ESP_NOW
92-
ESP_SR
93-
ESP_HostedOTA
9490
ESPmDNS
9591
Ethernet
9692
FFat
9793
FS
9894
Hash
9995
HTTPClient
10096
HTTPUpdate
101-
Insights
10297
LittleFS
103-
Matter
10498
NetBIOS
10599
Network
106-
OpenThread
107100
PPP
108101
Preferences
109-
RainMaker
110102
SD_MMC
111103
SD
112-
SimpleBLE
113-
SPIFFS
114104
SPI
115105
Ticker
116106
Update
117-
USB
118107
WebServer
119-
NetworkClientSecure
120108
WiFi
121-
WiFiProv
122109
Wire
123-
Zigbee
124110
)
111+
if(IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
112+
list(APPEND ARDUINO_ALL_LIBRARIES USB)
113+
endif()
125114

126115
set(ARDUINO_LIBRARY_ArduinoOTA_SRCS libraries/ArduinoOTA/src/ArduinoOTA.cpp)
127116

128117
set(ARDUINO_LIBRARY_AsyncUDP_SRCS libraries/AsyncUDP/src/AsyncUDP.cpp)
129118

130-
set(ARDUINO_LIBRARY_BluetoothSerial_SRCS
131-
libraries/BluetoothSerial/src/BluetoothSerial.cpp
132-
libraries/BluetoothSerial/src/BTAddress.cpp
133-
libraries/BluetoothSerial/src/BTAdvertisedDeviceSet.cpp
134-
libraries/BluetoothSerial/src/BTScanResultsSet.cpp)
135-
136119
set(ARDUINO_LIBRARY_DNSServer_SRCS libraries/DNSServer/src/DNSServer.cpp)
137120

138121
set(ARDUINO_LIBRARY_EEPROM_SRCS libraries/EEPROM/src/EEPROM.cpp)
139122

140-
set(ARDUINO_LIBRARY_ESP_I2S_SRCS libraries/ESP_I2S/src/ESP_I2S.cpp)
141-
142-
set(ARDUINO_LIBRARY_ESP_NOW_SRCS
143-
libraries/ESP_NOW/src/ESP32_NOW.cpp
144-
libraries/ESP_NOW/src/ESP32_NOW_Serial.cpp)
145-
146-
set(ARDUINO_LIBRARY_ESP_SR_SRCS
147-
libraries/ESP_SR/src/ESP_SR.cpp
148-
libraries/ESP_SR/src/esp32-hal-sr.c)
149-
150-
set(ARDUINO_LIBRARY_ESP_HostedOTA_SRCS
151-
libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp)
152-
153123
set(ARDUINO_LIBRARY_ESPmDNS_SRCS libraries/ESPmDNS/src/ESPmDNS.cpp)
154124

155125
set(ARDUINO_LIBRARY_Ethernet_SRCS libraries/Ethernet/src/ETH.cpp)
@@ -164,75 +134,27 @@ set(ARDUINO_LIBRARY_Hash_SRCS
164134
libraries/Hash/src/SHA1Builder.cpp
165135
libraries/Hash/src/SHA2Builder.cpp
166136
libraries/Hash/src/SHA3Builder.cpp
167-
libraries/Hash/src/PBKDF2_HMACBuilder.cpp
168-
)
137+
libraries/Hash/src/PBKDF2_HMACBuilder.cpp)
169138

170139
set(ARDUINO_LIBRARY_HTTPClient_SRCS libraries/HTTPClient/src/HTTPClient.cpp)
171140

172141
set(ARDUINO_LIBRARY_HTTPUpdate_SRCS libraries/HTTPUpdate/src/HTTPUpdate.cpp)
173142

174-
set(ARDUINO_LIBRARY_Insights_SRCS libraries/Insights/src/Insights.cpp)
175-
176143
set(ARDUINO_LIBRARY_LittleFS_SRCS libraries/LittleFS/src/LittleFS.cpp)
177144

178145
set(ARDUINO_LIBRARY_NetBIOS_SRCS libraries/NetBIOS/src/NetBIOS.cpp)
179146

180-
set(ARDUINO_LIBRARY_OpenThread_SRCS
181-
libraries/OpenThread/src/OThread.cpp
182-
libraries/OpenThread/src/OThreadCLI.cpp
183-
libraries/OpenThread/src/OThreadCLI_Util.cpp)
184-
185-
set(ARDUINO_LIBRARY_Matter_SRCS
186-
libraries/Matter/src/MatterEndpoints/MatterGenericSwitch.cpp
187-
libraries/Matter/src/MatterEndpoints/MatterOnOffLight.cpp
188-
libraries/Matter/src/MatterEndpoints/MatterDimmableLight.cpp
189-
libraries/Matter/src/MatterEndpoints/MatterColorTemperatureLight.cpp
190-
libraries/Matter/src/MatterEndpoints/MatterColorLight.cpp
191-
libraries/Matter/src/MatterEndpoints/MatterEnhancedColorLight.cpp
192-
libraries/Matter/src/MatterEndpoints/MatterFan.cpp
193-
libraries/Matter/src/MatterEndpoints/MatterTemperatureSensor.cpp
194-
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
195-
libraries/Matter/src/MatterEndpoints/MatterHumiditySensor.cpp
196-
libraries/Matter/src/MatterEndpoints/MatterContactSensor.cpp
197-
libraries/Matter/src/MatterEndpoints/MatterWaterLeakDetector.cpp
198-
libraries/Matter/src/MatterEndpoints/MatterWaterFreezeDetector.cpp
199-
libraries/Matter/src/MatterEndpoints/MatterRainSensor.cpp
200-
libraries/Matter/src/MatterEndpoints/MatterPressureSensor.cpp
201-
libraries/Matter/src/MatterEndpoints/MatterOccupancySensor.cpp
202-
libraries/Matter/src/MatterEndpoints/MatterOnOffPlugin.cpp
203-
libraries/Matter/src/MatterEndpoints/MatterDimmablePlugin.cpp
204-
libraries/Matter/src/MatterEndpoints/MatterThermostat.cpp
205-
libraries/Matter/src/MatterEndpoints/MatterWindowCovering.cpp
206-
libraries/Matter/src/Matter.cpp
207-
libraries/Matter/src/MatterEndPoint.cpp)
208-
209-
set(ARDUINO_LIBRARY_PPP_SRCS
210-
libraries/PPP/src/PPP.cpp
211-
libraries/PPP/src/ppp.c)
147+
set(ARDUINO_LIBRARY_PPP_SRCS libraries/PPP/src/PPP.cpp)
212148

213149
set(ARDUINO_LIBRARY_Preferences_SRCS libraries/Preferences/src/Preferences.cpp)
214150

215-
set(ARDUINO_LIBRARY_RainMaker_SRCS
216-
libraries/RainMaker/src/RMaker.cpp
217-
libraries/RainMaker/src/RMakerNode.cpp
218-
libraries/RainMaker/src/RMakerParam.cpp
219-
libraries/RainMaker/src/RMakerDevice.cpp
220-
libraries/RainMaker/src/RMakerType.cpp
221-
libraries/RainMaker/src/RMakerQR.cpp
222-
libraries/RainMaker/src/RMakerUtils.cpp
223-
libraries/RainMaker/src/AppInsights.cpp)
224-
225151
set(ARDUINO_LIBRARY_SD_MMC_SRCS libraries/SD_MMC/src/SD_MMC.cpp)
226152

227153
set(ARDUINO_LIBRARY_SD_SRCS
228154
libraries/SD/src/SD.cpp
229155
libraries/SD/src/sd_diskio.cpp
230156
libraries/SD/src/sd_diskio_crc.c)
231157

232-
set(ARDUINO_LIBRARY_SimpleBLE_SRCS libraries/SimpleBLE/src/SimpleBLE.cpp)
233-
234-
set(ARDUINO_LIBRARY_SPIFFS_SRCS libraries/SPIFFS/src/SPIFFS.cpp)
235-
236158
set(ARDUINO_LIBRARY_SPI_SRCS libraries/SPI/src/SPI.cpp)
237159

238160
set(ARDUINO_LIBRARY_Ticker_SRCS libraries/Ticker/src/Ticker.cpp)
@@ -241,26 +163,28 @@ set(ARDUINO_LIBRARY_Update_SRCS
241163
libraries/Update/src/Updater.cpp
242164
libraries/Update/src/HttpsOTAUpdate.cpp)
243165

244-
set(ARDUINO_LIBRARY_USB_SRCS
245-
libraries/USB/src/USBHID.cpp
246-
libraries/USB/src/USBMIDI.cpp
247-
libraries/USB/src/USBHIDMouse.cpp
248-
libraries/USB/src/USBHIDKeyboard.cpp
249-
libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
250-
libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
251-
libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
252-
libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
253-
libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
254-
libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
255-
libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
256-
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
257-
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
258-
libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
259-
libraries/USB/src/USBHIDGamepad.cpp
260-
libraries/USB/src/USBHIDConsumerControl.cpp
261-
libraries/USB/src/USBHIDSystemControl.cpp
262-
libraries/USB/src/USBHIDVendor.cpp
263-
libraries/USB/src/USBVendor.cpp)
166+
if(IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
167+
set(ARDUINO_LIBRARY_USB_SRCS
168+
libraries/USB/src/USBHID.cpp
169+
libraries/USB/src/USBMIDI.cpp
170+
libraries/USB/src/USBHIDMouse.cpp
171+
libraries/USB/src/USBHIDKeyboard.cpp
172+
libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
173+
libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
174+
libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
175+
libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
176+
libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
177+
libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
178+
libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
179+
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
180+
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
181+
libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
182+
libraries/USB/src/USBHIDGamepad.cpp
183+
libraries/USB/src/USBHIDConsumerControl.cpp
184+
libraries/USB/src/USBHIDSystemControl.cpp
185+
libraries/USB/src/USBHIDVendor.cpp
186+
libraries/USB/src/USBVendor.cpp)
187+
endif()
264188

265189
set(ARDUINO_LIBRARY_WebServer_SRCS
266190
libraries/WebServer/src/WebServer.cpp
@@ -271,10 +195,6 @@ set(ARDUINO_LIBRARY_WebServer_SRCS
271195
libraries/WebServer/src/middleware/CorsMiddleware.cpp
272196
libraries/WebServer/src/middleware/LoggingMiddleware.cpp)
273197

274-
set(ARDUINO_LIBRARY_NetworkClientSecure_SRCS
275-
libraries/NetworkClientSecure/src/ssl_client.cpp
276-
libraries/NetworkClientSecure/src/NetworkClientSecure.cpp)
277-
278198
set(ARDUINO_LIBRARY_Network_SRCS
279199
libraries/Network/src/NetworkInterface.cpp
280200
libraries/Network/src/NetworkEvents.cpp
@@ -293,75 +213,8 @@ set(ARDUINO_LIBRARY_WiFi_SRCS
293213
libraries/WiFi/src/STA.cpp
294214
libraries/WiFi/src/AP.cpp)
295215

296-
set(ARDUINO_LIBRARY_WiFiProv_SRCS libraries/WiFiProv/src/WiFiProv.cpp)
297-
298216
set(ARDUINO_LIBRARY_Wire_SRCS libraries/Wire/src/Wire.cpp)
299217

300-
set(ARDUINO_LIBRARY_Zigbee_SRCS
301-
libraries/Zigbee/src/ZigbeeCore.cpp
302-
libraries/Zigbee/src/ZigbeeEP.cpp
303-
libraries/Zigbee/src/ZigbeeHandlers.cpp
304-
libraries/Zigbee/src/ep/ZigbeeColorDimmableLight.cpp
305-
libraries/Zigbee/src/ep/ZigbeeColorDimmerSwitch.cpp
306-
libraries/Zigbee/src/ep/ZigbeeDimmableLight.cpp
307-
libraries/Zigbee/src/ep/ZigbeeLight.cpp
308-
libraries/Zigbee/src/ep/ZigbeeSwitch.cpp
309-
libraries/Zigbee/src/ep/ZigbeeTempSensor.cpp
310-
libraries/Zigbee/src/ep/ZigbeeThermostat.cpp
311-
libraries/Zigbee/src/ep/ZigbeeFlowSensor.cpp
312-
libraries/Zigbee/src/ep/ZigbeePressureSensor.cpp
313-
libraries/Zigbee/src/ep/ZigbeeOccupancySensor.cpp
314-
libraries/Zigbee/src/ep/ZigbeeCarbonDioxideSensor.cpp
315-
libraries/Zigbee/src/ep/ZigbeeContactSwitch.cpp
316-
libraries/Zigbee/src/ep/ZigbeeDoorWindowHandle.cpp
317-
libraries/Zigbee/src/ep/ZigbeeWindowCovering.cpp
318-
libraries/Zigbee/src/ep/ZigbeeVibrationSensor.cpp
319-
libraries/Zigbee/src/ep/ZigbeeAnalog.cpp
320-
libraries/Zigbee/src/ep/ZigbeeRangeExtender.cpp
321-
libraries/Zigbee/src/ep/ZigbeeGateway.cpp
322-
libraries/Zigbee/src/ep/ZigbeeWindSpeedSensor.cpp
323-
libraries/Zigbee/src/ep/ZigbeeIlluminanceSensor.cpp
324-
libraries/Zigbee/src/ep/ZigbeePM25Sensor.cpp
325-
libraries/Zigbee/src/ep/ZigbeeElectricalMeasurement.cpp
326-
libraries/Zigbee/src/ep/ZigbeeBinary.cpp
327-
libraries/Zigbee/src/ep/ZigbeePowerOutlet.cpp
328-
libraries/Zigbee/src/ep/ZigbeeFanControl.cpp
329-
libraries/Zigbee/src/ep/ZigbeeMultistate.cpp
330-
)
331-
332-
set(ARDUINO_LIBRARY_BLE_SRCS
333-
libraries/BLE/src/BLE2901.cpp
334-
libraries/BLE/src/BLE2902.cpp
335-
libraries/BLE/src/BLE2904.cpp
336-
libraries/BLE/src/BLEAddress.cpp
337-
libraries/BLE/src/BLEAdvertisedDevice.cpp
338-
libraries/BLE/src/BLEAdvertising.cpp
339-
libraries/BLE/src/BLEBeacon.cpp
340-
libraries/BLE/src/BLECharacteristic.cpp
341-
libraries/BLE/src/BLECharacteristicMap.cpp
342-
libraries/BLE/src/BLEClient.cpp
343-
libraries/BLE/src/BLEDescriptor.cpp
344-
libraries/BLE/src/BLEDescriptorMap.cpp
345-
libraries/BLE/src/BLEDevice.cpp
346-
libraries/BLE/src/BLEEddystoneTLM.cpp
347-
libraries/BLE/src/BLEEddystoneURL.cpp
348-
libraries/BLE/src/BLEExceptions.cpp
349-
libraries/BLE/src/BLEHIDDevice.cpp
350-
libraries/BLE/src/BLERemoteCharacteristic.cpp
351-
libraries/BLE/src/BLERemoteDescriptor.cpp
352-
libraries/BLE/src/BLERemoteService.cpp
353-
libraries/BLE/src/BLEScan.cpp
354-
libraries/BLE/src/BLESecurity.cpp
355-
libraries/BLE/src/BLEServer.cpp
356-
libraries/BLE/src/BLEService.cpp
357-
libraries/BLE/src/BLEServiceMap.cpp
358-
libraries/BLE/src/BLEUtils.cpp
359-
libraries/BLE/src/BLEUUID.cpp
360-
libraries/BLE/src/BLEValue.cpp
361-
libraries/BLE/src/FreeRTOS.cpp
362-
libraries/BLE/src/GeneralUtils.cpp
363-
)
364-
365218
set(ARDUINO_LIBRARIES_SRCS)
366219
set(ARDUINO_LIBRARIES_REQUIRES)
367220
set(ARDUINO_LIBRARIES_INCLUDEDIRS)
@@ -383,15 +236,7 @@ set(includedirs variants/${CONFIG_ARDUINO_VARIANT}/ cores/esp32/ ${ARDUINO_LIBRA
383236
set(srcs ${CORE_SRCS} ${ARDUINO_LIBRARIES_SRCS})
384237
set(priv_includes cores/esp32/libb64)
385238
set(requires spi_flash esp_partition mbedtls wpa_supplicant esp_adc esp_eth http_parser esp_ringbuf esp_driver_gptimer esp_driver_usb_serial_jtag driver esp_http_client esp_https_ota)
386-
set(priv_requires fatfs nvs_flash app_update spiffs bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES})
387-
388-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_OpenThread)
389-
#if(CONFIG_SOC_IEEE802154_SUPPORTED) # Does not work!
390-
#if(CONFIG_OPENTHREAD_ENABLED) # Does not work!
391-
if(IDF_TARGET STREQUAL "esp32c6" OR IDF_TARGET STREQUAL "esp32h2" OR IDF_TARGET STREQUAL "esp32c5") # Sadly only this works
392-
list(APPEND requires openthread)
393-
endif()
394-
endif()
239+
set(priv_requires fatfs nvs_flash app_update bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES})
395240

396241
if(IDF_TARGET STREQUAL "esp32" OR IDF_TARGET STREQUAL "esp32s2" OR IDF_TARGET STREQUAL "esp32s3" OR IDF_TARGET STREQUAL "esp32p4")
397242
list(APPEND requires esp_driver_touch_sens)
@@ -442,15 +287,6 @@ endif()
442287
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ArduinoOTA)
443288
maybe_add_component(esp_https_ota)
444289
endif()
445-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ESP_SR)
446-
maybe_add_component(espressif__esp_sr)
447-
endif()
448-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_Matter)
449-
maybe_add_component(espressif__esp_matter)
450-
endif()
451290
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_LittleFS)
452291
maybe_add_component(joltwallet__littlefs)
453292
endif()
454-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_WiFiProv)
455-
maybe_add_component(espressif__network_provisioning)
456-
endif()

0 commit comments

Comments
 (0)