From 2fe739a98abfa0d15b36cfaba39ed6a207c0ff72 Mon Sep 17 00:00:00 2001 From: Sil333033 <94360907+Sil333033@users.noreply.github.com> Date: Thu, 24 Aug 2023 16:13:09 +0200 Subject: [PATCH] Add auto 5V on NRF24 apps --nobuild --- .../nrf24channelscanner/nrf24channelscanner.c | 12 ++++++++++++ applications/external/nrf24mousejacker/mousejacker.c | 10 ++++++++++ applications/external/nrf24sniff/nrfsniff.c | 10 ++++++++++ 3 files changed, 32 insertions(+) diff --git a/applications/external/nrf24channelscanner/nrf24channelscanner.c b/applications/external/nrf24channelscanner/nrf24channelscanner.c index b44fe6ea5..39749e77a 100644 --- a/applications/external/nrf24channelscanner/nrf24channelscanner.c +++ b/applications/external/nrf24channelscanner/nrf24channelscanner.c @@ -1,5 +1,6 @@ #include #include +#include #include #include #include @@ -168,6 +169,12 @@ int32_t nrf24channelscanner_main(void* p) { Event event; FuriMessageQueue* event_queue = furi_message_queue_alloc(8, sizeof(Event)); + uint8_t attempts = 0; + while(!furi_hal_power_is_otg_enabled() && attempts++ < 5) { + furi_hal_power_enable_otg(); + furi_delay_ms(10); + } + nrf24_init(); ViewPort* view_port = view_port_alloc(); @@ -247,5 +254,10 @@ int32_t nrf24channelscanner_main(void* p) { gui_remove_view_port(gui, view_port); view_port_free(view_port); furi_record_close(RECORD_GUI); + + if(furi_hal_power_is_otg_enabled()) { + furi_hal_power_disable_otg(); + } + return 0; } \ No newline at end of file diff --git a/applications/external/nrf24mousejacker/mousejacker.c b/applications/external/nrf24mousejacker/mousejacker.c index 20fa02846..8f2914c62 100644 --- a/applications/external/nrf24mousejacker/mousejacker.c +++ b/applications/external/nrf24mousejacker/mousejacker.c @@ -289,6 +289,12 @@ int32_t mousejacker_app(void* p) { return 255; } + uint8_t attempts = 0; + while(!furi_hal_power_is_otg_enabled() && attempts++ < 5) { + furi_hal_power_enable_otg(); + furi_delay_ms(10); + } + NotificationApp* notification = furi_record_open(RECORD_NOTIFICATION); // Set system callbacks @@ -392,5 +398,9 @@ int32_t mousejacker_app(void* p) { furi_mutex_free(plugin_state->mutex); free(plugin_state); + if(furi_hal_power_is_otg_enabled()) { + furi_hal_power_disable_otg(); + } + return 0; } diff --git a/applications/external/nrf24sniff/nrfsniff.c b/applications/external/nrf24sniff/nrfsniff.c index 21e347d0a..1b761aacb 100644 --- a/applications/external/nrf24sniff/nrfsniff.c +++ b/applications/external/nrf24sniff/nrfsniff.c @@ -327,6 +327,12 @@ int32_t nrfsniff_app(void* p) { return 255; } + uint8_t attempts = 0; + while(!furi_hal_power_is_otg_enabled() && attempts++ < 5) { + furi_hal_power_enable_otg(); + furi_delay_ms(10); + } + nrf24_init(); // Set system callbacks @@ -464,5 +470,9 @@ int32_t nrfsniff_app(void* p) { furi_mutex_free(plugin_state->mutex); free(plugin_state); + if(furi_hal_power_is_otg_enabled()) { + furi_hal_power_disable_otg(); + } + return 0; }