Add 70cm amateur radio region support

This commit is contained in:
vidplace7
2026-06-16 13:02:59 -04:00
committed by Austin
parent e4f4d1f9e7
commit 274444d293
4 changed files with 45 additions and 0 deletions
+3
View File
@@ -253,6 +253,9 @@ void menuHandler::LoraRegionPicker(uint32_t duration)
{"ITU2_2M (144-148)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU2_2M},
{"ITU3_2M (144-148)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU3_2M},
{"ITU2_125CM (220-225)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU2_125CM},
{"ITU1_70CM (430-440)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU1_70CM},
{"ITU2_70CM (420-450)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU2_70CM},
{"ITU3_70CM (430-450)", OptionsAction::Select, meshtastic_Config_LoRaConfig_RegionCode_ITU3_70CM},
};
@@ -70,6 +70,9 @@ enum MenuAction {
SET_REGION_ITU2_2M,
SET_REGION_ITU3_2M,
SET_REGION_ITU2_125CM,
SET_REGION_ITU1_70CM,
SET_REGION_ITU2_70CM,
SET_REGION_ITU3_70CM,
// Device Roles
SET_ROLE_CLIENT,
SET_ROLE_CLIENT_MUTE,
@@ -800,6 +800,18 @@ void InkHUD::MenuApplet::execute(MenuItem item)
applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU2_125CM);
break;
case SET_REGION_ITU1_70CM:
applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU1_70CM);
break;
case SET_REGION_ITU2_70CM:
applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU2_70CM);
break;
case SET_REGION_ITU3_70CM:
applyLoRaRegion(meshtastic_Config_LoRaConfig_RegionCode_ITU3_70CM);
break;
// Roles
case SET_ROLE_CLIENT:
applyDeviceRole(meshtastic_Config_DeviceConfig_Role_CLIENT);
+27
View File
@@ -283,6 +283,33 @@ const RegionInfo regions[] = {
*/
RDEF(ITU2_125CM, 220.0f, 225.0f, 100, 30, false, false, PROFILE_HAM_100KHZ, PRESET(NARROW_SLOW), 37),
/*
ITU Region 1 (Europe, Africa, Middle East, former USSR) amateur 70cm allocation: 430.000 - 440.000 MHz.
Power limit is the regulatory ceiling (1 W / 30 dBm) — individual hardware will cap below this
via its own PA curve; the field here is just the legal upper bound.
Default slot: 37 (433.650 MHz)
*/
RDEF(ITU1_70CM, 430.0f, 440.0f, 100, 30, false, false, PROFILE_HAM_100KHZ, PRESET(NARROW_SLOW), 37),
/*
ITU Region 2 (Americas) amateur 70cm allocation: 420.000 - 450.000 MHz.
Typical admin rules (e.g. US FCC Part 97) allow well above 30 dBm for licensed operators.
Note: Some countries do not allocate 420-430 MHz or 440-450 MHz. Check local law!
Default slot: 137 (433.650 MHz)
*/
RDEF(ITU2_70CM, 420.0f, 450.0f, 100, 30, false, false, PROFILE_HAM_100KHZ, PRESET(NARROW_SLOW), 137),
/*
ITU Region 3 (Asia/Pacific) amateur 70cm allocation: 430.000 - 450.000 MHz.
Typical admin rules allow well above 30 dBm for licensed operators.
Note: Some countries do not allocate 440-450 MHz. Check local law!
Default slot: 37 (433.650 MHz)
*/
RDEF(ITU3_70CM, 430.0f, 450.0f, 100, 30, false, false, PROFILE_HAM_100KHZ, PRESET(NARROW_SLOW), 37),
/*
2.4 GHZ WLAN Band equivalent. Only for SX128x chips.
*/