mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-04-28 03:59:58 -07:00
Revert hitag for now, need to cleanup more space
This commit is contained in:
@@ -56,8 +56,6 @@ enum LfRfidCustomEvent {
|
||||
LfRfidEventReadSenseCardEnd,
|
||||
LfRfidEventReadStartASK,
|
||||
LfRfidEventReadStartPSK,
|
||||
LfRfidEventReadStartRTF,
|
||||
LfRfidEventReadSenseHitag, //TODO combine with sensecardstart?
|
||||
LfRfidEventReadDone,
|
||||
LfRfidEventReadOverrun,
|
||||
LfRfidEventReadError,
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
typedef enum {
|
||||
SubmenuIndexASK,
|
||||
SubmenuIndexPSK,
|
||||
SubmenuIndexHitag,
|
||||
SubmenuIndexClearT5577,
|
||||
SubmenuIndexRAW,
|
||||
SubmenuIndexRAWEmulate,
|
||||
@@ -32,12 +31,6 @@ void lfrfid_scene_extra_actions_on_enter(void* context) {
|
||||
SubmenuIndexPSK,
|
||||
lfrfid_scene_extra_actions_submenu_callback,
|
||||
app);
|
||||
submenu_add_item(
|
||||
submenu,
|
||||
"Read RTF (Reader Talks First)",
|
||||
SubmenuIndexHitag,
|
||||
lfrfid_scene_extra_actions_submenu_callback,
|
||||
app);
|
||||
submenu_add_item(
|
||||
submenu,
|
||||
"Clear T5577 Password",
|
||||
@@ -86,11 +79,6 @@ bool lfrfid_scene_extra_actions_on_event(void* context, SceneManagerEvent event)
|
||||
scene_manager_next_scene(app->scene_manager, LfRfidSceneRead);
|
||||
DOLPHIN_DEED(DolphinDeedRfidRead);
|
||||
consumed = true;
|
||||
} else if(event.event == SubmenuIndexHitag) {
|
||||
app->read_type = LFRFIDWorkerReadTypeRTFOnly;
|
||||
scene_manager_next_scene(app->scene_manager, LfRfidSceneRead);
|
||||
DOLPHIN_DEED(DolphinDeedRfidRead);
|
||||
consumed = true;
|
||||
} else if(event.event == SubmenuIndexClearT5577) {
|
||||
scene_manager_next_scene(app->scene_manager, LfRfidSceneClearT5577Confirm);
|
||||
consumed = true;
|
||||
|
||||
@@ -36,10 +36,6 @@ static void
|
||||
event = LfRfidEventReadStartASK;
|
||||
} else if(result == LFRFIDWorkerReadStartPSK) {
|
||||
event = LfRfidEventReadStartPSK;
|
||||
} else if(result == LFRFIDWorkerReadStartRTF) {
|
||||
event = LfRfidEventReadStartRTF;
|
||||
} else if(result == LFRFIDWorkerReadSenseHitag) { //TODO combine with sensecardstart?
|
||||
event = LfRfidEventReadSenseHitag;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
@@ -54,9 +50,6 @@ void lfrfid_scene_read_on_enter(void* context) {
|
||||
lfrfid_view_read_set_read_mode(app->read_view, LfRfidReadPskOnly);
|
||||
} else if(app->read_type == LFRFIDWorkerReadTypeASKOnly) {
|
||||
lfrfid_view_read_set_read_mode(app->read_view, LfRfidReadAskOnly);
|
||||
} else if(app->read_type == LFRFIDWorkerReadTypeRTFOnly) {
|
||||
lfrfid_view_read_set_read_state(app->read_view, LfRfidReadScanning);
|
||||
lfrfid_view_read_set_read_mode(app->read_view, LfRfidReadRtfOnly);
|
||||
}
|
||||
|
||||
lfrfid_worker_start_thread(app->lfworker);
|
||||
@@ -100,17 +93,6 @@ bool lfrfid_scene_read_on_event(void* context, SceneManagerEvent event) {
|
||||
lfrfid_view_read_set_read_mode(app->read_view, LfRfidReadAsk);
|
||||
}
|
||||
consumed = true;
|
||||
} else if(event.event == LfRfidEventReadStartRTF) {
|
||||
if(app->read_type == LFRFIDWorkerReadTypeAuto) {
|
||||
lfrfid_view_read_set_read_state(app->read_view, LfRfidReadScanning);
|
||||
lfrfid_view_read_set_read_mode(app->read_view, LfRfidReadHitag);
|
||||
}
|
||||
consumed = true;
|
||||
} else if(event.event == LfRfidEventReadSenseHitag) { //TODO combine with sensecardstart?
|
||||
if(app->read_type == LFRFIDWorkerReadTypeAuto ||
|
||||
app->read_type == LFRFIDWorkerReadTypeRTFOnly) {
|
||||
lfrfid_view_read_set_read_state(app->read_view, LfRfidReadTagDetected);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -17,9 +17,6 @@ void lfrfid_scene_save_type_on_enter(void* context) {
|
||||
SaveTypeCtx* state = malloc(sizeof(SaveTypeCtx));
|
||||
FuriString* protocol_string = furi_string_alloc();
|
||||
for(uint8_t i = 0; i < LFRFIDProtocolMax; i++) {
|
||||
if(i == LFRFIDProtocolHitag1) {
|
||||
continue;
|
||||
}
|
||||
if((strcmp(
|
||||
protocol_dict_get_manufacturer(app->dict, i),
|
||||
protocol_dict_get_name(app->dict, i)) != 0) &&
|
||||
|
||||
@@ -17,15 +17,11 @@ void lfrfid_scene_saved_info_on_enter(void* context) {
|
||||
uint8_t* data = (uint8_t*)malloc(size);
|
||||
protocol_dict_get_data(app->dict, app->protocol_id, data, size);
|
||||
for(uint8_t i = 0; i < size; i++) {
|
||||
if(i >= 18) {
|
||||
furi_string_cat_printf(tmp_string, "..");
|
||||
break;
|
||||
} else {
|
||||
if(i != 0) {
|
||||
furi_string_cat_printf(tmp_string, ":");
|
||||
}
|
||||
furi_string_cat_printf(tmp_string, "%02X", data[i]);
|
||||
if(i != 0) {
|
||||
furi_string_cat_printf(tmp_string, ":");
|
||||
}
|
||||
|
||||
furi_string_cat_printf(tmp_string, "%02X", data[i]);
|
||||
}
|
||||
free(data);
|
||||
|
||||
|
||||
@@ -11,7 +11,6 @@ struct LfRfidReadView {
|
||||
typedef struct {
|
||||
IconAnimation* icon;
|
||||
LfRfidReadViewMode read_mode;
|
||||
LfRfidReadViewState read_state;
|
||||
} LfRfidReadViewModel;
|
||||
|
||||
static void lfrfid_view_read_draw_callback(Canvas* canvas, void* _model) {
|
||||
@@ -23,69 +22,36 @@ static void lfrfid_view_read_draw_callback(Canvas* canvas, void* _model) {
|
||||
canvas_set_font(canvas, FontPrimary);
|
||||
|
||||
if(model->read_mode == LfRfidReadAsk) {
|
||||
canvas_draw_str(canvas, 70, 8, "Reading 1/3");
|
||||
canvas_draw_str(canvas, 70, 16, "Reading 1/2");
|
||||
|
||||
canvas_draw_str(canvas, 77, 20, "ASK");
|
||||
canvas_draw_icon(canvas, 70, 13, &I_ButtonRight_4x7);
|
||||
canvas_draw_icon_animation(canvas, 112, 12, model->icon);
|
||||
canvas_draw_str(canvas, 77, 29, "ASK");
|
||||
canvas_draw_icon(canvas, 70, 22, &I_ButtonRight_4x7);
|
||||
canvas_draw_icon_animation(canvas, 102, 21, model->icon);
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
canvas_draw_str(canvas, 77, 33, "PSK");
|
||||
canvas_draw_str(canvas, 77, 46, "RTF");
|
||||
canvas_draw_str(canvas, 77, 43, "PSK");
|
||||
} else if(model->read_mode == LfRfidReadPsk) {
|
||||
canvas_draw_str(canvas, 70, 8, "Reading 2/3");
|
||||
canvas_draw_str(canvas, 70, 16, "Reading 2/2");
|
||||
|
||||
canvas_draw_str(canvas, 77, 33, "PSK");
|
||||
canvas_draw_icon(canvas, 70, 26, &I_ButtonRight_4x7);
|
||||
canvas_draw_icon_animation(canvas, 112, 25, model->icon);
|
||||
canvas_draw_str(canvas, 77, 43, "PSK");
|
||||
canvas_draw_icon(canvas, 70, 36, &I_ButtonRight_4x7);
|
||||
canvas_draw_icon_animation(canvas, 102, 35, model->icon);
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
canvas_draw_str(canvas, 77, 20, "ASK");
|
||||
canvas_draw_str(canvas, 77, 46, "RTF");
|
||||
} else if(model->read_mode == LfRfidReadHitag) {
|
||||
if(model->read_state == LfRfidReadScanning) {
|
||||
canvas_draw_str(canvas, 70, 8, "Reading 3/3");
|
||||
|
||||
canvas_draw_str(canvas, 77, 46, "RTF");
|
||||
canvas_draw_icon(canvas, 70, 39, &I_ButtonRight_4x7);
|
||||
canvas_draw_icon_animation(canvas, 112, 38, model->icon);
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
canvas_draw_str(canvas, 77, 20, "ASK");
|
||||
canvas_draw_str(canvas, 77, 33, "PSK");
|
||||
} else if(model->read_state == LfRfidReadTagDetected) { //TODO switch to other scene?
|
||||
canvas_draw_str(canvas, 65, 8, "Hitag1 found");
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
//canvas_draw_str(canvas, 70, 20, "## ## ## ##"); //TODO get tag SN from hitag worker
|
||||
canvas_draw_str(canvas, 70, 33, "Reading data");
|
||||
//canvas_draw_str(canvas, 70, 46, "Page: X/64"); //TODO get current page index from hitag worker
|
||||
}
|
||||
} else if(model->read_mode == LfRfidReadAskOnly) {
|
||||
canvas_draw_str(canvas, 77, 29, "ASK");
|
||||
} else {
|
||||
canvas_draw_str(canvas, 72, 16, "Reading");
|
||||
canvas_draw_str(canvas, 77, 35, "ASK");
|
||||
canvas_draw_icon_animation(canvas, 112, 27, model->icon);
|
||||
} else if(model->read_mode == LfRfidReadPskOnly) {
|
||||
canvas_draw_str(canvas, 72, 16, "Reading");
|
||||
canvas_draw_str(canvas, 77, 35, "PSK");
|
||||
canvas_draw_icon_animation(canvas, 112, 27, model->icon);
|
||||
} else if(model->read_mode == LfRfidReadRtfOnly) {
|
||||
if(model->read_state == LfRfidReadScanning) {
|
||||
canvas_draw_str(canvas, 72, 16, "Reading");
|
||||
canvas_draw_str(canvas, 77, 35, "RTF");
|
||||
canvas_draw_icon_animation(canvas, 112, 27, model->icon);
|
||||
} else if(model->read_state == LfRfidReadTagDetected) { //TODO switch to other scene?
|
||||
canvas_draw_str(canvas, 65, 8, "Hitag1 found");
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
//canvas_draw_str(canvas, 70, 20, "## ## ## ##"); //TODO get tag SN from hitag worker
|
||||
canvas_draw_str(canvas, 70, 33, "Reading data");
|
||||
//canvas_draw_str(canvas, 70, 46, "Page: X/64"); //TODO get current page index from hitag worker
|
||||
if(model->read_mode == LfRfidReadAskOnly) {
|
||||
canvas_draw_str(canvas, 77, 35, "ASK");
|
||||
} else {
|
||||
canvas_draw_str(canvas, 77, 35, "PSK");
|
||||
}
|
||||
canvas_draw_icon_animation(canvas, 102, 27, model->icon);
|
||||
}
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
canvas_draw_str(canvas, 61, 60, "Don't move card");
|
||||
canvas_draw_str(canvas, 61, 56, "Don't move card");
|
||||
}
|
||||
|
||||
void lfrfid_view_read_enter(void* context) {
|
||||
@@ -145,8 +111,3 @@ void lfrfid_view_read_set_read_mode(LfRfidReadView* read_view, LfRfidReadViewMod
|
||||
},
|
||||
true);
|
||||
}
|
||||
|
||||
void lfrfid_view_read_set_read_state(LfRfidReadView* read_view, LfRfidReadViewState state) {
|
||||
with_view_model(
|
||||
read_view->view, LfRfidReadViewModel * model, { model->read_state = state; }, true);
|
||||
}
|
||||
@@ -4,17 +4,10 @@
|
||||
typedef enum {
|
||||
LfRfidReadAsk,
|
||||
LfRfidReadPsk,
|
||||
LfRfidReadHitag,
|
||||
LfRfidReadAskOnly,
|
||||
LfRfidReadPskOnly,
|
||||
LfRfidReadRtfOnly,
|
||||
LfRfidReadPskOnly
|
||||
} LfRfidReadViewMode;
|
||||
|
||||
typedef enum {
|
||||
LfRfidReadScanning,
|
||||
LfRfidReadTagDetected,
|
||||
} LfRfidReadViewState;
|
||||
|
||||
typedef struct LfRfidReadView LfRfidReadView;
|
||||
|
||||
LfRfidReadView* lfrfid_view_read_alloc();
|
||||
@@ -24,5 +17,3 @@ void lfrfid_view_read_free(LfRfidReadView* read_view);
|
||||
View* lfrfid_view_read_get_view(LfRfidReadView* read_view);
|
||||
|
||||
void lfrfid_view_read_set_read_mode(LfRfidReadView* read_view, LfRfidReadViewMode mode);
|
||||
|
||||
void lfrfid_view_read_set_read_state(LfRfidReadView* read_view, LfRfidReadViewState state);
|
||||
Reference in New Issue
Block a user