mirror of
https://github.com/meshcore-dev/MeshCore.git
synced 2026-04-20 22:13:47 +00:00
Add PERSISTANT_GPS and ENV_SKIP_GPS_DETECT flags to the Station G2 repeater build so the GPS module (when physically connected) is active from boot and automatically syncs the RTC clock. Without these flags, GPS detection fails on cold-starting GPS modules that need more than 1 second to begin outputting NMEA data, causing all GPS CLI commands to be unavailable. The existing MicroNMEALocationProvider already handles initial sync after fix acquisition and periodic re-sync every 30 minutes - these flags just ensure it is enabled. Relates to #1426 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
242 lines
6.6 KiB
INI
242 lines
6.6 KiB
INI
[Station_G2]
|
|
extends = esp32_base
|
|
board = station-g2
|
|
build_flags =
|
|
${esp32_base.build_flags}
|
|
${sensor_base.build_flags}
|
|
-I variants/station_g2
|
|
-I src/helpers/ui
|
|
-D STATION_G2
|
|
-D USE_SX1262
|
|
-D RADIO_CLASS=CustomSX1262
|
|
-D WRAPPER_CLASS=CustomSX1262Wrapper
|
|
-D P_LORA_DIO_1=48
|
|
-D P_LORA_NSS=11
|
|
-D P_LORA_RESET=21
|
|
-D P_LORA_BUSY=47
|
|
-D P_LORA_SCLK=12
|
|
-D P_LORA_MISO=14
|
|
-D P_LORA_MOSI=13
|
|
-D LORA_TX_POWER=7 ; configured as 7dbm, because the final output will be ~27dbm (~0.5w) if the PA is enabled.
|
|
-D MAX_LORA_TX_POWER=19 ; max output without burning out the PA
|
|
; -D P_LORA_TX_LED=35
|
|
-D PIN_BOARD_SDA=5
|
|
-D PIN_BOARD_SCL=6
|
|
-D PIN_USER_BTN=38
|
|
-D PIN_GPS_RX=15
|
|
-D PIN_GPS_TX=7
|
|
-D SX126X_DIO2_AS_RF_SWITCH=true
|
|
-D SX126X_DIO3_TCXO_VOLTAGE=1.8
|
|
-D SX126X_CURRENT_LIMIT=140
|
|
-D SX126X_RX_BOOSTED_GAIN=0 ; Default value when 'radio.rxgain' has not been set. Must be OFF for the Station G2, see:
|
|
; https://wiki.uniteng.com/en/meshtastic/station-g2#impact-of-lora-node-dense-areashigh-noise-environments-on-rf-performance
|
|
-D DISPLAY_CLASS=SH1106Display
|
|
build_src_filter = ${esp32_base.build_src_filter}
|
|
+<../variants/station_g2>
|
|
+<helpers/sensors>
|
|
+<helpers/ui/SH1106Display.cpp>
|
|
+<helpers/ui/MomentaryButton.cpp>
|
|
lib_deps =
|
|
${esp32_base.lib_deps}
|
|
${sensor_base.lib_deps}
|
|
adafruit/Adafruit SH110X @ ~2.1.13
|
|
adafruit/Adafruit GFX Library @ ^1.12.1
|
|
|
|
[env:Station_G2_repeater]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-D ADVERT_NAME='"Station G2 Repeater"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D MAX_NEIGHBOURS=50
|
|
-D PERSISTANT_GPS=1
|
|
-D ENV_SKIP_GPS_DETECT=1
|
|
; -D MESH_PACKET_LOGGING=1
|
|
; -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<../examples/simple_repeater>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
; [env:Station_G2_repeater_bridge_rs232]
|
|
; extends = Station_G2
|
|
; build_flags =
|
|
; ${Station_G2.build_flags}
|
|
; -D ADVERT_NAME='"RS232 Bridge"'
|
|
; -D ADVERT_LAT=0.0
|
|
; -D ADVERT_LON=0.0
|
|
; -D ADMIN_PASSWORD='"password"'
|
|
; -D MAX_NEIGHBOURS=50
|
|
; -D WITH_RS232_BRIDGE=Serial2
|
|
; -D WITH_RS232_BRIDGE_RX=5
|
|
; -D WITH_RS232_BRIDGE_TX=6
|
|
; -D BRIDGE_DEBUG=1
|
|
; ; -D MESH_PACKET_LOGGING=1
|
|
; ; -D MESH_DEBUG=1
|
|
; build_src_filter = ${Station_G2.build_src_filter}
|
|
; +<helpers/bridges/RS232Bridge.cpp>
|
|
; +<../examples/simple_repeater>
|
|
; lib_deps =
|
|
; ${Station_G2.lib_deps}
|
|
; ${esp32_ota.lib_deps}
|
|
|
|
[env:Station_G2_repeater_bridge_espnow]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-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
|
|
; -D BRIDGE_DEBUG=1
|
|
; -D MESH_PACKET_LOGGING=1
|
|
; -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<helpers/bridges/ESPNowBridge.cpp>
|
|
+<../examples/simple_repeater>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
[env:Station_G2_logging_repeater]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-D ADVERT_NAME='"Station G2 Logging Repeater"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D MAX_NEIGHBOURS=50
|
|
-D MESH_PACKET_LOGGING=1
|
|
-D SX126X_RX_BOOSTED_GAIN=1
|
|
; https://wiki.uniteng.com/en/meshtastic/station-g2#impact-of-lora-node-dense-areashigh-noise-environments-on-rf-performance
|
|
; -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<../examples/simple_repeater>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
; [env:Station_G2_logging_repeater_bridge_rs232]
|
|
; extends = Station_G2
|
|
; build_flags =
|
|
; ${Station_G2.build_flags}
|
|
; -D ADVERT_NAME='"RS232 Bridge"'
|
|
; -D ADVERT_LAT=0.0
|
|
; -D ADVERT_LON=0.0
|
|
; -D ADMIN_PASSWORD='"password"'
|
|
; -D MAX_NEIGHBOURS=50
|
|
; -D MESH_PACKET_LOGGING=1
|
|
; -D SX126X_RX_BOOSTED_GAIN=1
|
|
; -D WITH_RS232_BRIDGE=Serial2
|
|
; -D WITH_RS232_BRIDGE_RX=5
|
|
; -D WITH_RS232_BRIDGE_TX=6
|
|
; -D BRIDGE_DEBUG=1
|
|
; ; -D MESH_DEBUG=1
|
|
; build_src_filter = ${Station_G2.build_src_filter}
|
|
; +<helpers/bridges/RS232Bridge.cpp>
|
|
; +<../examples/simple_repeater>
|
|
; lib_deps =
|
|
; ${Station_G2.lib_deps}
|
|
; ${esp32_ota.lib_deps}
|
|
|
|
[env:Station_G2_logging_repeater_bridge_espnow]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-D ADVERT_NAME='"ESPNow Bridge"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D MAX_NEIGHBOURS=50
|
|
-D MESH_PACKET_LOGGING=1
|
|
-D SX126X_RX_BOOSTED_GAIN=1
|
|
-D WITH_ESPNOW_BRIDGE=1
|
|
; -D BRIDGE_DEBUG=1
|
|
; -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<helpers/bridges/ESPNowBridge.cpp>
|
|
+<../examples/simple_repeater>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
[env:Station_G2_room_server]
|
|
extends = Station_G2
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<../examples/simple_room_server>
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-D ADVERT_NAME='"Station G2 Room"'
|
|
-D ADVERT_LAT=0.0
|
|
-D ADVERT_LON=0.0
|
|
-D ADMIN_PASSWORD='"password"'
|
|
-D ROOM_PASSWORD='"hello"'
|
|
; -D MESH_PACKET_LOGGING=1
|
|
; -D MESH_DEBUG=1
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
${esp32_ota.lib_deps}
|
|
|
|
[env:Station_G2_companion_radio_usb]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-I examples/companion_radio/ui-new
|
|
-D MAX_CONTACTS=350
|
|
-D MAX_GROUP_CHANNELS=40
|
|
; NOTE: DO NOT ENABLE --> -D MESH_PACKET_LOGGING=1
|
|
; NOTE: DO NOT ENABLE --> -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<helpers/esp32/*.cpp>
|
|
+<../examples/companion_radio/*.cpp>
|
|
+<../examples/companion_radio/ui-new/*.cpp>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
|
|
[env:Station_G2_companion_radio_ble]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-I examples/companion_radio/ui-new
|
|
-D MAX_CONTACTS=350
|
|
-D MAX_GROUP_CHANNELS=40
|
|
-D BLE_PIN_CODE=123456
|
|
-D BLE_DEBUG_LOGGING=1
|
|
-D OFFLINE_QUEUE_SIZE=256
|
|
; -D MESH_PACKET_LOGGING=1
|
|
; -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<helpers/esp32/*.cpp>
|
|
+<../examples/companion_radio/*.cpp>
|
|
+<../examples/companion_radio/ui-new/*.cpp>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|
|
|
|
[env:Station_G2_companion_radio_wifi]
|
|
extends = Station_G2
|
|
build_flags =
|
|
${Station_G2.build_flags}
|
|
-I examples/companion_radio/ui-new
|
|
-D MAX_CONTACTS=350
|
|
-D MAX_GROUP_CHANNELS=40
|
|
-D WIFI_DEBUG_LOGGING=1
|
|
-D WIFI_SSID='"myssid"'
|
|
-D WIFI_PWD='"mypwd"'
|
|
-D OFFLINE_QUEUE_SIZE=256
|
|
; -D MESH_PACKET_LOGGING=1
|
|
; -D MESH_DEBUG=1
|
|
build_src_filter = ${Station_G2.build_src_filter}
|
|
+<helpers/esp32/*.cpp>
|
|
+<../examples/companion_radio/*.cpp>
|
|
+<../examples/companion_radio/ui-new/*.cpp>
|
|
lib_deps =
|
|
${Station_G2.lib_deps}
|
|
densaugeo/base64 @ ~1.4.0
|