firmware: v19 — quitar handler G del loop()
El handler 'G' en loop() empeoraba el problema:
el bootloader del ESP32 manda basura que incluye bytes 0x47 ('G'),
lo que disparaba un handshake falso y dejaba espReady=true
antes de tiempo, permitiendo que mas basura del bootloader
ejecutase backward().
Ahora: solo waitForReady() hace el handshake al arrancar.
Si el ESP32 se cuelga y reinicia, el watchdog de 1.5s (millis())
para los motores. Cuando el ESP32 termina de arrancar, el usuario
puede volver a manejar normalmente.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
// ================================================================
|
||||
// OTA CONFIG
|
||||
// ================================================================
|
||||
#define FW_VERSION 18
|
||||
#define FW_VERSION 19
|
||||
#define GITEA_HOST "https://git.nacho.myds.me"
|
||||
#define GITEA_OWNER "Natxo"
|
||||
#define GITEA_REPO "Arduino-Car"
|
||||
@@ -185,19 +185,6 @@ void loop() {
|
||||
if (Serial.available()) {
|
||||
char c = Serial.read();
|
||||
|
||||
// Reinicio del ESP32-CAM: manda "GO\n" de nuevo
|
||||
if (c == 'G') {
|
||||
espReady = false;
|
||||
stopMotors();
|
||||
motorRunning = false;
|
||||
Serial.readStringUntil('\n');
|
||||
Serial.print("OK\n");
|
||||
delay(50);
|
||||
while (Serial.available()) Serial.read();
|
||||
espReady = true;
|
||||
return;
|
||||
}
|
||||
|
||||
// Ignorar todo hasta que el handshake esté completo
|
||||
if (!espReady) return;
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
// ================================================================
|
||||
// OTA CONFIG
|
||||
// ================================================================
|
||||
#define FW_VERSION 18
|
||||
#define FW_VERSION 19
|
||||
#define GITEA_HOST "https://git.nacho.myds.me"
|
||||
#define GITEA_OWNER "Natxo"
|
||||
#define GITEA_REPO "Arduino-Car"
|
||||
|
||||
@@ -1 +1 @@
|
||||
18
|
||||
19
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
18
|
||||
19
|
||||
Reference in New Issue
Block a user