Skip to content

Commit 6be3d60

Browse files
author
David Lee
committed
Updates for interrupted transmission
1 parent 215b772 commit 6be3d60

File tree

3 files changed

+22
-8
lines changed

3 files changed

+22
-8
lines changed

scenes/meal_pager_scene_menu.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,17 @@ bool meal_pager_scene_menu_on_event(void* context, SceneManagerEvent event) {
4444
app->scene_manager, Meal_PagerSceneMenu, SubmenuIndexSettings);
4545
scene_manager_next_scene(app->scene_manager, Meal_PagerSceneSettings);
4646
return true;
47+
} else if (event.event == Meal_PagerCustomEventViewTransmitterSendStop) {
48+
app->state_notifications = SubGhzNotificationStateIDLE;
49+
subghz_txrx_stop(app->subghz->txrx);
50+
FURI_LOG_D(TAG, "Stop Event from Menu");
51+
return true;
52+
}
53+
} else if(event.type == SceneManagerEventTypeTick) {
54+
if(app->state_notifications == SubGhzNotificationStateTx) {
55+
notification_message(app->notification, &sequence_blink_magenta_10);
4756
}
57+
return true;
4858
}
4959
return false;
5060
}

scenes/meal_pager_scene_transmit.c

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,9 @@ void meal_pager_scene_transmit_on_enter(void* context) {
3333
FURI_LOG_D(TAG, "Generated tmp.sub");
3434
//meal_pager_blink_start_subghz(app);
3535
FURI_LOG_D(TAG, "Start Transmitting");
36-
subghz_send(app);
37-
36+
if (!app->stop_transmit) {
37+
subghz_send(app);
38+
}
3839
dolphin_deed(DolphinDeedSubGhzSend);
3940
//FURI_LOG_D(TAG, "Finished Transmitting");
4041
//meal_pager_blink_stop(app);
@@ -54,10 +55,9 @@ bool meal_pager_scene_transmit_on_event(void* context, SceneManagerEvent event)
5455
case Meal_PagerCustomEventTransmitDown:
5556
break;
5657
case Meal_PagerCustomEventTransmitBack:
57-
notification_message(app->notification, &sequence_reset_red);
58-
notification_message(app->notification, &sequence_reset_green);
59-
notification_message(app->notification, &sequence_reset_blue);
6058
app->stop_transmit = true;
59+
app->state_notifications = SubGhzNotificationStateIDLE;
60+
meal_pager_blink_stop(app);
6161
if(!scene_manager_search_and_switch_to_previous_scene(
6262
app->scene_manager, Meal_PagerSceneMenu)) {
6363
scene_manager_stop(app->scene_manager);
@@ -75,7 +75,10 @@ bool meal_pager_scene_transmit_on_event(void* context, SceneManagerEvent event)
7575
}
7676
} else if(event.type == SceneManagerEventTypeTick) {
7777
if(app->state_notifications == SubGhzNotificationStateTx) {
78-
notification_message(app->notification, &sequence_blink_magenta_10);
78+
app->state_notifications = SubGhzNotificationStateIDLE;
79+
subghz_txrx_stop(app->subghz->txrx);
80+
meal_pager_blink_stop(app);
81+
//notification_message(app->notification, &sequence_blink_magenta_10);
7982
}
8083
return true;
8184
}

views/meal_pager_transmit.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,9 @@ void meal_pager_transmit_draw(Canvas* canvas, Meal_PagerTransmitModel* model) {
4848
snprintf(pagerText, 20, "Pager: %lu", model->pager);
4949
canvas_draw_str_aligned(canvas, 0, 10, AlignLeft, AlignTop, pager_type_text_long[model->pager_type]);
5050
canvas_set_font(canvas, FontSecondary);
51-
canvas_draw_str_aligned(canvas, 0, 22, AlignLeft, AlignTop, stationText);
52-
canvas_draw_str_aligned(canvas, 0, 32, AlignLeft, AlignTop, pagerText);
51+
canvas_draw_str_aligned(canvas, 0, 22, AlignLeft, AlignTop, "Generating Data");
52+
canvas_draw_str_aligned(canvas, 0, 32, AlignLeft, AlignTop, stationText);
53+
canvas_draw_str_aligned(canvas, 0, 42, AlignLeft, AlignTop, pagerText);
5354
}
5455

5556
static void meal_pager_transmit_model_init(Meal_PagerTransmitModel* const model) {

0 commit comments

Comments
 (0)