Files
Ben Meadors f6f116a39d Fill in device registry metadata for recently added hardware (#11567)
Audit of the custom_meshtastic_* manifest on the variants backing the
newest boards, against the protobuf HardwareModel enum, the compiled
HW_VENDOR, the board flash size and the artwork actually published by
the web flasher. No support flag changes here - actively_supported is
left exactly as each variant already had it.

ThinkNode M9 had no HW_VENDOR arm, so every M9 has been reporting
PRIVATE_HW while its manifest advertised 131; add the mapping and
rename the slug to the enum name (THINKNODE_M9) it is meant to mirror.

Seeed SenseCAP Mesh-Tracker X1 moves from the PR matrix to release, and
its images entry now points at seeed_mesh_tracker_x1.svg, which is what
the flasher actually ships - the hyphenated name resolved to nothing.

T-Beam BPF, T-Beam 1W and Heltec Wireless Tracker V2 declared the
architecture as "esp32s3"; the value is copied verbatim into the
manifest, and the flash flow matches on the normalized "esp32-s3".

T-Beam BPF and M5Stack Unit C6L both build default_16MB.csv on 16 MB
flash but declared no partition scheme, which leaves the flasher on the
4 MB fallback offsets for a legacy clean install.

Meshnology W10 and W12 gain the artwork and vendor tag that already
exist for them.
2026-08-22 14:34:49 +00:00

99 lines
2.9 KiB
INI

[thinknode_m9_base]
custom_meshtastic_hw_model = 131
custom_meshtastic_hw_model_slug = THINKNODE_M9
custom_meshtastic_architecture = esp32-s3
custom_meshtastic_actively_supported = true
custom_meshtastic_support_level = 1
custom_meshtastic_display_name = ThinkNode M9
custom_meshtastic_images = thinknode_m9.svg
custom_meshtastic_tags = Elecrow
custom_meshtastic_requires_dfu = false
custom_meshtastic_partition_scheme = 16MB
custom_meshtastic_has_mui = true
extends = esp32s3_base
board = crowpanel
board_level = release
board_build.partitions = default_16MB.csv
upload_protocol = esptool
build_src_filter =
${esp32s3_base.build_src_filter}
+<../variants/esp32s3/ELECROW-ThinkNode-M9>
build_flags =
${esp32s3_base.build_flags}
-I variants/esp32s3/ELECROW-ThinkNode-M9
-D ELECROW_ThinkNode_M9
-D BOARD_HAS_PSRAM
-D HAS_SDCARD=1
-D SDCARD_CS=48
-D SDCARD_USE_SPI1
-D SDCARD_SHARE_SPI
-D SDCARD_INIT_SPI
-D SD_SPI_FREQUENCY=75000000U
-D HAS_SCREEN=1
-D SPI_FREQUENCY=75000000
; -D COMPASS_SENSOR_DEBUG=1
lib_deps = ${esp32s3_base.lib_deps}
# renovate: datasource=custom depName=LovyanGFX packageName=lovyan03/library/LovyanGFX
lovyan03/LovyanGFX@1.2.26
# renovate: datasource=custom depName=SensorLib packageName=lewisxhe/library/SensorLib
lewisxhe/SensorLib@0.4.1
[env:thinknode_m9]
extends = thinknode_m9_base
build_flags =
${thinknode_m9_base.build_flags}
[env:thinknode_m9-tft]
extends = thinknode_m9_base
build_flags =
${thinknode_m9_base.build_flags}
-D RADIOLIB_SPI_PARANOID=0
-D CONFIG_DISABLE_HAL_LOCKS=1
-D HAS_TFT=1
-D USE_PACKET_API
-D USE_PIN_BUZZER=PIN_BUZZER
-D LV_LVGL_H_INCLUDE_SIMPLE
-D LV_CONF_INCLUDE_SIMPLE
-D LV_COMP_CONF_INCLUDE_SIMPLE
-D LV_USE_SYSMON=0
-D LV_USE_PROFILER=0
-D LV_USE_PERF_MONITOR=0
-D LV_USE_MEM_MONITOR=0
-D LV_USE_LOG=0
-D LV_BUILD_TEST=0
-D USE_LOG_DEBUG
-D LOG_DEBUG_INC=\"DebugConfiguration.h\"
-D RAM_SIZE=5120
-D LGFX_BUFSIZE=153600
-D LGFX_DRIVER_TEMPLATE
-D DISPLAY_SIZE=320x240
-D LGFX_DRIVER=LGFX_GENERIC
-D GFX_DRIVER_INC=\"graphics/LGFX/LGFX_GENERIC.h\"
-D VIEW_320x240
-D LGFX_PANEL=ST7789
-D LGFX_ROTATION=3
-D LGFX_CFG_HOST=SPI3_HOST
-D LGFX_PIN_SCK=40
-D LGFX_PIN_MOSI=47
-D LGFX_PIN_DC=15
-D LGFX_PIN_CS=16
-D LGFX_PIN_BL=17
-D LGFX_PIN_RST=14
-D LGFX_SCREEN_WIDTH=240
-D LGFX_SCREEN_HEIGHT=320
-D LGFX_INVERT_LIGHT=true
; -D MAP_FULL_REDRAW
-D MUI_WIFI_PS_MIN_MODEM
-D DEFAULT_FTP_SERVER_NETWORK_TYPE_ESP32=NETWORK_ESP32
-D DEFAULT_STORAGE_TYPE_ESP32=STORAGE_SD
-D CHARGING_VOLTAGE=4.25
lib_deps =
${thinknode_m9_base.lib_deps}
https://github.com/meshtastic/device-ui/archive/e8a5ff337d1ead20b290307fb2159ad27fe47f86.zip ; PR314 input-policy
https://github.com/mverch67/MultiFTPServer/archive/0e854335b9916ed9f2d3bcfe68975ce746992ccd.zip
custom_sdkconfig =
${esp32s3_base.custom_sdkconfig}
${device-ui_base.custom_sdkconfig}