mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-04-24 03:29:57 -07:00
Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild
This commit is contained in:
@@ -78,6 +78,8 @@ typedef enum {
|
||||
SetTypeFaacSLH_433,
|
||||
SetTypeBFTMitto,
|
||||
SetTypeSomfyTelis,
|
||||
SetTypeKingGatesStylo4k,
|
||||
SetTypeBenincaARC,
|
||||
SetTypeANMotorsAT4,
|
||||
SetTypeAlutechAT4N,
|
||||
SetTypePhoenix_V2_433,
|
||||
@@ -96,8 +98,8 @@ typedef enum {
|
||||
SetTypeMotorline433,
|
||||
SetTypeSommer_FM_434,
|
||||
SetTypeSommer_FM_868,
|
||||
SetTypeSommer_FM238_434,
|
||||
SetTypeSommer_FM238_868,
|
||||
SetTypeSommer_FM12K_434,
|
||||
SetTypeSommer_FM12K_868,
|
||||
SetTypeStilmatic,
|
||||
SetTypeIronLogic,
|
||||
SetTypeIronLogicSmart,
|
||||
@@ -111,6 +113,7 @@ typedef enum {
|
||||
SetTypeJCM_433_92,
|
||||
SetTypeNovoferm_433_92,
|
||||
SetTypeHormannEcoStar_433_92,
|
||||
SetTypeCardinS449_433FM,
|
||||
SetTypeFAACRCXT_433_92,
|
||||
SetTypeFAACRCXT_868,
|
||||
SetTypeGeniusBravo433,
|
||||
|
||||
@@ -426,7 +426,7 @@ void subghz_scene_set_type_fill_generation_infos(GenInfo* infos_dest, SetType ty
|
||||
.keeloq.serial = (key & 0x0000FFFF) | 0x01700000,
|
||||
.keeloq.btn = 0x02,
|
||||
.keeloq.cnt = 0x03,
|
||||
.keeloq.manuf = "Sommer(fsk476)"};
|
||||
.keeloq.manuf = "Sommer"};
|
||||
break;
|
||||
case SetTypeSommer_FM_868:
|
||||
gen_info = (GenInfo){
|
||||
@@ -436,27 +436,27 @@ void subghz_scene_set_type_fill_generation_infos(GenInfo* infos_dest, SetType ty
|
||||
.keeloq.serial = (key & 0x0000FFFF) | 0x01700000,
|
||||
.keeloq.btn = 0x02,
|
||||
.keeloq.cnt = 0x03,
|
||||
.keeloq.manuf = "Sommer(fsk476)"};
|
||||
.keeloq.manuf = "Sommer"};
|
||||
break;
|
||||
case SetTypeSommer_FM238_434:
|
||||
case SetTypeSommer_FM12K_434:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenKeeloq,
|
||||
.mod = "FM238",
|
||||
.mod = "FM12K",
|
||||
.freq = 434420000,
|
||||
.keeloq.serial = key & 0x0000FFFF,
|
||||
.keeloq.btn = 0x02,
|
||||
.keeloq.cnt = 0x03,
|
||||
.keeloq.manuf = "Sommer(fsk476)"};
|
||||
.keeloq.manuf = "Sommer"};
|
||||
break;
|
||||
case SetTypeSommer_FM238_868:
|
||||
case SetTypeSommer_FM12K_868:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenKeeloq,
|
||||
.mod = "FM238",
|
||||
.mod = "FM12K",
|
||||
.freq = 868800000,
|
||||
.keeloq.serial = key & 0x0000FFFF,
|
||||
.keeloq.btn = 0x02,
|
||||
.keeloq.cnt = 0x03,
|
||||
.keeloq.manuf = "Sommer(fsk476)"};
|
||||
.keeloq.manuf = "Sommer"};
|
||||
break;
|
||||
case SetTypeDTMNeo433:
|
||||
gen_info = (GenInfo){
|
||||
@@ -523,6 +523,24 @@ void subghz_scene_set_type_fill_generation_infos(GenInfo* infos_dest, SetType ty
|
||||
.somfy_telis.btn = 0x02,
|
||||
.somfy_telis.cnt = 0x03};
|
||||
break;
|
||||
case SetTypeKingGatesStylo4k:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenKingGatesStylo4k,
|
||||
.mod = "AM650",
|
||||
.freq = 433920000,
|
||||
.kinggates_stylo_4k.serial = key & 0xFFFFFFFF,
|
||||
.kinggates_stylo_4k.btn = 0x0E,
|
||||
.kinggates_stylo_4k.cnt = 0x03};
|
||||
break;
|
||||
case SetTypeBenincaARC:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenBenincaARC,
|
||||
.mod = "AM650",
|
||||
.freq = 433920000,
|
||||
.beninca_arc.serial = key & 0x00FFFFFF,
|
||||
.beninca_arc.btn = 0x02,
|
||||
.beninca_arc.cnt = 0x03};
|
||||
break;
|
||||
case SetTypeMotorline433:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenKeeloq,
|
||||
@@ -643,6 +661,16 @@ void subghz_scene_set_type_fill_generation_infos(GenInfo* infos_dest, SetType ty
|
||||
.keeloq.cnt = 0x03,
|
||||
.keeloq.manuf = "EcoStar"};
|
||||
break;
|
||||
case SetTypeCardinS449_433FM:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenKeeloq,
|
||||
.mod = "FM12K",
|
||||
.freq = 433920000,
|
||||
.keeloq.serial = (key & 0x000FFFFF),
|
||||
.keeloq.btn = 0x02,
|
||||
.keeloq.cnt = 0x03,
|
||||
.keeloq.manuf = "Cardin_S449"};
|
||||
break;
|
||||
case SetTypeFAACRCXT_433_92:
|
||||
gen_info = (GenInfo){
|
||||
.type = GenKeeloq,
|
||||
|
||||
@@ -10,6 +10,8 @@ typedef enum {
|
||||
GenKeeloqBFT,
|
||||
GenAlutechAt4n,
|
||||
GenSomfyTelis,
|
||||
GenKingGatesStylo4k,
|
||||
GenBenincaARC,
|
||||
GenNiceFlorS,
|
||||
GenSecPlus1,
|
||||
GenSecPlus2,
|
||||
@@ -61,6 +63,16 @@ typedef struct {
|
||||
uint8_t btn;
|
||||
uint16_t cnt;
|
||||
} somfy_telis;
|
||||
struct {
|
||||
uint32_t serial;
|
||||
uint8_t btn;
|
||||
uint16_t cnt;
|
||||
} kinggates_stylo_4k;
|
||||
struct {
|
||||
uint32_t serial;
|
||||
uint8_t btn;
|
||||
uint32_t cnt;
|
||||
} beninca_arc;
|
||||
struct {
|
||||
uint32_t serial;
|
||||
uint8_t btn;
|
||||
|
||||
@@ -121,6 +121,8 @@ const char* subghz_txrx_get_preset_name(SubGhzTxRx* instance, const char* preset
|
||||
preset_name = "AM650";
|
||||
} else if(!strcmp(preset, "FuriHalSubGhzPreset2FSKDev238Async")) {
|
||||
preset_name = "FM238";
|
||||
} else if(!strcmp(preset, "FuriHalSubGhzPreset2FSKDev12KAsync")) {
|
||||
preset_name = "FM12K";
|
||||
} else if(!strcmp(preset, "FuriHalSubGhzPreset2FSKDev476Async")) {
|
||||
preset_name = "FM476";
|
||||
} else if(!strcmp(preset, "FuriHalSubGhzPresetCustom")) {
|
||||
|
||||
@@ -335,6 +335,66 @@ bool subghz_txrx_gen_somfy_telis_protocol(
|
||||
return res;
|
||||
}
|
||||
|
||||
bool subghz_txrx_gen_kinggates_stylo_4k_protocol(
|
||||
void* context,
|
||||
const char* preset_name,
|
||||
uint32_t frequency,
|
||||
uint32_t serial,
|
||||
uint8_t btn,
|
||||
uint16_t cnt) {
|
||||
SubGhzTxRx* txrx = context;
|
||||
|
||||
bool res = false;
|
||||
|
||||
txrx->transmitter =
|
||||
subghz_transmitter_alloc_init(txrx->environment, SUBGHZ_PROTOCOL_KINGGATES_STYLO_4K_NAME);
|
||||
subghz_txrx_set_preset(txrx, preset_name, frequency, NAN, NAN, NULL, 0);
|
||||
|
||||
if(txrx->transmitter && subghz_protocol_kinggates_stylo_4k_create_data(
|
||||
subghz_transmitter_get_protocol_instance(txrx->transmitter),
|
||||
txrx->fff_data,
|
||||
serial,
|
||||
btn,
|
||||
cnt,
|
||||
txrx->preset)) {
|
||||
res = true;
|
||||
}
|
||||
|
||||
subghz_transmitter_free(txrx->transmitter);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
bool subghz_txrx_gen_beninca_arc_protocol(
|
||||
void* context,
|
||||
const char* preset_name,
|
||||
uint32_t frequency,
|
||||
uint32_t serial,
|
||||
uint8_t btn,
|
||||
uint32_t cnt) {
|
||||
SubGhzTxRx* txrx = context;
|
||||
|
||||
bool res = false;
|
||||
|
||||
txrx->transmitter =
|
||||
subghz_transmitter_alloc_init(txrx->environment, SUBGHZ_PROTOCOL_BENINCA_ARC_NAME);
|
||||
subghz_txrx_set_preset(txrx, preset_name, frequency, NAN, NAN, NULL, 0);
|
||||
|
||||
if(txrx->transmitter && subghz_protocol_beninca_arc_create_data(
|
||||
subghz_transmitter_get_protocol_instance(txrx->transmitter),
|
||||
txrx->fff_data,
|
||||
serial,
|
||||
btn,
|
||||
cnt,
|
||||
txrx->preset)) {
|
||||
res = true;
|
||||
}
|
||||
|
||||
subghz_transmitter_free(txrx->transmitter);
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
bool subghz_txrx_gen_secplus_v2_protocol(
|
||||
SubGhzTxRx* instance,
|
||||
const char* name_preset,
|
||||
|
||||
@@ -108,6 +108,22 @@ bool subghz_txrx_gen_somfy_telis_protocol(
|
||||
uint8_t btn,
|
||||
uint16_t cnt);
|
||||
|
||||
bool subghz_txrx_gen_kinggates_stylo_4k_protocol(
|
||||
void* context,
|
||||
const char* preset_name,
|
||||
uint32_t frequency,
|
||||
uint32_t serial,
|
||||
uint8_t btn,
|
||||
uint16_t cnt);
|
||||
|
||||
bool subghz_txrx_gen_beninca_arc_protocol(
|
||||
void* context,
|
||||
const char* preset_name,
|
||||
uint32_t frequency,
|
||||
uint32_t serial,
|
||||
uint8_t btn,
|
||||
uint32_t cnt);
|
||||
|
||||
bool subghz_txrx_gen_came_atomo_protocol(
|
||||
void* context,
|
||||
const char* preset_name,
|
||||
|
||||
Reference in New Issue
Block a user