Add CLI command for rebooting the drone

This commit is contained in:
Oleg Kalachev 2024-12-20 20:59:59 +03:00
parent d01d5b7ecb
commit f54da5bf42
2 changed files with 9 additions and 1 deletions

View File

@ -31,7 +31,8 @@ const char* motd =
"cg - calibrate gyro\n"
"ca - calibrate accel\n"
"mfr, mfl, mrr, mrl - test motor\n"
"reset - reset drone's state\n";
"reset - reset drone's state\n"
"reboot - reboot the drone\n";
const struct Param {
const char* name;
@ -103,6 +104,8 @@ void doCommand(String& command, String& value) {
cliTestMotor(MOTOR_REAR_LEFT);
} else if (command == "reset") {
attitude = Quaternion();
} else if (command == "reboot") {
ESP.restart();
} else {
float val = value.toFloat();
// TODO: on error returns 0, check invalid value

View File

@ -129,6 +129,11 @@ public:
HardwareSerial Serial, Serial2;
class EspClass {
public:
void restart() { Serial.println("Ignore reboot in simulation"); }
} ESP;
void delay(uint32_t ms) {
std::this_thread::sleep_for(std::chrono::milliseconds(ms));
}