diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 0960d45c4..d5c8b93cb 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -557,8 +557,9 @@ pio run -e native-macos # Build headless macOS meshtasticd (Homebrew prere 1. Create directory under `variants///` 2. Add `variant.h` with pin definitions and hardware capability defines 3. Add `platformio.ini` with build config - use `extends` to reference common base (e.g., `esp32s3_base`) -4. Set `custom_meshtastic_support_level = 1` (PR builds) or `2` (merge builds) -5. For e-ink displays, add `nicheGraphics.h` for InkHUD configuration +4. Set `board_level` (required - `release` for a normal variant; see "Build Matrix Generation") +5. Set `custom_meshtastic_support_level` (1-3) and the other `custom_meshtastic_*` metadata +6. For e-ink displays, add `nicheGraphics.h` for InkHUD configuration ### Adding a New Telemetry Sensor @@ -642,11 +643,16 @@ The CI uses `bin/generate_ci_matrix.py` to dynamically select which targets to b ./bin/generate_ci_matrix.py all --level pr ``` -Variants can specify their support level in `platformio.ini`: +Every variant env **must** declare a `board_level` in its `platformio.ini`; the matrix +generator exits non-zero if any env is missing it or uses an unrecognized value: -- `custom_meshtastic_support_level = 1` - Actively supported, built on every PR -- `custom_meshtastic_support_level = 2` - Supported, built on merge to main branches -- `board_level = extra` - Extra builds, only on full releases +- `board_level = pr` - Smallest subset, built on every PR (and in every larger matrix) +- `board_level = release` - The full release matrix, built on push / schedule / `workflow_dispatch` +- `board_level = extra` - Opt-in only, built when explicitly requested via `--level extra` + +`custom_meshtastic_support_level` (1-3) is **not** part of this filtering. It is variant +metadata that `bin/platformio-custom.py` emits as `supportLevel` in the generated +hardware list; changing it does not change which targets CI builds. ### Running Workflows Locally diff --git a/bin/generate_ci_matrix.py b/bin/generate_ci_matrix.py index 1458e4390..cb19fd1b6 100755 --- a/bin/generate_ci_matrix.py +++ b/bin/generate_ci_matrix.py @@ -5,8 +5,15 @@ import argparse import json import re + from platformio.project.config import ProjectConfig +# Every variant env must declare one of these as its 'board_level': +# pr - smallest subset, built on every PR (and in every larger matrix) +# release - the full release matrix, built on push / schedule / workflow_dispatch +# extra - opt-in only, built when explicitly requested via '--level extra' +BOARD_LEVELS = ("pr", "release", "extra") + parser = argparse.ArgumentParser(description="Generate the CI matrix") parser.add_argument("platform", help="Platform to build for") parser.add_argument( @@ -14,7 +21,7 @@ parser.add_argument( choices=["extra", "pr"], nargs="*", default=[], - help="Board level to build for (omit for full release boards)", + help="Board level to build for (omit for the 'pr' + 'release' matrix)", ) args = parser.parse_args() @@ -39,10 +46,20 @@ for pio_env in pio_envs: if not env_platform: print(f"Error: Could not determine platform for environment '{pio_env}'") exit(1) + board_level = cfg.get(f"env:{pio_env}", "board_level", default=None) + # Intentionally fail on a missing or unrecognized level: every env must opt in + # explicitly, so a new variant can't silently drop out of (or into) the matrix. + if board_level not in BOARD_LEVELS: + found = f"'{board_level}'" if board_level else "no value" + print( + f"Error: environment '{pio_env}' has {found} for 'board_level'; " + f"expected one of: {', '.join(BOARD_LEVELS)}" + ) + exit(1) # Store env details as a dictionary, and add to 'all_envs' list env = { "ci": {"board": pio_env, "platform": env_platform}, - "board_level": cfg.get(f"env:{pio_env}", "board_level", default=None), + "board_level": board_level, "board_check": cfg.get(f"env:{pio_env}", "board_check", default="false").strip().lower() == "true", } all_envs.append(env) @@ -52,10 +69,8 @@ for pio_env in pio_envs: if "check" in args.platform: for env in all_envs: if env["board_check"]: - if "pr" in args.level: - if env["board_level"] == "pr": - outlist.append(env["ci"]) - else: + # '--level pr' narrows to the PR subset; otherwise check every level + if "pr" not in args.level or env["board_level"] == "pr": outlist.append(env["ci"]) # Filter (non-check) builds by platform else: @@ -67,8 +82,8 @@ else: # Include board_level = 'extra' when requested elif "extra" in args.level and env["board_level"] == "extra": outlist.append(env["ci"]) - # If no board level is specified, include in release builds (not PR) - elif "pr" not in args.level and not env["board_level"]: + # Include board_level = 'release' unless narrowed to the PR subset + elif "pr" not in args.level and env["board_level"] == "release": outlist.append(env["ci"]) # Return as a JSON list diff --git a/variants/esp32/chatter2/platformio.ini b/variants/esp32/chatter2/platformio.ini index 6913c2122..4873b7f6d 100644 --- a/variants/esp32/chatter2/platformio.ini +++ b/variants/esp32/chatter2/platformio.ini @@ -1,6 +1,7 @@ ; CircuitMess Chatter 2 based on ESP32-WROOM-32 (38 pins) devkit & DeeamLNK DL-LLCC68 or Heltec HT RA62 SX1262/SX1268 module [env:chatter2] extends = esp32_base +board_level = release board = esp32doit-devkit-v1 build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/diy/hydra/platformio.ini b/variants/esp32/diy/hydra/platformio.ini index 3afd17e01..0d4377300 100644 --- a/variants/esp32/diy/hydra/platformio.ini +++ b/variants/esp32/diy/hydra/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_display_name = Hydra custom_meshtastic_tags = DIY extends = esp32_base +board_level = release board = esp32doit-devkit-v1 build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/diy/v1/platformio.ini b/variants/esp32/diy/v1/platformio.ini index 3d31fc24a..1d1fcebfa 100644 --- a/variants/esp32/diy/v1/platformio.ini +++ b/variants/esp32/diy/v1/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = diy.svg custom_meshtastic_tags = DIY extends = esp32_base +board_level = release board = esp32doit-devkit-v1 board_check = true build_flags = diff --git a/variants/esp32/m5stack_core/platformio.ini b/variants/esp32/m5stack_core/platformio.ini index fbdbada5e..edb0a48b9 100644 --- a/variants/esp32/m5stack_core/platformio.ini +++ b/variants/esp32/m5stack_core/platformio.ini @@ -8,6 +8,7 @@ custom_meshtastic_display_name = M5 Stack custom_meshtastic_tags = M5Stack extends = esp32_base +board_level = release board = m5stack-core-esp32 monitor_filters = esp32_exception_decoder build_src_filter = diff --git a/variants/esp32/m5stack_coreink/platformio.ini b/variants/esp32/m5stack_coreink/platformio.ini index 70ada7bf3..a68daab69 100644 --- a/variants/esp32/m5stack_coreink/platformio.ini +++ b/variants/esp32/m5stack_coreink/platformio.ini @@ -1,5 +1,6 @@ [env:m5stack-coreink] extends = esp32_base +board_level = release board = m5stack-coreink board_check = true build_src_filter = diff --git a/variants/esp32/nano-g1-explorer/platformio.ini b/variants/esp32/nano-g1-explorer/platformio.ini index 6f57897a8..a2f73c515 100644 --- a/variants/esp32/nano-g1-explorer/platformio.ini +++ b/variants/esp32/nano-g1-explorer/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_display_name = Nano G1 Explorer custom_meshtastic_tags = B&Q extends = esp32_base +board_level = release board = ttgo-tbeam build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/nano-g1/platformio.ini b/variants/esp32/nano-g1/platformio.ini index 82d0f5e73..1db376357 100644 --- a/variants/esp32/nano-g1/platformio.ini +++ b/variants/esp32/nano-g1/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_display_name = Nano G1 custom_meshtastic_tags = B&Q extends = esp32_base +board_level = release board = ttgo-tbeam build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/radiomaster_900_bandit/platformio.ini b/variants/esp32/radiomaster_900_bandit/platformio.ini index fdc483fe3..bad7dc299 100644 --- a/variants/esp32/radiomaster_900_bandit/platformio.ini +++ b/variants/esp32/radiomaster_900_bandit/platformio.ini @@ -1,5 +1,6 @@ [env:radiomaster_900_bandit] extends = esp32_base +board_level = release board = esp32doit-devkit-v1 build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/radiomaster_900_bandit_micro/platformio.ini b/variants/esp32/radiomaster_900_bandit_micro/platformio.ini index 32e9280e1..b8585ab5b 100644 --- a/variants/esp32/radiomaster_900_bandit_micro/platformio.ini +++ b/variants/esp32/radiomaster_900_bandit_micro/platformio.ini @@ -5,6 +5,7 @@ ; [env:radiomaster_900_bandit_micro] extends = esp32_base +board_level = release board = esp32doit-devkit-v1 build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/radiomaster_900_bandit_nano/platformio.ini b/variants/esp32/radiomaster_900_bandit_nano/platformio.ini index 924447ee4..de11d1116 100644 --- a/variants/esp32/radiomaster_900_bandit_nano/platformio.ini +++ b/variants/esp32/radiomaster_900_bandit_nano/platformio.ini @@ -8,6 +8,7 @@ custom_meshtastic_display_name = RadioMaster 900 Bandit Nano custom_meshtastic_tags = RadioMaster extends = esp32_base +board_level = release board = esp32doit-devkit-v1 build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/rak11200/platformio.ini b/variants/esp32/rak11200/platformio.ini index ee704a23e..8d2416000 100644 --- a/variants/esp32/rak11200/platformio.ini +++ b/variants/esp32/rak11200/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_images = rak11200.svg custom_meshtastic_tags = RAK extends = esp32_base +board_level = release board = wiscore_rak11200 board_check = true build_flags = diff --git a/variants/esp32/station-g1/platformio.ini b/variants/esp32/station-g1/platformio.ini index 20e29764c..dc665f58e 100644 --- a/variants/esp32/station-g1/platformio.ini +++ b/variants/esp32/station-g1/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_display_name = Station G1 custom_meshtastic_tags = B&Q extends = esp32_base +board_level = release board = ttgo-tbeam build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32/tbeam/platformio.ini b/variants/esp32/tbeam/platformio.ini index b1367df87..f1d9ad465 100644 --- a/variants/esp32/tbeam/platformio.ini +++ b/variants/esp32/tbeam/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = tbeam.svg custom_meshtastic_tags = LilyGo extends = esp32_base +board_level = release board = ttgo-tbeam board_check = true diff --git a/variants/esp32/tlora_v2_1_16/platformio.ini b/variants/esp32/tlora_v2_1_16/platformio.ini index a41c5016e..529ad5783 100644 --- a/variants/esp32/tlora_v2_1_16/platformio.ini +++ b/variants/esp32/tlora_v2_1_16/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_images = tlora-v2-1-1_6.svg custom_meshtastic_tags = LilyGo extends = esp32_base +board_level = release board = ttgo-lora32-v21 board_check = true build_flags = diff --git a/variants/esp32/tlora_v3_3_0_tcxo/platformio.ini b/variants/esp32/tlora_v3_3_0_tcxo/platformio.ini index d3669ce55..7c58a16e4 100644 --- a/variants/esp32/tlora_v3_3_0_tcxo/platformio.ini +++ b/variants/esp32/tlora_v3_3_0_tcxo/platformio.ini @@ -1,5 +1,6 @@ [env:tlora-v3-3-0-tcxo] extends = esp32_base +board_level = release board = ttgo-lora32-v21 build_flags = ${esp32_base.build_flags} diff --git a/variants/esp32c3/heltec_hru_3601/platformio.ini b/variants/esp32c3/heltec_hru_3601/platformio.ini index 5eb1c9977..256b5acef 100644 --- a/variants/esp32c3/heltec_hru_3601/platformio.ini +++ b/variants/esp32c3/heltec_hru_3601/platformio.ini @@ -1,5 +1,6 @@ [env:heltec-hru-3601] extends = esp32c3_base +board_level = release board = adafruit_qtpy_esp32c3 build_flags = ${esp32c3_base.build_flags} diff --git a/variants/esp32c6/m5stack_unitc6l/platformio.ini b/variants/esp32c6/m5stack_unitc6l/platformio.ini index 59eca377b..e99c806e8 100644 --- a/variants/esp32c6/m5stack_unitc6l/platformio.ini +++ b/variants/esp32c6/m5stack_unitc6l/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_images = m5_c6l.svg custom_meshtastic_tags = M5Stack extends = esp32c6_base +board_level = release board = esp32-c6-devkitc-1 board_upload.flash_size = 16MB board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/CDEBYTE_EoRa-S3/platformio.ini b/variants/esp32s3/CDEBYTE_EoRa-S3/platformio.ini index 092b36a2f..6b3515d52 100644 --- a/variants/esp32s3/CDEBYTE_EoRa-S3/platformio.ini +++ b/variants/esp32s3/CDEBYTE_EoRa-S3/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_tags = EByte custom_meshtastic_requires_dfu = true extends = esp32s3_base +board_level = release board = CDEBYTE_EoRa-S3 build_flags = ${esp32s3_base.build_flags} diff --git a/variants/esp32s3/ELECROW-ThinkNode-G3/platformio.ini b/variants/esp32s3/ELECROW-ThinkNode-G3/platformio.ini index 9c0a492eb..f3d5e0f3b 100644 --- a/variants/esp32s3/ELECROW-ThinkNode-G3/platformio.ini +++ b/variants/esp32s3/ELECROW-ThinkNode-G3/platformio.ini @@ -1,5 +1,6 @@ [env:thinknode_g3] extends = esp32s3_base +board_level = release board = ESP32-S3-WROOM-1-N4 board_build.psram_type = opi diff --git a/variants/esp32s3/ELECROW-ThinkNode-M2/platformio.ini b/variants/esp32s3/ELECROW-ThinkNode-M2/platformio.ini index cfea4c1c0..b1fd87a35 100644 --- a/variants/esp32s3/ELECROW-ThinkNode-M2/platformio.ini +++ b/variants/esp32s3/ELECROW-ThinkNode-M2/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = Elecrow custom_meshtastic_requires_dfu = false extends = esp32s3_base +board_level = release board = ESP32-S3-WROOM-1-N4 build_flags = ${esp32s3_base.build_flags} diff --git a/variants/esp32s3/ELECROW-ThinkNode-M5/platformio.ini b/variants/esp32s3/ELECROW-ThinkNode-M5/platformio.ini index 9f8c3a871..17e2b6882 100644 --- a/variants/esp32s3/ELECROW-ThinkNode-M5/platformio.ini +++ b/variants/esp32s3/ELECROW-ThinkNode-M5/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = Elecrow custom_meshtastic_requires_dfu = false extends = esp32s3_base +board_level = release board = ESP32-S3-WROOM-1-N4 build_src_filter = ${esp32s3_base.build_src_filter} diff --git a/variants/esp32s3/elecrow_panel/platformio.ini b/variants/esp32s3/elecrow_panel/platformio.ini index b0fc4bcf0..cbe5059bd 100644 --- a/variants/esp32s3/elecrow_panel/platformio.ini +++ b/variants/esp32s3/elecrow_panel/platformio.ini @@ -91,6 +91,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = crowpanel_small_esp32s3_base +board_level = release build_flags = ${crowpanel_small_esp32s3_base.build_flags} -D SPI_FREQUENCY=80000000 @@ -127,6 +128,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = crowpanel_small_esp32s3_base +board_level = release build_flags = ${crowpanel_small_esp32s3_base.build_flags} -D LV_CACHE_DEF_SIZE=2097152 @@ -166,6 +168,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = crowpanel_large_esp32s3_base +board_level = release build_flags = ${crowpanel_large_esp32s3_base.build_flags} -D VIEW_320x240 diff --git a/variants/esp32s3/hackaday-communicator/platformio.ini b/variants/esp32s3/hackaday-communicator/platformio.ini index cee393e48..5259045c7 100644 --- a/variants/esp32s3/hackaday-communicator/platformio.ini +++ b/variants/esp32s3/hackaday-communicator/platformio.ini @@ -1,6 +1,7 @@ ; Hackaday Communicator [env:hackaday-communicator] extends = esp32s3_base +board_level = release board = hackaday-communicator board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/heltec_capsule_sensor_v3/platformio.ini b/variants/esp32s3/heltec_capsule_sensor_v3/platformio.ini index 0bb21581a..79bd64bf6 100644 --- a/variants/esp32s3/heltec_capsule_sensor_v3/platformio.ini +++ b/variants/esp32s3/heltec_capsule_sensor_v3/platformio.ini @@ -1,5 +1,6 @@ [env:heltec_capsule_sensor_v3] extends = esp32s3_base +board_level = release board = heltec_wifi_lora_32_V3 board_check = true board_build.partitions = default_8MB.csv diff --git a/variants/esp32s3/heltec_sensor_hub/platformio.ini b/variants/esp32s3/heltec_sensor_hub/platformio.ini index ab99e51ed..83b4e1565 100644 --- a/variants/esp32s3/heltec_sensor_hub/platformio.ini +++ b/variants/esp32s3/heltec_sensor_hub/platformio.ini @@ -1,5 +1,6 @@ [env:heltec_sensor_hub] extends = esp32s3_base +board_level = release board = heltec_wifi_lora_32_V3 board_check = true diff --git a/variants/esp32s3/heltec_v4/platformio.ini b/variants/esp32s3/heltec_v4/platformio.ini index 1cfe1ed14..06434a73b 100644 --- a/variants/esp32s3/heltec_v4/platformio.ini +++ b/variants/esp32s3/heltec_v4/platformio.ini @@ -24,6 +24,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = heltec_v4_base +board_level = release build_flags = ${heltec_v4_base.build_flags} -D HELTEC_V4_OLED @@ -48,6 +49,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = heltec_v4_base +board_level = release build_flags = ${heltec_v4_base.build_flags} ;-Os -D HELTEC_V4_TFT diff --git a/variants/esp32s3/heltec_v4_r8/platformio.ini b/variants/esp32s3/heltec_v4_r8/platformio.ini index bb3ee2ee3..f0437f5aa 100644 --- a/variants/esp32s3/heltec_v4_r8/platformio.ini +++ b/variants/esp32s3/heltec_v4_r8/platformio.ini @@ -24,6 +24,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = heltec_v4_r8_base +board_level = release build_flags = ${heltec_v4_r8_base.build_flags} -D HELTEC_V4_R8_OLED @@ -46,6 +47,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = heltec_v4_r8_base +board_level = release build_flags = ${heltec_v4_r8_base.build_flags} ;-Os -D HELTEC_V4_R8_TFT diff --git a/variants/esp32s3/heltec_vision_master_e213/platformio.ini b/variants/esp32s3/heltec_vision_master_e213/platformio.ini index fb97fd983..f8045cf84 100644 --- a/variants/esp32s3/heltec_vision_master_e213/platformio.ini +++ b/variants/esp32s3/heltec_vision_master_e213/platformio.ini @@ -12,6 +12,7 @@ custom_meshtastic_partition_scheme = 8MB custom_meshtastic_has_ink_hud = true extends = esp32s3_base +board_level = release board = heltec_vision_master_e213 board_build.partitions = default_8MB.csv build_flags = diff --git a/variants/esp32s3/heltec_vision_master_e290/platformio.ini b/variants/esp32s3/heltec_vision_master_e290/platformio.ini index 9fdb023de..a05bde7b8 100644 --- a/variants/esp32s3/heltec_vision_master_e290/platformio.ini +++ b/variants/esp32s3/heltec_vision_master_e290/platformio.ini @@ -13,6 +13,7 @@ custom_meshtastic_partition_scheme = 8MB custom_meshtastic_has_ink_hud = true extends = esp32s3_base +board_level = release board = heltec_vision_master_e290 board_build.partitions = default_8MB.csv build_flags = @@ -38,6 +39,7 @@ upload_speed = 115200 [env:heltec-vision-master-e290-inkhud] extends = esp32s3_base, inkhud +board_level = release board = heltec_vision_master_e290 board_build.partitions = default_8MB.csv build_src_filter = diff --git a/variants/esp32s3/heltec_vision_master_t190/platformio.ini b/variants/esp32s3/heltec_vision_master_t190/platformio.ini index af3fe25f8..fdb508be6 100644 --- a/variants/esp32s3/heltec_vision_master_t190/platformio.ini +++ b/variants/esp32s3/heltec_vision_master_t190/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = heltec_vision_master_t190 board_build.partitions = default_8MB.csv build_flags = diff --git a/variants/esp32s3/heltec_wireless_paper/platformio.ini b/variants/esp32s3/heltec_wireless_paper/platformio.ini index acd619c48..63ca29ea8 100644 --- a/variants/esp32s3/heltec_wireless_paper/platformio.ini +++ b/variants/esp32s3/heltec_wireless_paper/platformio.ini @@ -12,6 +12,7 @@ custom_meshtastic_partition_scheme = 8MB custom_meshtastic_has_ink_hud = true extends = esp32s3_base +board_level = release board = heltec_wifi_lora_32_V3 board_build.partitions = default_8MB.csv build_flags = @@ -35,6 +36,7 @@ upload_speed = 115200 [env:heltec-wireless-paper-inkhud] extends = esp32s3_base, inkhud +board_level = release board = heltec_wifi_lora_32_V3 board_build.partitions = default_8MB.csv build_src_filter = diff --git a/variants/esp32s3/heltec_wireless_tracker/platformio.ini b/variants/esp32s3/heltec_wireless_tracker/platformio.ini index e835b9435..596a09f70 100644 --- a/variants/esp32s3/heltec_wireless_tracker/platformio.ini +++ b/variants/esp32s3/heltec_wireless_tracker/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = heltec_wireless_tracker board_build.partitions = default_8MB.csv upload_protocol = esptool diff --git a/variants/esp32s3/heltec_wireless_tracker_v2/platformio.ini b/variants/esp32s3/heltec_wireless_tracker_v2/platformio.ini index 831f0ca79..210cd47fc 100644 --- a/variants/esp32s3/heltec_wireless_tracker_v2/platformio.ini +++ b/variants/esp32s3/heltec_wireless_tracker_v2/platformio.ini @@ -4,6 +4,7 @@ custom_meshtastic_images = heltec_wireless_tracker_v2.svg custom_meshtastic_tags = Heltec extends = esp32s3_base +board_level = release board = heltec_wireless_tracker_v2 board_build.partitions = default_8MB.csv upload_protocol = esptool diff --git a/variants/esp32s3/heltec_wsl_v3/platformio.ini b/variants/esp32s3/heltec_wsl_v3/platformio.ini index 0903a6bc7..96c3fd045 100644 --- a/variants/esp32s3/heltec_wsl_v3/platformio.ini +++ b/variants/esp32s3/heltec_wsl_v3/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = Heltec custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = heltec_wifi_lora_32_V3 board_build.partitions = default_8MB.csv # Temporary until espressif creates a release with this new target diff --git a/variants/esp32s3/m5stack_cardputer_adv/platformio.ini b/variants/esp32s3/m5stack_cardputer_adv/platformio.ini index d6d91d4c1..a0e42eae4 100644 --- a/variants/esp32s3/m5stack_cardputer_adv/platformio.ini +++ b/variants/esp32s3/m5stack_cardputer_adv/platformio.ini @@ -1,6 +1,7 @@ ; M5stack Cardputer Advanced [env:m5stack-cardputer-adv] extends = esp32s3_base +board_level = release board = m5stack-stamps3 board_check = true board_build.partitions = default_8MB.csv diff --git a/variants/esp32s3/m5stack_cores3/platformio.ini b/variants/esp32s3/m5stack_cores3/platformio.ini index 6ad09a8bf..f18d00231 100644 --- a/variants/esp32s3/m5stack_cores3/platformio.ini +++ b/variants/esp32s3/m5stack_cores3/platformio.ini @@ -1,6 +1,7 @@ ; M5stack CoreS3 [env:m5stack-cores3] extends = esp32s3_base +board_level = release board = m5stack-cores3 board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/meshnology-w10/platformio.ini b/variants/esp32s3/meshnology-w10/platformio.ini index cee86421c..bf6692162 100644 --- a/variants/esp32s3/meshnology-w10/platformio.ini +++ b/variants/esp32s3/meshnology-w10/platformio.ini @@ -17,6 +17,7 @@ board_build.psram_type = opi board_build.arduino.memory_type = qio_opi extends = esp32s3_base +board_level = release build_flags = ${esp32s3_base.build_flags} -D MESHNOLOGY_W10 diff --git a/variants/esp32s3/meshnology-w12/platformio.ini b/variants/esp32s3/meshnology-w12/platformio.ini index 2942abc13..a43a490f9 100644 --- a/variants/esp32s3/meshnology-w12/platformio.ini +++ b/variants/esp32s3/meshnology-w12/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = esp32s3_base +board_level = release board = esp32-s3-devkitc-1 ; ESP32-S3R8: 8 MB OPI PSRAM, 16 MB QIO flash board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/mini-epaper-s3/platformio.ini b/variants/esp32s3/mini-epaper-s3/platformio.ini index 3e4802319..ea6c331e2 100644 --- a/variants/esp32s3/mini-epaper-s3/platformio.ini +++ b/variants/esp32s3/mini-epaper-s3/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = no custom_meshtastic_has_mui = false extends = esp32s3_base +board_level = release board = mini-epaper-s3 board_check = true upload_protocol = esptool @@ -37,6 +38,7 @@ lib_deps = [env:mini-epaper-s3-inkhud] extends = esp32s3_base, inkhud +board_level = release board = mini-epaper-s3 board_check = true upload_protocol = esptool diff --git a/variants/esp32s3/picomputer-s3/platformio.ini b/variants/esp32s3/picomputer-s3/platformio.ini index ed200077e..4e632bbd2 100644 --- a/variants/esp32s3/picomputer-s3/platformio.ini +++ b/variants/esp32s3/picomputer-s3/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_partition_scheme = 8MB custom_meshtastic_has_mui = true extends = esp32s3_base +board_level = release board = bpi_picow_esp32_s3 board_check = true board_build.partitions = partition-table-8MB.csv @@ -33,6 +34,7 @@ build_src_filter = [env:picomputer-s3-tft] extends = env:picomputer-s3 +board_level = release build_flags = ${env:picomputer-s3.build_flags} diff --git a/variants/esp32s3/rak3312/platformio.ini b/variants/esp32s3/rak3312/platformio.ini index fa097c897..2ebf87cb1 100644 --- a/variants/esp32s3/rak3312/platformio.ini +++ b/variants/esp32s3/rak3312/platformio.ini @@ -12,6 +12,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = false extends = esp32s3_base +board_level = release board = wiscore_rak3312 board_check = true upload_protocol = esptool diff --git a/variants/esp32s3/rak_wismesh_tap_v2/platformio.ini b/variants/esp32s3/rak_wismesh_tap_v2/platformio.ini index 00afff511..871c0f4d4 100644 --- a/variants/esp32s3/rak_wismesh_tap_v2/platformio.ini +++ b/variants/esp32s3/rak_wismesh_tap_v2/platformio.ini @@ -23,6 +23,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = esp32s3_base +board_level = release board = wiscore_rak3312 board_check = true upload_protocol = esptool @@ -41,6 +42,7 @@ lib_deps = [env:rak_wismesh_tap_v2-tft] extends = env:rak_wismesh_tap_v2 +board_level = release ; The MUI build overflows default_8MB.csv's 0x330000 app slots; use the MUI ; layout (large app0 + small flasher slot) like the other has_mui 8MB boards. board_build.partitions = partition-table-8MB.csv diff --git a/variants/esp32s3/seeed-sensecap-indicator/platformio.ini b/variants/esp32s3/seeed-sensecap-indicator/platformio.ini index 9ffb42f47..4c5d4c4d6 100644 --- a/variants/esp32s3/seeed-sensecap-indicator/platformio.ini +++ b/variants/esp32s3/seeed-sensecap-indicator/platformio.ini @@ -12,6 +12,7 @@ custom_meshtastic_partition_scheme = 8MB custom_meshtastic_has_mui = true extends = esp32s3_base +board_level = release platform_packages = ; Version needs to match the pioarduino version used in esp32_common.ini platformio/framework-arduinoespressif32 @ https://github.com/mverch67/arduino-esp32#6dde0f3b58e32d9f884b94b4685b0f3a267c4624 ; 3.3.11 diff --git a/variants/esp32s3/seeed_xiao_s3/platformio.ini b/variants/esp32s3/seeed_xiao_s3/platformio.ini index 85f2c1b9b..2a0e0f0e8 100644 --- a/variants/esp32s3/seeed_xiao_s3/platformio.ini +++ b/variants/esp32s3/seeed_xiao_s3/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = seeed-xiao-s3 board_check = true board_build.partitions = default_8MB.csv diff --git a/variants/esp32s3/station-g2/platformio.ini b/variants/esp32s3/station-g2/platformio.ini index c874ce862..ab94cc6cd 100755 --- a/variants/esp32s3/station-g2/platformio.ini +++ b/variants/esp32s3/station-g2/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = esp32s3_base +board_level = release board = station-g2 board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/station-g3/platformio.ini b/variants/esp32s3/station-g3/platformio.ini index ee5ee307e..910e70ae1 100644 --- a/variants/esp32s3/station-g3/platformio.ini +++ b/variants/esp32s3/station-g3/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = esp32s3_base +board_level = release board = station-g3 board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/t-beam-1w/platformio.ini b/variants/esp32s3/t-beam-1w/platformio.ini index b14f2fe3c..aef36a854 100644 --- a/variants/esp32s3/t-beam-1w/platformio.ini +++ b/variants/esp32s3/t-beam-1w/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = LilyGo custom_meshtastic_has_mui = false extends = esp32s3_base +board_level = release board = t-beam-1w board_build.partitions = default_8MB.csv board_check = true diff --git a/variants/esp32s3/t-beam-bpf/platformio.ini b/variants/esp32s3/t-beam-bpf/platformio.ini index ef12d0ba8..291ddde7b 100644 --- a/variants/esp32s3/t-beam-bpf/platformio.ini +++ b/variants/esp32s3/t-beam-bpf/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = tbeam-1w.svg custom_meshtastic_tags = LilyGo extends = esp32s3_base +board_level = release board = t-beam-bpf board_build.partitions = default_16MB.csv board_check = true diff --git a/variants/esp32s3/t-deck-pro-v1_1/platformio.ini b/variants/esp32s3/t-deck-pro-v1_1/platformio.ini index 22432d769..d7b5a3b3e 100644 --- a/variants/esp32s3/t-deck-pro-v1_1/platformio.ini +++ b/variants/esp32s3/t-deck-pro-v1_1/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 16MB extends = esp32s3_base +board_level = release board = t-deck-pro board_check = true upload_protocol = esptool diff --git a/variants/esp32s3/t-deck-pro/platformio.ini b/variants/esp32s3/t-deck-pro/platformio.ini index d1a2398a4..f1a5c850b 100644 --- a/variants/esp32s3/t-deck-pro/platformio.ini +++ b/variants/esp32s3/t-deck-pro/platformio.ini @@ -12,6 +12,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = false extends = esp32s3_base +board_level = release board = t-deck-pro board_check = true upload_protocol = esptool diff --git a/variants/esp32s3/t-deck/platformio.ini b/variants/esp32s3/t-deck/platformio.ini index 04efbb214..29389c829 100644 --- a/variants/esp32s3/t-deck/platformio.ini +++ b/variants/esp32s3/t-deck/platformio.ini @@ -13,6 +13,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = esp32s3_base +board_level = release board = t-deck board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/t-eth-elite/platformio.ini b/variants/esp32s3/t-eth-elite/platformio.ini index 2ed698b0d..42369a63d 100644 --- a/variants/esp32s3/t-eth-elite/platformio.ini +++ b/variants/esp32s3/t-eth-elite/platformio.ini @@ -1,5 +1,6 @@ [env:t-eth-elite] extends = esp32s3_base +board_level = release board = esp32s3box board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/t-watch-s3/platformio.ini b/variants/esp32s3/t-watch-s3/platformio.ini index 1565a3f7e..8bd212c4f 100644 --- a/variants/esp32s3/t-watch-s3/platformio.ini +++ b/variants/esp32s3/t-watch-s3/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = LilyGo custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = t-watch-s3 board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/t5s3_epaper/platformio.ini b/variants/esp32s3/t5s3_epaper/platformio.ini index 16997945f..9dd1cea71 100644 --- a/variants/esp32s3/t5s3_epaper/platformio.ini +++ b/variants/esp32s3/t5s3_epaper/platformio.ini @@ -55,6 +55,7 @@ lib_deps = [env:t5s3-epaper-v1] ; H752 extends = t5s3_epaper_base +board_level = release build_flags = ${t5s3_epaper_base.build_flags} -D T5_S3_EPAPER_PRO_V1 @@ -62,6 +63,7 @@ build_flags = [env:t5s3-epaper-v2] ; H752-01 extends = t5s3_epaper_base +board_level = release build_flags = ${t5s3_epaper_base.build_flags} -D T5_S3_EPAPER_PRO_V2 diff --git a/variants/esp32s3/tbeam-s3-core/platformio.ini b/variants/esp32s3/tbeam-s3-core/platformio.ini index 512cf3202..259960622 100644 --- a/variants/esp32s3/tbeam-s3-core/platformio.ini +++ b/variants/esp32s3/tbeam-s3-core/platformio.ini @@ -12,6 +12,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = tbeam-s3-core board_build.partitions = default_8MB.csv board_check = true diff --git a/variants/esp32s3/tlora-pager/platformio.ini b/variants/esp32s3/tlora-pager/platformio.ini index ad326220b..69acd9283 100644 --- a/variants/esp32s3/tlora-pager/platformio.ini +++ b/variants/esp32s3/tlora-pager/platformio.ini @@ -13,6 +13,7 @@ custom_meshtastic_partition_scheme = 16MB custom_meshtastic_has_mui = true extends = esp32s3_base +board_level = release board = t-deck-pro ; same as T-Deck Pro board_check = true board_build.partitions = default_16MB.csv diff --git a/variants/esp32s3/tlora_t3s3_epaper/platformio.ini b/variants/esp32s3/tlora_t3s3_epaper/platformio.ini index 93cd4d68d..8d235c957 100644 --- a/variants/esp32s3/tlora_t3s3_epaper/platformio.ini +++ b/variants/esp32s3/tlora_t3s3_epaper/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_has_ink_hud = true extends = esp32s3_base +board_level = release board = tlora-t3s3-v1 board_check = true board_build.partitions = partition-table-t3s3.csv @@ -39,6 +40,7 @@ lib_deps = [env:tlora-t3s3-epaper-inkhud] extends = esp32s3_base, inkhud +board_level = release board = tlora-t3s3-v1 board_check = true board_build.partitions = partition-table-t3s3.csv diff --git a/variants/esp32s3/tlora_t3s3_v1/platformio.ini b/variants/esp32s3/tlora_t3s3_v1/platformio.ini index 96103df82..dfe40f46e 100644 --- a/variants/esp32s3/tlora_t3s3_v1/platformio.ini +++ b/variants/esp32s3/tlora_t3s3_v1/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = LilyGo custom_meshtastic_requires_dfu = true extends = esp32s3_base +board_level = release board = tlora-t3s3-v1 board_check = true board_build.partitions = partition-table-t3s3.csv diff --git a/variants/esp32s3/tracksenger/platformio.ini b/variants/esp32s3/tracksenger/platformio.ini index 6cfe932fd..c3f2b1aac 100644 --- a/variants/esp32s3/tracksenger/platformio.ini +++ b/variants/esp32s3/tracksenger/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = heltec_wireless_tracker board_build.partitions = default_8MB.csv upload_protocol = esp-builtin @@ -35,6 +36,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = heltec_wireless_tracker board_build.partitions = default_8MB.csv upload_protocol = esp-builtin @@ -60,6 +62,7 @@ custom_meshtastic_display_name = TrackSenger (big OLED) custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = heltec_wireless_tracker board_build.partitions = default_8MB.csv upload_protocol = esp-builtin diff --git a/variants/esp32s3/unphone/platformio.ini b/variants/esp32s3/unphone/platformio.ini index 6b64bd960..edb4fa7b8 100644 --- a/variants/esp32s3/unphone/platformio.ini +++ b/variants/esp32s3/unphone/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_requires_dfu = true custom_meshtastic_partition_scheme = 8MB extends = esp32s3_base +board_level = release board = unphone board_build.partitions = partition-table-8MB.csv upload_speed = 921600 diff --git a/variants/nrf52840/ELECROW-ThinkNode-M1/platformio.ini b/variants/nrf52840/ELECROW-ThinkNode-M1/platformio.ini index c169de8f7..5c35f6310 100644 --- a/variants/nrf52840/ELECROW-ThinkNode-M1/platformio.ini +++ b/variants/nrf52840/ELECROW-ThinkNode-M1/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = Elecrow custom_meshtastic_has_ink_hud = true extends = nrf52840_base +board_level = release board = ThinkNode-M1 board_check = true debug_tool = jlink @@ -41,6 +42,7 @@ lib_deps = [env:thinknode_m1-inkhud] extends = nrf52840_base, inkhud +board_level = release board = ThinkNode-M1 board_check = true debug_tool = jlink diff --git a/variants/nrf52840/ELECROW-ThinkNode-M3/platformio.ini b/variants/nrf52840/ELECROW-ThinkNode-M3/platformio.ini index b6956c0f1..d1d665f6c 100644 --- a/variants/nrf52840/ELECROW-ThinkNode-M3/platformio.ini +++ b/variants/nrf52840/ELECROW-ThinkNode-M3/platformio.ini @@ -4,6 +4,7 @@ custom_meshtastic_images = thinknode_m3.svg custom_meshtastic_tags = Elecrow extends = nrf52840_base +board_level = release board = ThinkNode-M3 board_check = true debug_tool = jlink diff --git a/variants/nrf52840/ELECROW-ThinkNode-M4/platformio.ini b/variants/nrf52840/ELECROW-ThinkNode-M4/platformio.ini index f96e6038c..4495beba8 100644 --- a/variants/nrf52840/ELECROW-ThinkNode-M4/platformio.ini +++ b/variants/nrf52840/ELECROW-ThinkNode-M4/platformio.ini @@ -1,6 +1,7 @@ ; ThinkNode M4 - Powerbank nrf52840/LR1110 by Elecrow [env:thinknode_m4] extends = nrf52840_base +board_level = release board = ThinkNode-M4 board_check = true debug_tool = jlink diff --git a/variants/nrf52840/ELECROW-ThinkNode-M6/platformio.ini b/variants/nrf52840/ELECROW-ThinkNode-M6/platformio.ini index fa09a4463..25a58bb62 100644 --- a/variants/nrf52840/ELECROW-ThinkNode-M6/platformio.ini +++ b/variants/nrf52840/ELECROW-ThinkNode-M6/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = thinknode_m6.svg custom_meshtastic_tags = Elecrow extends = nrf52840_base +board_level = release board = ThinkNode-M6 board_check = true debug_tool = jlink diff --git a/variants/nrf52840/ELECROW-ThinkNode-M8/platformio.ini b/variants/nrf52840/ELECROW-ThinkNode-M8/platformio.ini index 6b845b2ef..e1c94381a 100644 --- a/variants/nrf52840/ELECROW-ThinkNode-M8/platformio.ini +++ b/variants/nrf52840/ELECROW-ThinkNode-M8/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_display_name = Elecrow ThinkNode M8 custom_meshtastic_actively_supported = true extends = nrf52840_base +board_level = release board = ThinkNode-M8 board_check = true debug_tool = jlink diff --git a/variants/nrf52840/canaryone/platformio.ini b/variants/nrf52840/canaryone/platformio.ini index a2cf55972..7b3678693 100644 --- a/variants/nrf52840/canaryone/platformio.ini +++ b/variants/nrf52840/canaryone/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_display_name = Canary One custom_meshtastic_tags = Canary extends = nrf52840_base +board_level = release board = canaryone debug_tool = jlink diff --git a/variants/nrf52840/diy/nrf52_promicro_diy_tcxo/platformio.ini b/variants/nrf52840/diy/nrf52_promicro_diy_tcxo/platformio.ini index 51d058bee..a72b8c61e 100644 --- a/variants/nrf52840/diy/nrf52_promicro_diy_tcxo/platformio.ini +++ b/variants/nrf52840/diy/nrf52_promicro_diy_tcxo/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = DIY custom_meshtastic_requires_dfu = true extends = nrf52840_base +board_level = release board = promicro-nrf52840 build_flags = ${nrf52840_base.build_flags} -I variants/nrf52840/diy/nrf52_promicro_diy_tcxo diff --git a/variants/nrf52840/feather_diy/platformio.ini b/variants/nrf52840/feather_diy/platformio.ini index 5540021b3..e3d28a247 100644 --- a/variants/nrf52840/feather_diy/platformio.ini +++ b/variants/nrf52840/feather_diy/platformio.ini @@ -1,6 +1,7 @@ ; The very slick RAK wireless RAK 4631 / 4630 board - Unified firmware for 5005/19003, with or without OLED RAK 1921 [env:feather_diy] extends = nrf52840_base +board_level = release board = adafruit_feather_nrf52840 build_flags = ${nrf52840_base.build_flags} -Ivariants/nrf52840/feather_diy diff --git a/variants/nrf52840/heltec_mesh_node_t096/platformio.ini b/variants/nrf52840/heltec_mesh_node_t096/platformio.ini index 98ca481c2..dcc6f77a4 100644 --- a/variants/nrf52840/heltec_mesh_node_t096/platformio.ini +++ b/variants/nrf52840/heltec_mesh_node_t096/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = heltec-mesh-node-t096.svg, heltec-mesh-node-t096-case custom_meshtastic_tags = Heltec extends = nrf52840_base +board_level = release board = heltec_mesh_node_t096 debug_tool = jlink diff --git a/variants/nrf52840/heltec_mesh_node_t1/platformio.ini b/variants/nrf52840/heltec_mesh_node_t1/platformio.ini index 154fa2f35..3ec299779 100644 --- a/variants/nrf52840/heltec_mesh_node_t1/platformio.ini +++ b/variants/nrf52840/heltec_mesh_node_t1/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = heltec-mesh-node-t1.svg custom_meshtastic_tags = Heltec extends = nrf52840_base +board_level = release board = heltec_mesh_node_t1 debug_tool = jlink diff --git a/variants/nrf52840/heltec_mesh_pocket/platformio.ini b/variants/nrf52840/heltec_mesh_pocket/platformio.ini index c9b599382..ae559128c 100644 --- a/variants/nrf52840/heltec_mesh_pocket/platformio.ini +++ b/variants/nrf52840/heltec_mesh_pocket/platformio.ini @@ -5,6 +5,7 @@ custom_meshtastic_images = heltec_mesh_pocket.svg custom_meshtastic_tags = Heltec extends = nrf52840_base +board_level = release board = heltec_mesh_pocket debug_tool = jlink custom_device_hw_model = 94 @@ -43,6 +44,7 @@ lib_deps = [env:heltec-mesh-pocket-5000-inkhud] extends = nrf52840_base, inkhud +board_level = release board = heltec_mesh_pocket custom_meshtastic_hw_model = 94 custom_meshtastic_hw_model_slug = HELTEC_MESH_POCKET @@ -70,6 +72,7 @@ custom_meshtastic_images = heltec_mesh_pocket.svg custom_meshtastic_tags = Heltec extends = nrf52840_base +board_level = release board = heltec_mesh_pocket debug_tool = jlink custom_meshtastic_hw_model = 94 @@ -107,6 +110,7 @@ lib_deps = [env:heltec-mesh-pocket-10000-inkhud] extends = nrf52840_base, inkhud +board_level = release board = heltec_mesh_pocket custom_meshtastic_hw_model = 94 custom_meshtastic_hw_model_slug = HELTEC_MESH_POCKET diff --git a/variants/nrf52840/heltec_mesh_solar/platformio.ini b/variants/nrf52840/heltec_mesh_solar/platformio.ini index 01af41a5f..62d3a972b 100644 --- a/variants/nrf52840/heltec_mesh_solar/platformio.ini +++ b/variants/nrf52840/heltec_mesh_solar/platformio.ini @@ -28,11 +28,13 @@ custom_meshtastic_images = heltec-mesh-solar.svg custom_meshtastic_tags = Heltec extends = heltec_mesh_solar_base +board_level = release build_flags = ${heltec_mesh_solar_base.build_flags} -DSPI_INTERFACES_COUNT=1 [env:heltec-mesh-solar-eink] extends = heltec_mesh_solar_base +board_level = release build_flags = ${heltec_mesh_solar_base.build_flags} -DHELTEC_MESH_SOLAR_EINK -DSPI_INTERFACES_COUNT=2 @@ -71,6 +73,7 @@ lib_deps = [env:heltec-mesh-solar-inkhud] extends = heltec_mesh_solar_base, inkhud +board_level = release build_src_filter = ${heltec_mesh_solar_base.build_src_filter} ${inkhud.build_src_filter} build_flags = ${heltec_mesh_solar_base.build_flags} ${inkhud.build_flags} @@ -92,6 +95,7 @@ lib_deps = [env:heltec-mesh-solar-oled] extends = heltec_mesh_solar_base +board_level = release build_flags = ${heltec_mesh_solar_base.build_flags} -DHELTEC_MESH_SOLAR_OLED -DSPI_INTERFACES_COUNT=1 @@ -103,6 +107,7 @@ build_flags = ${heltec_mesh_solar_base.build_flags} [env:heltec-mesh-solar-tft] extends = heltec_mesh_solar_base +board_level = release build_flags = ${heltec_mesh_solar_base.build_flags} -UOLEDDISPLAY_REDUCE_MEMORY ; TFTDisplay.cpp needs the lib's buffer_back for dirty-window diffing -DHELTEC_MESH_SOLAR_TFT diff --git a/variants/nrf52840/heltec_mesh_tower_v2/platformio.ini b/variants/nrf52840/heltec_mesh_tower_v2/platformio.ini index 9b7090677..c75c1d23f 100644 --- a/variants/nrf52840/heltec_mesh_tower_v2/platformio.ini +++ b/variants/nrf52840/heltec_mesh_tower_v2/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = heltec-mesh-tower-v2.svg custom_meshtastic_tags = Heltec extends = nrf52840_base +board_level = release board = heltec_mesh_tower_v2 debug_tool = jlink diff --git a/variants/nrf52840/muzi_base/platformio.ini b/variants/nrf52840/muzi_base/platformio.ini index 52c558ff1..90c871c20 100644 --- a/variants/nrf52840/muzi_base/platformio.ini +++ b/variants/nrf52840/muzi_base/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_images = muzi_base.svg custom_meshtastic_tags = muzi extends = nrf52840_base +board_level = release board = muzi-base build_flags = ${nrf52840_base.build_flags} -I variants/nrf52840/muzi_base diff --git a/variants/nrf52840/nano-g2-ultra/platformio.ini b/variants/nrf52840/nano-g2-ultra/platformio.ini index 7e593a49a..ae7f7599a 100644 --- a/variants/nrf52840/nano-g2-ultra/platformio.ini +++ b/variants/nrf52840/nano-g2-ultra/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = nano-g2-ultra.svg custom_meshtastic_tags = B&Q extends = nrf52840_base +board_level = release board = nano-g2-ultra debug_tool = jlink diff --git a/variants/nrf52840/r1-neo/platformio.ini b/variants/nrf52840/r1-neo/platformio.ini index 9d70d6bfd..c79650bbc 100644 --- a/variants/nrf52840/r1-neo/platformio.ini +++ b/variants/nrf52840/r1-neo/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = muzi_r1_neo.svg custom_meshtastic_tags = muzi extends = nrf52840_base +board_level = release board = r1-neo board_check = true build_flags = ${nrf52840_base.build_flags} diff --git a/variants/nrf52840/rak2560/platformio.ini b/variants/nrf52840/rak2560/platformio.ini index 54b66f4b2..797e439c6 100644 --- a/variants/nrf52840/rak2560/platformio.ini +++ b/variants/nrf52840/rak2560/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = rak2560.svg custom_meshtastic_tags = RAK extends = nrf52840_base +board_level = release board = wiscore_rak4631 board_check = true build_flags = ${nrf52840_base.build_flags} diff --git a/variants/nrf52840/rak3401_1watt/platformio.ini b/variants/nrf52840/rak3401_1watt/platformio.ini index 0220042d1..e61223f00 100644 --- a/variants/nrf52840/rak3401_1watt/platformio.ini +++ b/variants/nrf52840/rak3401_1watt/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = RAK custom_meshtastic_requires_dfu = true extends = nrf52840_base +board_level = release board = wiscore_rak4631 board_check = true build_flags = ${nrf52840_base.build_flags} @@ -39,6 +40,7 @@ lib_deps = ; RAK10729 WisMesh Repeater Mini V2 HP (RAK3401 + RAK19007 + RAK13302 + solar battery) [env:rak_wismesh_repeater_mini_hp] extends = env:rak3401-1watt +board_level = release custom_meshtastic_display_name = RAK WisMesh Repeater Mini V2 HP custom_meshtastic_images = rak3401.svg build_flags = diff --git a/variants/nrf52840/rak4631/platformio.ini b/variants/nrf52840/rak4631/platformio.ini index 12c60ffdf..b45cdab4f 100644 --- a/variants/nrf52840/rak4631/platformio.ini +++ b/variants/nrf52840/rak4631/platformio.ini @@ -47,6 +47,7 @@ lib_deps = ; RAK10728 WisMesh Repeater Mini V2 (RAK4631 + RAK19003 + solar battery + GPS module) [env:rak_wismesh_repeater_mini] extends = env:rak4631 +board_level = release custom_meshtastic_display_name = RAK WisMesh Repeater Mini V2 custom_meshtastic_images = rak4631.svg build_flags = @@ -59,6 +60,7 @@ build_flags = ; RAK WisMesh Pocket V3 - rak4631 pin map + OLED; no ethernet (unlike env:rak4631) [env:rak_wismesh_pocket] extends = env:rak4631 +board_level = release custom_meshtastic_display_name = RAK WisMesh Pocket V3 custom_meshtastic_images = rak4631.svg build_flags = diff --git a/variants/nrf52840/rak4631_epaper/platformio.ini b/variants/nrf52840/rak4631_epaper/platformio.ini index c970baddd..5548596fd 100644 --- a/variants/nrf52840/rak4631_epaper/platformio.ini +++ b/variants/nrf52840/rak4631_epaper/platformio.ini @@ -1,6 +1,7 @@ ; The very slick RAK wireless RAK 4631 / 4630 board - Firmware for 5005 with the RAK 14000 ePaper [env:rak4631_eink] extends = nrf52840_base +board_level = release board = wiscore_rak4631 build_flags = ${nrf52840_base.build_flags} -I variants/nrf52840/rak4631_epaper diff --git a/variants/nrf52840/rak4631_eth_gw/platformio.ini b/variants/nrf52840/rak4631_eth_gw/platformio.ini index eb8890e08..0509f0a1c 100644 --- a/variants/nrf52840/rak4631_eth_gw/platformio.ini +++ b/variants/nrf52840/rak4631_eth_gw/platformio.ini @@ -1,6 +1,7 @@ ; The very slick RAK wireless RAK 4631 / 4630 board - Unified firmware for 5005/19003, with or without OLED RAK 1921 [env:rak4631_eth_gw] extends = nrf52840_base +board_level = release board = wiscore_rak4631 board_check = true build_flags = ${nrf52840_base.build_flags} diff --git a/variants/nrf52840/rak4631_nomadstar_meteor_pro/platformio.ini b/variants/nrf52840/rak4631_nomadstar_meteor_pro/platformio.ini index f1641e7e4..e3c2fb018 100644 --- a/variants/nrf52840/rak4631_nomadstar_meteor_pro/platformio.ini +++ b/variants/nrf52840/rak4631_nomadstar_meteor_pro/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = meteor_pro.svg custom_meshtastic_tags = NomadStar extends = nrf52840_base +board_level = release board = wiscore_rak4631 board_check = true build_flags = ${nrf52840_base.build_flags} diff --git a/variants/nrf52840/rak_wismeshtag/platformio.ini b/variants/nrf52840/rak_wismeshtag/platformio.ini index 9e819ab91..d8c289d14 100644 --- a/variants/nrf52840/rak_wismeshtag/platformio.ini +++ b/variants/nrf52840/rak_wismeshtag/platformio.ini @@ -5,6 +5,7 @@ custom_meshtastic_images = rak_wismesh_tag.svg custom_meshtastic_tags = RAK extends = nrf52840_base +board_level = release board = wiscore_rak4631 board_check = true custom_meshtastic_hw_model = 105 @@ -26,6 +27,7 @@ build_src_filter = ${nrf52_base.build_src_filter} +<../variants/nrf52840/rak_wis ; RAK WisMesh Pod - same board as Tag (no user buttons on hardware; shares Tag pin map) [env:rak_wismesh_pod] extends = env:rak_wismeshtag +board_level = release custom_meshtastic_display_name = RAK WisMesh Pod build_flags = ${env:rak_wismeshtag.build_flags} diff --git a/variants/nrf52840/rak_wismeshtap/platformio.ini b/variants/nrf52840/rak_wismeshtap/platformio.ini index 87dd49b2c..46d6b5161 100644 --- a/variants/nrf52840/rak_wismeshtap/platformio.ini +++ b/variants/nrf52840/rak_wismeshtap/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = rak-wismeshtap.svg custom_meshtastic_tags = RAK extends = nrf52840_base +board_level = release board = wiscore_rak4631 build_flags = ${nrf52840_base.build_flags} -UOLEDDISPLAY_REDUCE_MEMORY ; TFTDisplay.cpp needs the lib's buffer_back for dirty-window diffing diff --git a/variants/nrf52840/seeed_solar_node/platformio.ini b/variants/nrf52840/seeed_solar_node/platformio.ini index 18894c049..3494193aa 100644 --- a/variants/nrf52840/seeed_solar_node/platformio.ini +++ b/variants/nrf52840/seeed_solar_node/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = Seeed board = seeed_solar_node extends = nrf52840_base +board_level = release ;board_level = extra build_flags = ${nrf52840_base.build_flags} -I variants/nrf52840/seeed_solar_node diff --git a/variants/nrf52840/seeed_wio_tracker_L1_eink/platformio.ini b/variants/nrf52840/seeed_wio_tracker_L1_eink/platformio.ini index cc746d017..587349602 100644 --- a/variants/nrf52840/seeed_wio_tracker_L1_eink/platformio.ini +++ b/variants/nrf52840/seeed_wio_tracker_L1_eink/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_has_ink_hud = true board = seeed_wio_tracker_L1 extends = nrf52840_base +board_level = release ;board_level = extra build_flags = ${nrf52840_base.build_flags} -I variants/nrf52840/seeed_wio_tracker_L1_eink @@ -41,6 +42,7 @@ debug_tool = jlink [env:seeed_wio_tracker_L1_eink-inkhud] board = seeed_wio_tracker_L1 extends = env:seeed_wio_tracker_L1_eink, inkhud +board_level = release build_flags = ${env:seeed_wio_tracker_L1_eink.build_flags} ${inkhud.build_flags} diff --git a/variants/nrf52840/seeed_xiao_nrf52840_kit/platformio.ini b/variants/nrf52840/seeed_xiao_nrf52840_kit/platformio.ini index 0fa09d407..2ea05057d 100644 --- a/variants/nrf52840/seeed_xiao_nrf52840_kit/platformio.ini +++ b/variants/nrf52840/seeed_xiao_nrf52840_kit/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = seeed_xiao_nrf52_kit.svg custom_meshtastic_tags = Seeed extends = nrf52840_base +board_level = release board = xiao_ble_sense build_flags = ${nrf52840_base.build_flags} -I variants/nrf52840/seeed_xiao_nrf52840_kit diff --git a/variants/nrf52840/t-echo-lite/platformio.ini b/variants/nrf52840/t-echo-lite/platformio.ini index 1b725815e..d0e392a9f 100644 --- a/variants/nrf52840/t-echo-lite/platformio.ini +++ b/variants/nrf52840/t-echo-lite/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_images = techo_lite.svg custom_meshtastic_tags = LilyGo extends = nrf52840_base +board_level = release board = t-echo board_check = true debug_tool = jlink diff --git a/variants/nrf52840/t-echo/platformio.ini b/variants/nrf52840/t-echo/platformio.ini index 40396e1a5..3ce0932b3 100644 --- a/variants/nrf52840/t-echo/platformio.ini +++ b/variants/nrf52840/t-echo/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = LilyGo custom_meshtastic_has_ink_hud = true extends = nrf52840_base +board_level = release board = t-echo board_check = true debug_tool = jlink @@ -37,6 +38,7 @@ lib_deps = [env:t-echo-inkhud] extends = nrf52840_base, inkhud +board_level = release board = t-echo board_check = true debug_tool = jlink diff --git a/variants/nrf52840/t-impulse-plus/platformio.ini b/variants/nrf52840/t-impulse-plus/platformio.ini index 428724099..beae2dbfa 100644 --- a/variants/nrf52840/t-impulse-plus/platformio.ini +++ b/variants/nrf52840/t-impulse-plus/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_tags = LilyGo custom_meshtastic_requires_dfu = true extends = nrf52840_base +board_level = release board = t-impulse-plus build_flags = ${nrf52840_base.build_flags} diff --git a/variants/nrf52840/wio-sdk-wm1110/platformio.ini b/variants/nrf52840/wio-sdk-wm1110/platformio.ini index 9fac82289..5f46e10f8 100644 --- a/variants/nrf52840/wio-sdk-wm1110/platformio.ini +++ b/variants/nrf52840/wio-sdk-wm1110/platformio.ini @@ -1,6 +1,7 @@ ; The black Wio-WM1110 Dev Kit with sensors and the WM1110 module [env:wio-sdk-wm1110] extends = nrf52840_base +board_level = release board = wio-sdk-wm1110 extra_scripts = diff --git a/variants/nrf52840/wio-tracker-wm1110/platformio.ini b/variants/nrf52840/wio-tracker-wm1110/platformio.ini index 515712062..9fbd651fe 100644 --- a/variants/nrf52840/wio-tracker-wm1110/platformio.ini +++ b/variants/nrf52840/wio-tracker-wm1110/platformio.ini @@ -11,6 +11,7 @@ custom_meshtastic_tags = Seeed custom_meshtastic_requires_dfu = true extends = nrf52840_base +board_level = release board = wio-tracker-wm1110 build_flags = ${nrf52840_base.build_flags} -Ivariants/nrf52840/wio-tracker-wm1110 diff --git a/variants/rp2040/rak11310/platformio.ini b/variants/rp2040/rak11310/platformio.ini index 1b1f636a6..f3496023f 100644 --- a/variants/rp2040/rak11310/platformio.ini +++ b/variants/rp2040/rak11310/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = RAK custom_meshtastic_requires_dfu = true extends = rp2040_base +board_level = release board = rakwireless_rak11300 upload_protocol = picotool # add our variants files to the include and src paths diff --git a/variants/rp2040/rp2040-lora/platformio.ini b/variants/rp2040/rp2040-lora/platformio.ini index f1e0b9af6..9d7520b1b 100644 --- a/variants/rp2040/rp2040-lora/platformio.ini +++ b/variants/rp2040/rp2040-lora/platformio.ini @@ -9,6 +9,7 @@ custom_meshtastic_tags = Waveshare custom_meshtastic_requires_dfu = true extends = rp2040_base +board_level = release board = rpipico upload_protocol = picotool # add our variants files to the include and src paths diff --git a/variants/rp2040/rpipico/platformio.ini b/variants/rp2040/rpipico/platformio.ini index c07d2d24f..b32ba7e21 100644 --- a/variants/rp2040/rpipico/platformio.ini +++ b/variants/rp2040/rpipico/platformio.ini @@ -10,6 +10,7 @@ custom_meshtastic_tags = RPi, DIY custom_meshtastic_requires_dfu = true extends = rp2040_base +board_level = release board = rpipico upload_protocol = picotool # add our variants files to the include and src paths diff --git a/variants/rp2040/seeed_xiao_rp2040/platformio.ini b/variants/rp2040/seeed_xiao_rp2040/platformio.ini index 1aad30a3d..48c7db61d 100644 --- a/variants/rp2040/seeed_xiao_rp2040/platformio.ini +++ b/variants/rp2040/seeed_xiao_rp2040/platformio.ini @@ -1,5 +1,6 @@ [env:seeed_xiao_rp2040] extends = rp2040_base +board_level = release board = seeed_xiao_rp2040 upload_protocol = picotool # add our variants files to the include and src paths diff --git a/variants/rp2350/rpipico2/platformio.ini b/variants/rp2350/rpipico2/platformio.ini index 2ff65c9cd..59b704fab 100644 --- a/variants/rp2350/rpipico2/platformio.ini +++ b/variants/rp2350/rpipico2/platformio.ini @@ -1,5 +1,6 @@ [env:pico2] extends = rp2350_base +board_level = release board = rpipico2 upload_protocol = picotool diff --git a/variants/rp2350/seeed_xiao_rp2350/platformio.ini b/variants/rp2350/seeed_xiao_rp2350/platformio.ini index c9d85af74..e179ae2d8 100644 --- a/variants/rp2350/seeed_xiao_rp2350/platformio.ini +++ b/variants/rp2350/seeed_xiao_rp2350/platformio.ini @@ -1,5 +1,6 @@ [env:seeed_xiao_rp2350] extends = rp2350_base +board_level = release board = seeed_xiao_rp2350 upload_protocol = picotool