diff --git a/firmware/lib/dispatch.cpp b/firmware/lib/dispatch.cpp index 2e79966..b9fbc51 100644 --- a/firmware/lib/dispatch.cpp +++ b/firmware/lib/dispatch.cpp @@ -1,7 +1,6 @@ #include "dispatch.h" #include #include "pico/stdlib.h" -#include "pico/bootrom.h" #include "tusb.h" #include "wire.h" #include "usb_cdc.h" @@ -72,10 +71,6 @@ void dispatch_schedule_ms(uint32_t ms, std::function fn) { usb.send(response); } } - if (msg->type_id == RequestPICOBOOT::ext_id) { - sleep_ms(100); - reset_usb_boot(0, 1); - } } } diff --git a/firmware/lib/handlers.cpp b/firmware/lib/handlers.cpp index b451891..2b792f4 100644 --- a/firmware/lib/handlers.cpp +++ b/firmware/lib/handlers.cpp @@ -1,9 +1,12 @@ #include "handlers.h" #include "pico/unique_id.h" +#include "pico/bootrom.h" +#include "dispatch.h" #include "net.h" #include "debug_log.h" std::vector> handle_picoboot(uint32_t message_id, std::span) { + dispatch_schedule_ms(100, []{ reset_usb_boot(0, 1); }); return {encode_response(message_id, ResponsePICOBOOT{})}; }