1
mirror of https://github.com/DarkFlippers/unleashed-firmware.git synced 2025-12-12 04:34:43 +04:00

SubGHz: add manually fixes

This commit is contained in:
MX
2023-10-16 05:06:40 +03:00
parent 9e90948fc3
commit 8e3378b7b9
2 changed files with 11 additions and 10 deletions

View File

@@ -51,9 +51,9 @@ typedef enum {
SubmenuIndexGateTX, SubmenuIndexGateTX,
SubmenuIndexDoorHan_315_00, SubmenuIndexDoorHan_315_00,
SubmenuIndexDoorHan_433_92, SubmenuIndexDoorHan_433_92,
SubmenuIndexLiftMaster_315_00, SubmenuIndexSecPlus_v1_315_00,
SubmenuIndexLiftMaster_390_00, SubmenuIndexSecPlus_v1_390_00,
SubmenuIndexLiftMaster_433_00, SubmenuIndexSecPlus_v1_433_00,
SubmenuIndexSecPlus_v2_310_00, SubmenuIndexSecPlus_v2_310_00,
SubmenuIndexSecPlus_v2_315_00, SubmenuIndexSecPlus_v2_315_00,
SubmenuIndexSecPlus_v2_390_00, SubmenuIndexSecPlus_v2_390_00,

View File

@@ -278,19 +278,19 @@ void subghz_scene_set_type_on_enter(void* context) {
submenu_add_item( submenu_add_item(
subghz->submenu, subghz->submenu,
"Security+1.0 315MHz", "Security+1.0 315MHz",
SubmenuIndexLiftMaster_315_00, SubmenuIndexSecPlus_v1_315_00,
subghz_scene_set_type_submenu_callback, subghz_scene_set_type_submenu_callback,
subghz); subghz);
submenu_add_item( submenu_add_item(
subghz->submenu, subghz->submenu,
"Security+1.0 390MHz", "Security+1.0 390MHz",
SubmenuIndexLiftMaster_390_00, SubmenuIndexSecPlus_v1_390_00,
subghz_scene_set_type_submenu_callback, subghz_scene_set_type_submenu_callback,
subghz); subghz);
submenu_add_item( submenu_add_item(
subghz->submenu, subghz->submenu,
"Security+1.0 433MHz", "Security+1.0 433MHz",
SubmenuIndexLiftMaster_433_00, SubmenuIndexSecPlus_v1_433_00,
subghz_scene_set_type_submenu_callback, subghz_scene_set_type_submenu_callback,
subghz); subghz);
submenu_add_item( submenu_add_item(
@@ -371,7 +371,7 @@ bool subghz_scene_set_type_on_event(void* context, SceneManagerEvent event) {
subghz->txrx, "AM650", 433920000, SUBGHZ_PROTOCOL_CAME_NAME, key, 24); subghz->txrx, "AM650", 433920000, SUBGHZ_PROTOCOL_CAME_NAME, key, 24);
break; break;
case SubmenuIndexCAME12bit868: case SubmenuIndexCAME12bit868:
key = (key & 0x0000FFF0) | 0x1; //btn 0x1, 0x2, 0x4 key = (key & 0x00000FF0) | 0x1; //btn 0x1, 0x2, 0x4
generated_protocol = subghz_txrx_gen_data_protocol( generated_protocol = subghz_txrx_gen_data_protocol(
subghz->txrx, "AM650", 868350000, SUBGHZ_PROTOCOL_CAME_NAME, key, 12); subghz->txrx, "AM650", 868350000, SUBGHZ_PROTOCOL_CAME_NAME, key, 12);
break; break;
@@ -702,15 +702,15 @@ bool subghz_scene_set_type_on_event(void* context, SceneManagerEvent event) {
scene_manager_next_scene(subghz->scene_manager, SubGhzSceneShowError); scene_manager_next_scene(subghz->scene_manager, SubGhzSceneShowError);
} }
break; break;
case SubmenuIndexLiftMaster_315_00: case SubmenuIndexSecPlus_v1_315_00:
generated_protocol = generated_protocol =
subghz_txrx_gen_secplus_v1_protocol(subghz->txrx, "AM650", 315000000); subghz_txrx_gen_secplus_v1_protocol(subghz->txrx, "AM650", 315000000);
break; break;
case SubmenuIndexLiftMaster_390_00: case SubmenuIndexSecPlus_v1_390_00:
generated_protocol = generated_protocol =
subghz_txrx_gen_secplus_v1_protocol(subghz->txrx, "AM650", 390000000); subghz_txrx_gen_secplus_v1_protocol(subghz->txrx, "AM650", 390000000);
break; break;
case SubmenuIndexLiftMaster_433_00: case SubmenuIndexSecPlus_v1_433_00:
generated_protocol = generated_protocol =
subghz_txrx_gen_secplus_v1_protocol(subghz->txrx, "AM650", 433920000); subghz_txrx_gen_secplus_v1_protocol(subghz->txrx, "AM650", 433920000);
break; break;
@@ -730,6 +730,7 @@ bool subghz_scene_set_type_on_event(void* context, SceneManagerEvent event) {
subghz->txrx, "AM650", 390000000, key, 0x68, 0xE500000); subghz->txrx, "AM650", 390000000, key, 0x68, 0xE500000);
break; break;
case SubmenuIndexSecPlus_v2_433_00: case SubmenuIndexSecPlus_v2_433_00:
key = (key & 0x7FFFF3FC); // 850LM pairing
generated_protocol = subghz_txrx_gen_secplus_v2_protocol( generated_protocol = subghz_txrx_gen_secplus_v2_protocol(
subghz->txrx, "AM650", 433920000, key, 0x68, 0xE500000); subghz->txrx, "AM650", 433920000, key, 0x68, 0xE500000);
break; break;