diff --git a/src/main.cpp b/src/main.cpp index 99e3f43..f2f3301 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -148,7 +148,7 @@ public: while (*cmd == ' ') cmd++; if (strcmp(cmd, "help") == 0) { - defer_response("help:ohrana on,ohrana off,relay1 on,relay1 off,relay2 on,relay2 off,relay,status,ver,scan"); + defer_response("help:ohrana on,ohrana off,relay1 on,relay1 off,relay2 on,relay2 off,relay,status,ver,scan,reboot"); } else if (strcmp(cmd, "ohrana on") == 0) { g_armed = true; digitalWrite(PIN_RELAY_1, LOW); saveSecurityConfig(); defer_response("ohrana on ok"); } else if (strcmp(cmd, "ohrana off") == 0) { @@ -180,6 +180,11 @@ public: float sum = 0; for (int j = 0; j < 20; j++) { sum += radio_driver.getCurrentRSSI(); delay(50); } char r[32]; snprintf(r, sizeof(r), "noise:%.0fdBm", sum / 20); defer_response(r); + } else if (strcmp(cmd, "reboot") == 0) { + send_text("rebooting"); + delay(100); + for (int i = 0; i < 5; i++) { digitalWrite(PIN_LED_STATUS, HIGH); delay(80); digitalWrite(PIN_LED_STATUS, LOW); delay(80); } + NVIC_SystemReset(); } } };