mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-05-13 06:58:36 -07:00
Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware into dev --nobuild
This commit is contained in:
@@ -119,15 +119,6 @@ App(
|
|||||||
sources=["plugins/supported_cards/aime.c"],
|
sources=["plugins/supported_cards/aime.c"],
|
||||||
)
|
)
|
||||||
|
|
||||||
App(
|
|
||||||
appid="sonicare_parser",
|
|
||||||
apptype=FlipperAppType.PLUGIN,
|
|
||||||
entry_point="sonicare_plugin_ep",
|
|
||||||
targets=["f7"],
|
|
||||||
requires=["nfc"],
|
|
||||||
sources=["plugins/supported_cards/sonicare.c"],
|
|
||||||
)
|
|
||||||
|
|
||||||
App(
|
App(
|
||||||
appid="saflok_parser",
|
appid="saflok_parser",
|
||||||
apptype=FlipperAppType.PLUGIN,
|
apptype=FlipperAppType.PLUGIN,
|
||||||
@@ -146,6 +137,15 @@ App(
|
|||||||
sources=["plugins/supported_cards/mykey.c"],
|
sources=["plugins/supported_cards/mykey.c"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
App(
|
||||||
|
appid="sonicare_parser",
|
||||||
|
apptype=FlipperAppType.PLUGIN,
|
||||||
|
entry_point="sonicare_plugin_ep",
|
||||||
|
targets=["f7"],
|
||||||
|
requires=["nfc"],
|
||||||
|
sources=["plugins/supported_cards/sonicare.c"],
|
||||||
|
)
|
||||||
|
|
||||||
App(
|
App(
|
||||||
appid="nfc_start",
|
appid="nfc_start",
|
||||||
targets=["f7"],
|
targets=["f7"],
|
||||||
|
|||||||
@@ -4111,3 +4111,8 @@ EA19E58DD046
|
|||||||
861861861861
|
861861861861
|
||||||
686B35333376
|
686B35333376
|
||||||
##############################################
|
##############################################
|
||||||
|
# 1k HAWAII HOTEL
|
||||||
|
2CAD8A83DF28
|
||||||
|
555D8BBC2D3E
|
||||||
|
78DF1176C8FD
|
||||||
|
ADC169F922CB
|
||||||
@@ -987,7 +987,7 @@ static void subghz_protocol_keeloq_check_remote_controller(
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Case when we have no mf name means that we are checking for the first time and we have to check all conditions
|
// Case when we have no mf name means that we are checking for the first time and we have to check all conditions
|
||||||
if((strlen(keystore->mfname) < 1) && strlen(*manufacture_name) < 1) {
|
if(strlen(keystore->mfname) < 1) {
|
||||||
// Check key AN-Motors
|
// Check key AN-Motors
|
||||||
if((key_hop >> 24) == ((key_hop >> 16) & 0x00ff) &&
|
if((key_hop >> 24) == ((key_hop >> 16) & 0x00ff) &&
|
||||||
(key_fix >> 28) == ((key_hop >> 12) & 0x0f) && (key_hop & 0xFFF) == 0x404) {
|
(key_fix >> 28) == ((key_hop >> 12) & 0x0f) && (key_hop & 0xFFF) == 0x404) {
|
||||||
@@ -1004,20 +1004,16 @@ static void subghz_protocol_keeloq_check_remote_controller(
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// If we have mfname and its one of AN-Motors or HCS101 we should preform only check for this system
|
// If we have mfname and its one of AN-Motors or HCS101 we should preform only check for this system
|
||||||
if((strcmp(keystore->mfname, "AN-Motors") == 0) ||
|
if(strcmp(keystore->mfname, "AN-Motors") == 0) {
|
||||||
(strcmp(keystore->mfname, "HCS101") == 0)) {
|
// Force key to AN-Motors
|
||||||
// Check key AN-Motors
|
*manufacture_name = "AN-Motors";
|
||||||
if((key_hop >> 24) == ((key_hop >> 16) & 0x00ff) &&
|
keystore->mfname = *manufacture_name;
|
||||||
(key_fix >> 28) == ((key_hop >> 12) & 0x0f) && (key_hop & 0xFFF) == 0x404) {
|
instance->cnt = key_hop >> 16;
|
||||||
*manufacture_name = "AN-Motors";
|
} else if(strcmp(keystore->mfname, "HCS101") == 0) {
|
||||||
keystore->mfname = *manufacture_name;
|
// Force key to HCS101
|
||||||
instance->cnt = key_hop >> 16;
|
*manufacture_name = "HCS101";
|
||||||
} else if(
|
keystore->mfname = *manufacture_name;
|
||||||
(key_hop & 0xFFF) == (0x000) && (key_fix >> 28) == ((key_hop >> 12) & 0x0f)) {
|
instance->cnt = key_hop >> 16;
|
||||||
*manufacture_name = "HCS101";
|
|
||||||
keystore->mfname = *manufacture_name;
|
|
||||||
instance->cnt = key_hop >> 16;
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
// Else we have mfname that is not AN-Motors or HCS101 we should check it via default selector
|
// Else we have mfname that is not AN-Motors or HCS101 we should check it via default selector
|
||||||
subghz_protocol_keeloq_check_remote_controller_selector(
|
subghz_protocol_keeloq_check_remote_controller_selector(
|
||||||
|
|||||||
@@ -563,7 +563,7 @@ void subghz_protocol_decoder_secplus_v1_get_string(void* context, FuriString* ou
|
|||||||
furi_string_cat_printf(
|
furi_string_cat_printf(
|
||||||
output,
|
output,
|
||||||
"%s %db\r\n"
|
"%s %db\r\n"
|
||||||
"Key:0x%lX%08lX\r\n"
|
"Key:%lX%08lX\r\n"
|
||||||
"id1:%d id0:%d",
|
"id1:%d id0:%d",
|
||||||
instance->generic.protocol_name,
|
instance->generic.protocol_name,
|
||||||
instance->generic.data_count_bit,
|
instance->generic.data_count_bit,
|
||||||
@@ -600,7 +600,7 @@ void subghz_protocol_decoder_secplus_v1_get_string(void* context, FuriString* ou
|
|||||||
output,
|
output,
|
||||||
"Sn:0x%08lX\r\n"
|
"Sn:0x%08lX\r\n"
|
||||||
"Cnt:0x%03lX "
|
"Cnt:0x%03lX "
|
||||||
"Sw_id:0x%X\r\n",
|
"SwID:0x%X\r\n",
|
||||||
instance->generic.serial,
|
instance->generic.serial,
|
||||||
instance->generic.cnt,
|
instance->generic.cnt,
|
||||||
instance->generic.btn);
|
instance->generic.btn);
|
||||||
@@ -619,7 +619,7 @@ void subghz_protocol_decoder_secplus_v1_get_string(void* context, FuriString* ou
|
|||||||
output,
|
output,
|
||||||
"Sn:0x%08lX\r\n"
|
"Sn:0x%08lX\r\n"
|
||||||
"Cnt:0x%03lX "
|
"Cnt:0x%03lX "
|
||||||
"Sw_id:0x%X\r\n",
|
"SwID:0x%X\r\n",
|
||||||
instance->generic.serial,
|
instance->generic.serial,
|
||||||
instance->generic.cnt,
|
instance->generic.cnt,
|
||||||
instance->generic.btn);
|
instance->generic.btn);
|
||||||
|
|||||||
Reference in New Issue
Block a user