Skip to content

Commit 2955b38

Browse files
authored
Tasmota changes
* optional 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 see arendst/Tasmota@9696118 * remove FS log which is just littering
1 parent 51ef2a1 commit 2955b38

File tree

16 files changed

+95
-378
lines changed

16 files changed

+95
-378
lines changed

CMakeLists.txt

+35-169
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.3.99")
9+
set(max_supported_idf_version "5.4.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
@@ -43,8 +42,7 @@ set(CORE_SRCS
4342
cores/esp32/esp32-hal-sigmadelta.c
4443
cores/esp32/esp32-hal-spi.c
4544
cores/esp32/esp32-hal-time.c
46-
cores/esp32/esp32-hal-timer.c
47-
cores/esp32/esp32-hal-tinyusb.c
45+
cores/esp32/esp32-hal-timer.c
4846
cores/esp32/esp32-hal-touch.c
4947
cores/esp32/esp32-hal-touch-ng.c
5048
cores/esp32/esp32-hal-uart.c
@@ -67,82 +65,58 @@ set(CORE_SRCS
6765
cores/esp32/StreamString.cpp
6866
cores/esp32/Tone.cpp
6967
cores/esp32/HWCDC.cpp
70-
cores/esp32/USB.cpp
71-
cores/esp32/USBCDC.cpp
72-
cores/esp32/USBMSC.cpp
7368
cores/esp32/FirmwareMSC.cpp
7469
cores/esp32/firmware_msc_fat.c
7570
cores/esp32/wiring_pulse.c
7671
cores/esp32/wiring_shift.c
7772
cores/esp32/WMath.cpp
7873
cores/esp32/WString.cpp
7974
)
75+
if(IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
76+
list(APPEND CORE_SRCS
77+
cores/esp32/esp32-hal-tinyusb.c
78+
cores/esp32/USB.cpp
79+
cores/esp32/USBCDC.cpp
80+
cores/esp32/USBMSC.cpp)
81+
endif()
8082

8183
set(ARDUINO_ALL_LIBRARIES
8284
ArduinoOTA
8385
AsyncUDP
84-
BLE
85-
BluetoothSerial
8686
DNSServer
8787
EEPROM
88-
ESP_I2S
89-
ESP_NOW
90-
ESP_SR
9188
ESPmDNS
9289
Ethernet
9390
FFat
9491
FS
9592
HTTPClient
9693
HTTPUpdate
97-
Insights
9894
LittleFS
99-
Matter
10095
NetBIOS
10196
Network
102-
OpenThread
10397
PPP
10498
Preferences
105-
RainMaker
10699
SD_MMC
107100
SD
108-
SimpleBLE
109-
SPIFFS
110101
SPI
111102
Ticker
112103
Update
113-
USB
114104
WebServer
115-
NetworkClientSecure
116105
WiFi
117-
WiFiProv
118106
Wire
119-
Zigbee
120107
)
108+
if(IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
109+
list(APPEND ARDUINO_ALL_LIBRARIES USB)
110+
endif()
121111

122112
set(ARDUINO_LIBRARY_ArduinoOTA_SRCS libraries/ArduinoOTA/src/ArduinoOTA.cpp)
123113

124114
set(ARDUINO_LIBRARY_AsyncUDP_SRCS libraries/AsyncUDP/src/AsyncUDP.cpp)
125115

126-
set(ARDUINO_LIBRARY_BluetoothSerial_SRCS
127-
libraries/BluetoothSerial/src/BluetoothSerial.cpp
128-
libraries/BluetoothSerial/src/BTAddress.cpp
129-
libraries/BluetoothSerial/src/BTAdvertisedDeviceSet.cpp
130-
libraries/BluetoothSerial/src/BTScanResultsSet.cpp)
131-
132116
set(ARDUINO_LIBRARY_DNSServer_SRCS libraries/DNSServer/src/DNSServer.cpp)
133117

134118
set(ARDUINO_LIBRARY_EEPROM_SRCS libraries/EEPROM/src/EEPROM.cpp)
135119

136-
set(ARDUINO_LIBRARY_ESP_I2S_SRCS libraries/ESP_I2S/src/ESP_I2S.cpp)
137-
138-
set(ARDUINO_LIBRARY_ESP_NOW_SRCS
139-
libraries/ESP_NOW/src/ESP32_NOW.cpp
140-
libraries/ESP_NOW/src/ESP32_NOW_Serial.cpp)
141-
142-
set(ARDUINO_LIBRARY_ESP_SR_SRCS
143-
libraries/ESP_SR/src/ESP_SR.cpp
144-
libraries/ESP_SR/src/esp32-hal-sr.c)
145-
146120
set(ARDUINO_LIBRARY_ESPmDNS_SRCS libraries/ESPmDNS/src/ESPmDNS.cpp)
147121

148122
set(ARDUINO_LIBRARY_Ethernet_SRCS libraries/Ethernet/src/ETH.cpp)
@@ -157,60 +131,23 @@ set(ARDUINO_LIBRARY_HTTPClient_SRCS libraries/HTTPClient/src/HTTPClient.cpp)
157131

158132
set(ARDUINO_LIBRARY_HTTPUpdate_SRCS libraries/HTTPUpdate/src/HTTPUpdate.cpp)
159133

160-
set(ARDUINO_LIBRARY_Insights_SRCS libraries/Insights/src/Insights.cpp)
161-
162134
set(ARDUINO_LIBRARY_LittleFS_SRCS libraries/LittleFS/src/LittleFS.cpp)
163135

164136
set(ARDUINO_LIBRARY_NetBIOS_SRCS libraries/NetBIOS/src/NetBIOS.cpp)
165137

166-
set(ARDUINO_LIBRARY_OpenThread_SRCS
167-
libraries/OpenThread/src/OThreadCLI.cpp
168-
libraries/OpenThread/src/OThreadCLI_Util.cpp)
169-
170-
set(ARDUINO_LIBRARY_Matter_SRCS
171-
libraries/Matter/src/MatterEndpoints/MatterGenericSwitch.cpp
172-
libraries/Matter/src/MatterEndpoints/MatterOnOffLight.cpp
173-
libraries/Matter/src/MatterEndpoints/MatterDimmableLight.cpp
174-
libraries/Matter/src/MatterEndpoints/MatterColorTemperatureLight.cpp
175-
libraries/Matter/src/MatterEndpoints/MatterColorLight.cpp
176-
libraries/Matter/src/MatterEndpoints/MatterEnhancedColorLight.cpp
177-
libraries/Matter/src/MatterEndpoints/MatterFan.cpp
178-
libraries/Matter/src/MatterEndpoints/MatterTemperatureSensor.cpp
179-
libraries/Matter/src/MatterEndpoints/MatterHumiditySensor.cpp
180-
libraries/Matter/src/MatterEndpoints/MatterContactSensor.cpp
181-
libraries/Matter/src/MatterEndpoints/MatterPressureSensor.cpp
182-
libraries/Matter/src/MatterEndpoints/MatterOccupancySensor.cpp
183-
libraries/Matter/src/MatterEndpoints/MatterOnOffPlugin.cpp
184-
libraries/Matter/src/MatterEndpoints/MatterThermostat.cpp
185-
libraries/Matter/src/Matter.cpp)
186-
187138
set(ARDUINO_LIBRARY_PPP_SRCS
188139
libraries/PPP/src/PPP.cpp
189140
libraries/PPP/src/ppp.c)
190141

191142
set(ARDUINO_LIBRARY_Preferences_SRCS libraries/Preferences/src/Preferences.cpp)
192143

193-
set(ARDUINO_LIBRARY_RainMaker_SRCS
194-
libraries/RainMaker/src/RMaker.cpp
195-
libraries/RainMaker/src/RMakerNode.cpp
196-
libraries/RainMaker/src/RMakerParam.cpp
197-
libraries/RainMaker/src/RMakerDevice.cpp
198-
libraries/RainMaker/src/RMakerType.cpp
199-
libraries/RainMaker/src/RMakerQR.cpp
200-
libraries/RainMaker/src/RMakerUtils.cpp
201-
libraries/RainMaker/src/AppInsights.cpp)
202-
203144
set(ARDUINO_LIBRARY_SD_MMC_SRCS libraries/SD_MMC/src/SD_MMC.cpp)
204145

205146
set(ARDUINO_LIBRARY_SD_SRCS
206147
libraries/SD/src/SD.cpp
207148
libraries/SD/src/sd_diskio.cpp
208149
libraries/SD/src/sd_diskio_crc.c)
209150

210-
set(ARDUINO_LIBRARY_SimpleBLE_SRCS libraries/SimpleBLE/src/SimpleBLE.cpp)
211-
212-
set(ARDUINO_LIBRARY_SPIFFS_SRCS libraries/SPIFFS/src/SPIFFS.cpp)
213-
214151
set(ARDUINO_LIBRARY_SPI_SRCS libraries/SPI/src/SPI.cpp)
215152

216153
set(ARDUINO_LIBRARY_Ticker_SRCS libraries/Ticker/src/Ticker.cpp)
@@ -219,26 +156,28 @@ set(ARDUINO_LIBRARY_Update_SRCS
219156
libraries/Update/src/Updater.cpp
220157
libraries/Update/src/HttpsOTAUpdate.cpp)
221158

222-
set(ARDUINO_LIBRARY_USB_SRCS
223-
libraries/USB/src/USBHID.cpp
224-
libraries/USB/src/USBMIDI.cpp
225-
libraries/USB/src/USBHIDMouse.cpp
226-
libraries/USB/src/USBHIDKeyboard.cpp
227-
libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
228-
libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
229-
libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
230-
libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
231-
libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
232-
libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
233-
libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
234-
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
235-
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
236-
libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
237-
libraries/USB/src/USBHIDGamepad.cpp
238-
libraries/USB/src/USBHIDConsumerControl.cpp
239-
libraries/USB/src/USBHIDSystemControl.cpp
240-
libraries/USB/src/USBHIDVendor.cpp
241-
libraries/USB/src/USBVendor.cpp)
159+
if(IDF_TARGET MATCHES "esp32s2|esp32s3|esp32p4" AND CONFIG_TINYUSB_ENABLED)
160+
set(ARDUINO_LIBRARY_USB_SRCS
161+
libraries/USB/src/USBHID.cpp
162+
libraries/USB/src/USBMIDI.cpp
163+
libraries/USB/src/USBHIDMouse.cpp
164+
libraries/USB/src/USBHIDKeyboard.cpp
165+
libraries/USB/src/keyboardLayout/KeyboardLayout_da_DK.cpp
166+
libraries/USB/src/keyboardLayout/KeyboardLayout_de_DE.cpp
167+
libraries/USB/src/keyboardLayout/KeyboardLayout_en_US.cpp
168+
libraries/USB/src/keyboardLayout/KeyboardLayout_es_ES.cpp
169+
libraries/USB/src/keyboardLayout/KeyboardLayout_fr_FR.cpp
170+
libraries/USB/src/keyboardLayout/KeyboardLayout_hu_HU.cpp
171+
libraries/USB/src/keyboardLayout/KeyboardLayout_it_IT.cpp
172+
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_BR.cpp
173+
libraries/USB/src/keyboardLayout/KeyboardLayout_pt_PT.cpp
174+
libraries/USB/src/keyboardLayout/KeyboardLayout_sv_SE.cpp
175+
libraries/USB/src/USBHIDGamepad.cpp
176+
libraries/USB/src/USBHIDConsumerControl.cpp
177+
libraries/USB/src/USBHIDSystemControl.cpp
178+
libraries/USB/src/USBHIDVendor.cpp
179+
libraries/USB/src/USBVendor.cpp)
180+
endif()
242181

243182
set(ARDUINO_LIBRARY_WebServer_SRCS
244183
libraries/WebServer/src/WebServer.cpp
@@ -249,10 +188,6 @@ set(ARDUINO_LIBRARY_WebServer_SRCS
249188
libraries/WebServer/src/middleware/CorsMiddleware.cpp
250189
libraries/WebServer/src/middleware/LoggingMiddleware.cpp)
251190

252-
set(ARDUINO_LIBRARY_NetworkClientSecure_SRCS
253-
libraries/NetworkClientSecure/src/ssl_client.cpp
254-
libraries/NetworkClientSecure/src/NetworkClientSecure.cpp)
255-
256191
set(ARDUINO_LIBRARY_Network_SRCS
257192
libraries/Network/src/NetworkInterface.cpp
258193
libraries/Network/src/NetworkEvents.cpp
@@ -271,60 +206,8 @@ set(ARDUINO_LIBRARY_WiFi_SRCS
271206
libraries/WiFi/src/STA.cpp
272207
libraries/WiFi/src/AP.cpp)
273208

274-
set(ARDUINO_LIBRARY_WiFiProv_SRCS libraries/WiFiProv/src/WiFiProv.cpp)
275-
276209
set(ARDUINO_LIBRARY_Wire_SRCS libraries/Wire/src/Wire.cpp)
277210

278-
set(ARDUINO_LIBRARY_Zigbee_SRCS
279-
libraries/Zigbee/src/ZigbeeCore.cpp
280-
libraries/Zigbee/src/ZigbeeEP.cpp
281-
libraries/Zigbee/src/ZigbeeHandlers.cpp
282-
libraries/Zigbee/src/ep/ZigbeeColorDimmableLight.cpp
283-
libraries/Zigbee/src/ep/ZigbeeColorDimmerSwitch.cpp
284-
libraries/Zigbee/src/ep/ZigbeeDimmableLight.cpp
285-
libraries/Zigbee/src/ep/ZigbeeLight.cpp
286-
libraries/Zigbee/src/ep/ZigbeeSwitch.cpp
287-
libraries/Zigbee/src/ep/ZigbeeTempSensor.cpp
288-
libraries/Zigbee/src/ep/ZigbeeThermostat.cpp
289-
libraries/Zigbee/src/ep/ZigbeeFlowSensor.cpp
290-
libraries/Zigbee/src/ep/ZigbeePressureSensor.cpp
291-
libraries/Zigbee/src/ep/ZigbeeOccupancySensor.cpp
292-
libraries/Zigbee/src/ep/ZigbeeCarbonDioxideSensor.cpp
293-
)
294-
295-
set(ARDUINO_LIBRARY_BLE_SRCS
296-
libraries/BLE/src/BLE2901.cpp
297-
libraries/BLE/src/BLE2902.cpp
298-
libraries/BLE/src/BLE2904.cpp
299-
libraries/BLE/src/BLEAddress.cpp
300-
libraries/BLE/src/BLEAdvertisedDevice.cpp
301-
libraries/BLE/src/BLEAdvertising.cpp
302-
libraries/BLE/src/BLEBeacon.cpp
303-
libraries/BLE/src/BLECharacteristic.cpp
304-
libraries/BLE/src/BLECharacteristicMap.cpp
305-
libraries/BLE/src/BLEClient.cpp
306-
libraries/BLE/src/BLEDescriptor.cpp
307-
libraries/BLE/src/BLEDescriptorMap.cpp
308-
libraries/BLE/src/BLEDevice.cpp
309-
libraries/BLE/src/BLEEddystoneTLM.cpp
310-
libraries/BLE/src/BLEEddystoneURL.cpp
311-
libraries/BLE/src/BLEExceptions.cpp
312-
libraries/BLE/src/BLEHIDDevice.cpp
313-
libraries/BLE/src/BLERemoteCharacteristic.cpp
314-
libraries/BLE/src/BLERemoteDescriptor.cpp
315-
libraries/BLE/src/BLERemoteService.cpp
316-
libraries/BLE/src/BLEScan.cpp
317-
libraries/BLE/src/BLESecurity.cpp
318-
libraries/BLE/src/BLEServer.cpp
319-
libraries/BLE/src/BLEService.cpp
320-
libraries/BLE/src/BLEServiceMap.cpp
321-
libraries/BLE/src/BLEUtils.cpp
322-
libraries/BLE/src/BLEUUID.cpp
323-
libraries/BLE/src/BLEValue.cpp
324-
libraries/BLE/src/FreeRTOS.cpp
325-
libraries/BLE/src/GeneralUtils.cpp
326-
)
327-
328211
set(ARDUINO_LIBRARIES_SRCS)
329212
set(ARDUINO_LIBRARIES_REQUIRES)
330213
set(ARDUINO_LIBRARIES_INCLUDEDIRS)
@@ -346,15 +229,7 @@ set(includedirs variants/${CONFIG_ARDUINO_VARIANT}/ cores/esp32/ ${ARDUINO_LIBRA
346229
set(srcs ${CORE_SRCS} ${ARDUINO_LIBRARIES_SRCS})
347230
set(priv_includes cores/esp32/libb64)
348231
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)
349-
set(priv_requires fatfs nvs_flash app_update spiffs bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES})
350-
351-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_OpenThread)
352-
#if(CONFIG_SOC_IEEE802154_SUPPORTED) # Does not work!
353-
#if(CONFIG_OPENTHREAD_ENABLED) # Does not work!
354-
if(IDF_TARGET STREQUAL "esp32c6" OR IDF_TARGET STREQUAL "esp32h2") # Sadly only this works
355-
list(APPEND requires openthread)
356-
endif()
357-
endif()
232+
set(priv_requires fatfs nvs_flash app_update bootloader_support bt esp_hid usb esp_psram ${ARDUINO_LIBRARIES_REQUIRES})
358233

359234
if(IDF_TARGET STREQUAL "esp32p4")
360235
list(APPEND requires esp_driver_touch_sens)
@@ -405,15 +280,6 @@ endif()
405280
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ArduinoOTA)
406281
maybe_add_component(esp_https_ota)
407282
endif()
408-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_ESP_SR)
409-
maybe_add_component(espressif__esp_sr)
410-
endif()
411-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_Matter)
412-
maybe_add_component(espressif__esp_matter)
413-
endif()
414283
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_LittleFS)
415284
maybe_add_component(joltwallet__littlefs)
416285
endif()
417-
if(NOT CONFIG_ARDUINO_SELECTIVE_COMPILATION OR CONFIG_ARDUINO_SELECTIVE_WiFiProv)
418-
maybe_add_component(espressif__network_provisioning)
419-
endif()

0 commit comments

Comments
 (0)