Разрешённые конфликты (12 файлов, из них 4 companion взяты из upstream целиком): - examples/companion_radio/*: взят upstream, companion в форке не собирается - examples/simple_repeater/MyMesh.cpp: убрана наша интеграция вентилятора (setFanPostTxHoldMs/setFanMode) — upstream 1.18.0 сам грузит настройки вентилятора через attachDynamicPrefs, а его CLI (get fan, set fan auto|on|off, set fan.lo/hi) доступен через board.handleCommand из CommonCLI; удалён наш дублирующий блок get fan/set fan. Оставлена наша сигнатура format*StatsReply(char*, size_t) - examples/simple_repeater/MyMesh.h: оставлены наши WebSensorSnapshot/BlacklistEntry/ ChanNameFilter и getCLI() (нужен мастеру настройки), добавлен upstream isHiddenNode(); FIRMWARE_VERSION по умолчанию — v1.18.0 - src/helpers/CommonCLI.h: оставлены наши FanPrefs (совместимость NVS) и добавлен upstream DynamicConfigSerializer custom (getCustom() нужен attachDynamicPrefs) - src/helpers/ESP32Board.h: время восстанавливается сначала из NVS (наша надстройка, переживает отключение питания), затем из RTC-памяти upstream, иначе опорная дата; deep sleep по-прежнему не трогаем - src/helpers/sensors/EnvironmentSensorManager.cpp: взята логика upstream (detected[], один драйвер на тип), поверх возвращено определение адреса платой (boardDetectedI2CSensorAddress) - variants/lilygo_tbeam_1w/*: взят upstream (задача вентилятора, NTC, гистерезис, CLI и сохранение настроек), наши правки перенесены как делегирование его API - README.md: оставлен наш
170 lines
5.1 KiB
INI
170 lines
5.1 KiB
INI
[nibble_screen_connect_base]
|
|
extends = esp32_base
|
|
board = esp32-s3-zero
|
|
build_flags =
|
|
${esp32_base.build_flags}
|
|
-I variants/nibble_screen_connect
|
|
-D NIBBLE_SCREEN_CONNECT
|
|
-D P_LORA_DIO_1=4
|
|
-D P_LORA_NSS=10
|
|
-D P_LORA_RESET=6
|
|
-D P_LORA_BUSY=5
|
|
-D P_LORA_SCLK=13
|
|
-D P_LORA_MISO=12
|
|
-D P_LORA_MOSI=11
|
|
-D PIN_USER_BTN=1
|
|
-D PIN_BOARD_SDA=8
|
|
-D PIN_BOARD_SCL=7
|
|
-D HAS_NEOPIXEL
|
|
-D NEOPIXEL_COUNT=1
|
|
-D NEOPIXEL_DATA=21
|
|
-D NEOPIXEL_TYPE=NEO_GRB+NEO_KHZ800
|
|
-D SX126X_DIO2_AS_RF_SWITCH=true
|
|
-D SX126X_DIO3_TCXO_VOLTAGE=1.8
|
|
-D SX126X_CURRENT_LIMIT=140
|
|
-D USE_SX1262
|
|
-D RADIO_CLASS=CustomSX1262
|
|
-D WRAPPER_CLASS=CustomSX1262Wrapper
|
|
-D LORA_TX_POWER=22
|
|
-D SX126X_RX_BOOSTED_GAIN=1
|
|
build_src_filter = ${esp32_base.build_src_filter}
|
|
+<../variants/nibble_screen_connect>
|
|
lib_deps =
|
|
${esp32_base.lib_deps}
|
|
adafruit/Adafruit SSD1306 @ ^2.5.13
|
|
adafruit/Adafruit NeoPixel @ ^1.12.3
|
|
|
|
[env:nibble_screen_connect_repeater_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-D DISPLAY_CLASS=SSD1306Display
|
|
-D ADVERT_NAME='"Nibble Repeater"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D MAX_NEIGHBOURS=50
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<helpers/ui/SSD1306Display.cpp>
|
|
+<../examples/simple_repeater>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
[env:nibble_screen_connect_repeater_bridge_espnow_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-D DISPLAY_CLASS=SSD1306Display
|
|
-D ADVERT_NAME='"ESPNow Bridge"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D MAX_NEIGHBOURS=50
|
|
-D WITH_ESPNOW_BRIDGE=1
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<helpers/bridges/ESPNowBridge.cpp>
|
|
+<helpers/ui/SSD1306Display.cpp>
|
|
+<../examples/simple_repeater>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
[env:nibble_screen_connect_terminal_chat_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-D MAX_CONTACTS=300
|
|
-D MAX_GROUP_CHANNELS=1
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<../examples/simple_secure_chat/main.cpp>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
|
|
[env:nibble_screen_connect_room_server_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-D DISPLAY_CLASS=SSD1306Display
|
|
-D ADVERT_NAME='"Nibble Room"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D ROOM_PASSWORD='"hello"'
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<helpers/ui/SSD1306Display.cpp>
|
|
+<../examples/simple_room_server>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
[env:nibble_screen_connect_companion_radio_usb_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-I examples/companion_radio/ui-new
|
|
-D DISPLAY_CLASS=SSD1306Display
|
|
-D MAX_CONTACTS=300
|
|
-D MAX_GROUP_CHANNELS=8
|
|
-D ENABLE_USB_INTERFACE
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<helpers/ui/SSD1306Display.cpp>
|
|
+<helpers/ui/MomentaryButton.cpp>
|
|
+<../examples/companion_radio/*.cpp>
|
|
+<../examples/companion_radio/ui-new/*.cpp>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
|
|
[env:nibble_screen_connect_companion_radio_ble_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-I examples/companion_radio/ui-new
|
|
-D DISPLAY_CLASS=SSD1306Display
|
|
-D MAX_CONTACTS=300
|
|
-D MAX_GROUP_CHANNELS=8
|
|
-D BLE_PIN_CODE=123456
|
|
-D BLE_DEBUG_LOGGING=1
|
|
-D OFFLINE_QUEUE_SIZE=256
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<helpers/esp32/*.cpp>
|
|
+<helpers/ui/SSD1306Display.cpp>
|
|
+<helpers/ui/MomentaryButton.cpp>
|
|
+<../examples/companion_radio/*.cpp>
|
|
+<../examples/companion_radio/ui-new/*.cpp>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
|
|
[env:nibble_screen_connect_companion_radio_wifi_]
|
|
extends = nibble_screen_connect_base
|
|
build_flags =
|
|
${nibble_screen_connect_base.build_flags}
|
|
-I examples/companion_radio/ui-new
|
|
-D ENABLE_WIFI_INTERFACE
|
|
-D DISPLAY_CLASS=SSD1306Display
|
|
-D MAX_CONTACTS=300
|
|
-D MAX_GROUP_CHANNELS=8
|
|
-D WIFI_DEBUG_LOGGING=1
|
|
-D WIFI_SSID='"myssid"'
|
|
-D WIFI_PWD='"mypwd"'
|
|
-D OFFLINE_QUEUE_SIZE=256
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<helpers/ui/SSD1306Display.cpp>
|
|
+<helpers/ui/MomentaryButton.cpp>
|
|
+<helpers/esp32/*.cpp>
|
|
+<helpers/wifi/*.cpp>
|
|
+<../examples/companion_radio/*.cpp>
|
|
+<../examples/companion_radio/ui-new/*.cpp>
|
|
lib_deps =
|
|
${nibble_screen_connect_base.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
|
|
|
|
[env:nibble_screen_connect_kiss_modem_]
|
|
extends = nibble_screen_connect_base
|
|
build_src_filter = ${nibble_screen_connect_base.build_src_filter}
|
|
+<../examples/kiss_modem/>
|