From 3f0c54e6b5e9db84eae02984f4f132cfcfa69f72 Mon Sep 17 00:00:00 2001 From: 3djc Date: Fri, 17 Oct 2025 05:52:37 +0200 Subject: [PATCH] feat(radio): add the ability to trigger EM from CLI (#6640) --- radio/src/boards/jumper-h750/board.cpp | 2 +- radio/src/cli.cpp | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/radio/src/boards/jumper-h750/board.cpp b/radio/src/boards/jumper-h750/board.cpp index 27da378d7..ced92f564 100644 --- a/radio/src/boards/jumper-h750/board.cpp +++ b/radio/src/boards/jumper-h750/board.cpp @@ -153,7 +153,7 @@ void boardInit() #if !defined(DEBUG_SEGGER_RTT) // This is needed to prevent radio from starting when usb is plugged to charge - if (usbPlugged()) { + if (!UNEXPECTED_SHUTDOWN() && usbPlugged()) { while (usbPlugged() && !pwrPressed()) { delay_ms(1000); } diff --git a/radio/src/cli.cpp b/radio/src/cli.cpp index a0e3f97f4..4e4d29d5e 100644 --- a/radio/src/cli.cpp +++ b/radio/src/cli.cpp @@ -1736,6 +1736,14 @@ int cliCrypt(const char ** argv) } #endif +int cliTriggerEM(const char** argv) +{ + // Prevent task switching + vTaskSuspendAll(); + // Trigger watchdog + while(1); +} + #if defined(TP_GT911) // from tp_gt911.cpp extern uint8_t tp_gt911_cfgVer; @@ -1811,6 +1819,7 @@ const CliCommand cliCommands[] = { #if defined(TP_GT911) { "reset_gt911", cliResetGT911, ""}, #endif + { "trigger_watchdog_reset", cliTriggerEM, ""}, { nullptr, nullptr, nullptr } /* sentinel */ };