This commit is contained in:
r3df0xx
2022-04-20 22:23:45 +03:00
parent 60501ee954
commit a3d5d47cfe
6 changed files with 13 additions and 31 deletions

View File

@@ -17,7 +17,7 @@ void subghz_scene_set_cnt_on_enter(void* context) {
subghz_scene_set_cnt_byte_input_callback, subghz_scene_set_cnt_byte_input_callback,
NULL, NULL,
subghz, subghz,
subghz->txrx->cnt_data->cnt, subghz->txrx->secure_data->cnt,
2); 2);
view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdByteInput); view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdByteInput);
} }

View File

@@ -17,7 +17,7 @@ void subghz_scene_set_fix_on_enter(void* context) {
subghz_scene_set_fix_byte_input_callback, subghz_scene_set_fix_byte_input_callback,
NULL, NULL,
subghz, subghz,
subghz->txrx->fix_data->fix, subghz->txrx->secure_data->fix,
4); 4);
view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdByteInput); view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdByteInput);
} }

View File

@@ -17,7 +17,7 @@ void subghz_scene_set_seed_on_enter(void* context) {
subghz_scene_set_seed_byte_input_callback, subghz_scene_set_seed_byte_input_callback,
NULL, NULL,
subghz, subghz,
subghz->txrx->seed_data->seed, subghz->txrx->secure_data->seed,
4); 4);
view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdByteInput); view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewIdByteInput);
} }

View File

@@ -159,17 +159,14 @@ bool subghz_scene_set_type_on_event(void* context, SceneManagerEvent event) {
uint32_t key = subghz_random_serial(); uint32_t key = subghz_random_serial();
switch(event.event) { switch(event.event) {
case SubmenuIndexFaacSLH: case SubmenuIndexFaacSLH:
subghz->txrx->fix_data->fix_len = 4;
subghz->txrx->cnt_data->cnt_len = 2;
subghz->txrx->seed_data->seed_len = 4;
scene_manager_next_scene(subghz->scene_manager, SubGhzSceneSetFix); scene_manager_next_scene(subghz->scene_manager, SubGhzSceneSetFix);
uint32_t fix_part = subghz->txrx->fix_data->fix[0] << 24 | subghz->txrx->fix_data->fix[1] << 16 | uint32_t fix_part = subghz->txrx->secure_data->fix[0] << 24 | subghz->txrx->secure_data->fix[1] << 16 |
subghz->txrx->fix_data->fix[2] << 8 | subghz->txrx->fix_data->fix[3]; subghz->txrx->secure_data->fix[2] << 8 | subghz->txrx->secure_data->fix[3];
FURI_LOG_I(TAG, "fix: %8X", fix_part); FURI_LOG_I(TAG, "fix: %8X", fix_part);
uint16_t cnt = subghz->txrx->cnt_data->cnt[0] << 8 | subghz->txrx->cnt_data->cnt[1]; uint16_t cnt = subghz->txrx->secure_data->cnt[0] << 8 | subghz->txrx->secure_data->cnt[1];
FURI_LOG_I(TAG, "cnt: %8X", cnt); FURI_LOG_I(TAG, "cnt: %8X", cnt);
uint32_t seed = subghz->txrx->seed_data->seed[0] << 24 | subghz->txrx->seed_data->seed[1] << 16 | uint32_t seed = subghz->txrx->secure_data->seed[0] << 24 | subghz->txrx->secure_data->seed[1] << 16 |
subghz->txrx->seed_data->seed[2] << 8 | subghz->txrx->seed_data->seed[3]; subghz->txrx->secure_data->seed[2] << 8 | subghz->txrx->secure_data->seed[3];
FURI_LOG_I(TAG, "seed: %8X", seed); FURI_LOG_I(TAG, "seed: %8X", seed);
subghz->txrx->transmitter = subghz->txrx->transmitter =
subghz_transmitter_alloc_init(subghz->txrx->environment, "Faac SLH"); subghz_transmitter_alloc_init(subghz->txrx->environment, "Faac SLH");

View File

@@ -143,9 +143,7 @@ SubGhz* subghz_alloc() {
subghz->txrx->history = subghz_history_alloc(); subghz->txrx->history = subghz_history_alloc();
subghz->txrx->worker = subghz_worker_alloc(); subghz->txrx->worker = subghz_worker_alloc();
subghz->txrx->fff_data = flipper_format_string_alloc(); subghz->txrx->fff_data = flipper_format_string_alloc();
subghz->txrx->seed_data = malloc(sizeof(SeedData)); subghz->txrx->secure_data = malloc(sizeof(SecureData));
subghz->txrx->fix_data = malloc(sizeof(FixData));
subghz->txrx->cnt_data = malloc(sizeof(CntData));
subghz->txrx->environment = subghz_environment_alloc(); subghz->txrx->environment = subghz_environment_alloc();
subghz_environment_set_came_atomo_rainbow_table_file_name( subghz_environment_set_came_atomo_rainbow_table_file_name(
subghz->txrx->environment, "/ext/subghz/assets/came_atomo"); subghz->txrx->environment, "/ext/subghz/assets/came_atomo");
@@ -243,9 +241,7 @@ void subghz_free(SubGhz* subghz) {
subghz_worker_free(subghz->txrx->worker); subghz_worker_free(subghz->txrx->worker);
flipper_format_free(subghz->txrx->fff_data); flipper_format_free(subghz->txrx->fff_data);
subghz_history_free(subghz->txrx->history); subghz_history_free(subghz->txrx->history);
free(subghz->txrx->seed_data); free(subghz->txrx->secure_data);
free(subghz->txrx->fix_data);
free(subghz->txrx->cnt_data);
free(subghz->txrx); free(subghz->txrx);
//Error string //Error string

View File

@@ -83,19 +83,10 @@ typedef enum {
} SubGhzLoadKeyState; } SubGhzLoadKeyState;
typedef struct { typedef struct {
uint8_t seed_len;
uint8_t seed[4];
} SeedData;
typedef struct {
uint8_t fix_len;
uint8_t fix[4]; uint8_t fix[4];
} FixData;
typedef struct {
uint8_t cnt_len;
uint8_t cnt[2]; uint8_t cnt[2];
} CntData; uint8_t seed[4];
} SecureData;
struct SubGhzTxRx { struct SubGhzTxRx {
SubGhzWorker* worker; SubGhzWorker* worker;
@@ -105,9 +96,7 @@ struct SubGhzTxRx {
SubGhzTransmitter* transmitter; SubGhzTransmitter* transmitter;
SubGhzProtocolDecoderBase* decoder_result; SubGhzProtocolDecoderBase* decoder_result;
FlipperFormat* fff_data; FlipperFormat* fff_data;
SeedData* seed_data; SecureData* secure_data;
FixData* fix_data;
CntData* cnt_data;
uint32_t frequency; uint32_t frequency;
FuriHalSubGhzPreset preset; FuriHalSubGhzPreset preset;