feat: Add Ethernet runtime configuration CLI

- Add ip/gw/subnet/dns get/set commands with SPIFFS persistence
- Implement reconfigureEthernet() method for runtime config
- Fix TCP_CONSOLE_PORT conditional compilation
- Update platformio.ini for consistency (USE_ETHERNET)
- Document Ethernet settings and get bridge.type command
- Fixes #2196 #2197 hardware and console dependencies
This commit is contained in:
Piero Andreini 2026-04-05 12:07:11 +02:00
parent ea72dd0f97
commit 4542e6c86a
12 changed files with 295 additions and 16 deletions

View file

@ -18,6 +18,8 @@ build_flags =
-D PIN_GPS_RX=39
-D PIN_GPS_TX=42
-D PIN_GPS_EN=-1
-D PIN_USER_BTN_ANA=7
build_src_filter = ${esp32_base.build_src_filter}
+<../variants/lilygo_t_eth_elite_sx1262>
+<helpers/esp32/TEthEliteBoard.cpp>
@ -55,7 +57,7 @@ build_flags =
-D ADMIN_PASSWORD='"password"'
-D MAX_NEIGHBOURS=50
-D USE_ETHERNET
-D ETH_STATIC_IP=192,168,254,20
-D ETH_STATIC_IP=192,168,254,21
-D ETH_GATEWAY=192,168,254,254
-D ETH_SUBNET=255,255,255,0
-D ETH_DNS=8,8,8,8
@ -83,6 +85,30 @@ lib_deps =
${LilyGo_T_ETH_Elite_SX1262.lib_deps}
${esp32_ota.lib_deps}
[env:LilyGo_T_ETH_Elite_SX1262_repeater_bridge_espnow_eth]
extends = LilyGo_T_ETH_Elite_SX1262
upload_speed = 115200
build_flags =
${LilyGo_T_ETH_Elite_SX1262.build_flags}
-D ADVERT_NAME='"T-ETH Elite SX1262 ESPNow Bridge eth"'
-D ADVERT_LAT=0
-D ADVERT_LON=0
-D ADMIN_PASSWORD='"password"'
-D MAX_NEIGHBOURS=50
-D WITH_ESPNOW_BRIDGE=1
-D USE_ETHERNET
-D ETH_STATIC_IP=192,168,254,21
-D ETH_GATEWAY=192,168,254,254
-D ETH_SUBNET=255,255,255,0
-D ETH_DNS=8,8,8,8
-D TCP_CONSOLE_PORT=4242
build_src_filter = ${LilyGo_T_ETH_Elite_SX1262.build_src_filter}
+<helpers/bridges/ESPNowBridge.cpp>
+<../examples/simple_repeater>
lib_deps =
${LilyGo_T_ETH_Elite_SX1262.lib_deps}
${esp32_ota.lib_deps}
[env:LilyGo_T_ETH_Elite_SX1262_room_server]
extends = LilyGo_T_ETH_Elite_SX1262
build_flags =

View file

@ -17,6 +17,7 @@ build_flags =
-D PIN_GPS_RX=39
-D PIN_GPS_TX=42
-D PIN_GPS_EN=-1
-D PIN_USER_BTN_ANA=7
build_src_filter = ${esp32_base.build_src_filter}
+<../variants/lilygo_t_eth_elite_sx1276>
+<helpers/esp32/TEthEliteBoard.cpp>
@ -54,7 +55,7 @@ build_flags =
-D ADMIN_PASSWORD='"password"'
-D MAX_NEIGHBOURS=50
-D USE_ETHERNET
-D ETH_STATIC_IP=192,168,254,20
-D ETH_STATIC_IP=192,168,254,21
-D ETH_GATEWAY=192,168,254,254
-D ETH_SUBNET=255,255,255,0
-D ETH_DNS=8,8,8,8
@ -82,6 +83,29 @@ lib_deps =
${LilyGo_T_ETH_Elite_SX1276.lib_deps}
${esp32_ota.lib_deps}
[env:LilyGo_T_ETH_Elite_SX1276_repeater_bridge_espnow_eth]
extends = LilyGo_T_ETH_Elite_SX1276
build_flags =
${LilyGo_T_ETH_Elite_SX1276.build_flags}
-D ADVERT_NAME='"T-ETH Elite SX1276 ESPNow Bridge eth"'
-D ADVERT_LAT=0
-D ADVERT_LON=0
-D ADMIN_PASSWORD='"password"'
-D MAX_NEIGHBOURS=50
-D WITH_ESPNOW_BRIDGE=1
-D USE_ETHERNET
-D ETH_STATIC_IP=192,168,254,20
-D ETH_GATEWAY=192,168,254,254
-D ETH_SUBNET=255,255,255,0
-D ETH_DNS=8,8,8,8
-D TCP_CONSOLE_PORT=4242
build_src_filter = ${LilyGo_T_ETH_Elite_SX1276.build_src_filter}
+<helpers/bridges/ESPNowBridge.cpp>
+<../examples/simple_repeater>
lib_deps =
${LilyGo_T_ETH_Elite_SX1276.lib_deps}
${esp32_ota.lib_deps}
[env:LilyGo_T_ETH_Elite_SX1276_room_server]
extends = LilyGo_T_ETH_Elite_SX1276
build_flags =