|
|
@@ -71,7 +71,10 @@ void subghz_scene_receiver_on_enter(void* context) {
|
|
|
string_init(str_buff);
|
|
|
|
|
|
if(subghz->txrx->rx_key_state == SubGhzRxKeyStateIDLE) {
|
|
|
+ subghz->txrx->frequency = subghz_setting_get_default_frequency(subghz->setting);
|
|
|
+ subghz->txrx->preset = FuriHalSubGhzPresetOok650Async;
|
|
|
subghz_history_reset(subghz->txrx->history);
|
|
|
+ subghz->txrx->rx_key_state = SubGhzRxKeyStateStart;
|
|
|
}
|
|
|
|
|
|
//Load history to receiver
|
|
|
@@ -120,8 +123,6 @@ bool subghz_scene_receiver_on_event(void* context, SceneManagerEvent event) {
|
|
|
subghz_sleep(subghz);
|
|
|
};
|
|
|
subghz->txrx->hopper_state = SubGhzHopperStateOFF;
|
|
|
- subghz->txrx->frequency = subghz_setting_get_default_frequency(subghz->setting);
|
|
|
- subghz->txrx->preset = FuriHalSubGhzPresetOok650Async;
|
|
|
subghz->txrx->idx_menu_chosen = 0;
|
|
|
subghz_receiver_set_rx_callback(subghz->txrx->receiver, NULL, subghz);
|
|
|
|
|
|
@@ -129,6 +130,9 @@ bool subghz_scene_receiver_on_event(void* context, SceneManagerEvent event) {
|
|
|
subghz->txrx->rx_key_state = SubGhzRxKeyStateExit;
|
|
|
scene_manager_next_scene(subghz->scene_manager, SubGhzSceneNeedSaving);
|
|
|
} else {
|
|
|
+ subghz->txrx->rx_key_state = SubGhzRxKeyStateIDLE;
|
|
|
+ subghz->txrx->frequency = subghz_setting_get_default_frequency(subghz->setting);
|
|
|
+ subghz->txrx->preset = FuriHalSubGhzPresetOok650Async;
|
|
|
scene_manager_search_and_switch_to_previous_scene(
|
|
|
subghz->scene_manager, SubGhzSceneStart);
|
|
|
}
|