Conversation
Default slots: ITU1_2M: Slot 26 (144.510 MHz) ITU2_2M: Slot 51 (145.010 MHz) ITU3_2M: Slot 33 (144.650 MHz)
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds new 2-meter amateur radio LoRa region definitions (ITU Regions 1/2/3) to the firmware’s region table and exposes them in the device UIs, while also standardizing the “TINY” preset bandwidth constant to 15.6 kHz across code and tests.
Changes:
- Add
ITU1_2M,ITU2_2M,ITU3_2Mregion entries (144–146/148 MHz) using the ham 20 kHz profile andTINY_FASTdefault preset/slots. - Expose the new regions in both the classic screen menu and InkHUD menu flows.
- Standardize 15.625 kHz → 15.6 kHz for TINY bandwidth mapping and update unit tests accordingly; make RF95 pin macro overrides more flexible.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| test/test_radio/test_main.cpp | Updates bandwidth mapping test expectation to 15.6 kHz. |
| src/RF95Configuration.h | Wrap RF95 pin macros with #ifndef to allow variant overrides. |
| src/mesh/RadioInterface.cpp | Adds ITU 2m region definitions; adjusts ham profile padding for 15.6 kHz → 20 kHz slot width. |
| src/mesh/MeshRadio.h | Standardizes TINY preset bandwidth and bw-code mapping to 15.6 kHz. |
| src/graphics/niche/InkHUD/Applets/System/Menu/MenuApplet.cpp | Adds InkHUD actions to select the new ITU 2m regions. |
| src/graphics/niche/InkHUD/Applets/System/Menu/MenuAction.h | Adds new menu action enum values for ITU 2m regions. |
| src/graphics/draw/MenuHandler.cpp | Adds the new ITU 2m regions to the on-device LoRa region picker list. |
Comment on lines
+209
to
+211
| {"ITU1_2M (144-146)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU1_2M}, | ||
| {"ITU2_2M (144-148)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU2_2M}, | ||
| {"ITU3_2M (144-148)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU3_2M}, |
Comment on lines
+787
to
+797
| case SET_REGION_ITU1_2M: | ||
| applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU1_2M); | ||
| break; | ||
|
|
||
| case SET_REGION_ITU2_2M: | ||
| applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU2_2M); | ||
| break; | ||
|
|
||
| case SET_REGION_ITU3_2M: | ||
| applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU3_2M); | ||
| break; |
Member
Author
|
Merging after chatting with @caveman99 |
oscgonfer
pushed a commit
that referenced
this pull request
Jun 14, 2026
Default slots: ITU1_2M: Slot 26 (144.510 MHz) ITU2_2M: Slot 51 (145.010 MHz) ITU3_2M: Slot 33 (144.650 MHz)
raghumad
pushed a commit
to raghumad/mezulla-firmware
that referenced
this pull request
Jun 25, 2026
Default slots: ITU1_2M: Slot 26 (144.510 MHz) ITU2_2M: Slot 51 (145.010 MHz) ITU3_2M: Slot 33 (144.650 MHz)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds new regions for 2 meter ham bands. With (hopefully) appropriate default channel slots.
🌍🇪🇺 ITU1_2M: Slot 26 (144.510 MHz)
🌎🇺🇸 ITU2_2M: Slot 51 (145.010 MHz)
🌏🇦🇺 ITU3_2M: Slot 33 (144.650 MHz)
These regions all use 15.6 kHz bandwidth, padded to 20kHz to fit cleanly into ham band plans.
This PR was split off of #10558 (T-Beam-BPF). It was getting pretty large. (Merge this PR first to unblock work on T-Beam Supreme and TLora32 144mhz versions).
This pull request adds support for new ITU 2-meter amateur radio regions and standardizes the 15.6 kHz bandwidth value across the codebase. The main changes include introducing region definitions and menu options for ITU Regions 1, 2, and 3 (2m band), updating bandwidth constants and calculations, and ensuring these new regions are selectable in the UI.
Support for new ITU 2m amateur radio regions:
ITU1_2M,ITU2_2M,ITU3_2M) for the 144-146/148 MHz amateur bands, including their properties and default slots, inRadioInterface.cpp.MenuAction.h,MenuApplet.cpp,MenuHandler.cpp) [1] [2] [3] [4].Bandwidth value standardization:
MeshRadio.h,RadioInterface.cpp,test_main.cpp) [1] [2] [3] [4].RF95 configuration improvements:
RF95Configuration.hto avoid redefinition and ensure flexibility.🤝 Attestations
tlora-v2-1-1_6144mhz version.t-beam-bpf