Ardumower Webinterface

Ist die Baudrate auch auf dem wemos auf 115200?

Ich habe den Anschluss für das bluetoothmodul benutzt.
 
Ja, ist sie. Problem ist aber, dass der Transistor Q27 nicht mehr durchschaltet.
Wenn ich diesen überbrücke funktionierts, werd da wohl wie bereits in einem Beitrag hier erwähnt einfach etwas einlöten.

Funktioniert die TeensyWebControl auch mit Azurit?
 
Ja, ist sie. Problem ist aber, dass der Transistor Q27 nicht mehr durchschaltet.
Wenn ich diesen überbrücke funktionierts, werd da wohl wie bereits in einem Beitrag hier erwähnt einfach etwas einlöten.

Funktioniert die TeensyWebControl auch mit Azurit?
Hallo keeev,
das ist schon so lange her, daher erinnere ich mich nicht mehr.
Wenn du ab Seite 1 anfängst zu lesen, dann siehst du, daß Azurit das Ausgangssystem auf PCB 1.3 war. Ich habe selbst noch einen Mäher mit Azurit und PCB 1.3 laufen - mit esp32-Webserver. Mein Azurit ist aber auch an diveresen Stellen modifiziert, da mein Mäher Allrad und Vorderachslenkung hat.
Ich meine, mein Ziel war es damals eine einzige Version für Azurit, AzuritBer und Teensy zu erstellen, die dann vor dem Compilieren parametriert wird. Dazu werden eigentlich nur die Compileranweisungen gesetzt. Die Unterschiede liegen einfach nur in den benutzten Variablen. Daher wird eine der Versionen ab Seite 1 sicherlich funktionieren.
Gruß Fürst Ruprecht
 
Könnte mich mal bitte jemand abholen und sagen welche Kombination jetzt funktioniert?
Ich teste geraden den AzuritBer DEV Branch in Kombination mit der WebControl (Pfods sind getauscht) vom 30.07.2022 mit folgenden Einstellungen:

DEV-Branch:
#define Console Serial
#define CONSOLE_BAUDRATE 19200 // baudrate used for Raspberry PI console
#define Bluetooth Serial1 // Ardumower default OK for ESP32 or HC05
#define BLUETOOTH_BAUDRATE 19200 // baudrate used for communication with Bluetooth module
#define BLUETOOTH_PIN 1234

ESP32:
#define BAUDRATE_ESP_to_PCB 19200
#define BAUDRATE_ESP_to_USB 115200

Leider bekomm ich keine Verbindung zwischen WebControl und PCB. Seht ihr hier direkt einen Fehler? Serial1 und Serial2 musste ich im Code tauschen, da mein ESP am WLAN-Port angeschlossen ist, das macht aber kein Problem beim Master-Branch. Dort funktioniert alles mit dem anderen Serial-Port (Pfod BT und WLAN).
 
Zuletzt bearbeitet:
Hallo keeev,
ich kann das Bild leider nicht vollständig erfassen, da es im Bereich, wo die Käbelchen von einer Farbe in die andere übergehen nicht richtig zu erkennen ist.
Evtl. sehe ich da einen Fehler.
Ich habe mir die Pläne angesehen - so sollte es sein
Arduino Pin Sockel P44 D1-Mini
Pin18-RX1 -> TX= Pin3 -> TX
Pin19-TX1 -> RX= Pin4 -> RX
|-> Jumper11 auf 3,3V MUSS!!

5V -> Vcc= Pin1
|-> Jumper6 auf 5V -> 5V
|-> Jumper6 auf 3,3V -> 3,3V
Gnd -> Gnd= Pin2 -> Gnd

Ich würde anders als Du den D1 mit 3,3V betreiben. 5V bringen keinen Vorteil, höchstens Gefahren.
Auf dem Bild sehe ich möglicherweise ???? daß Du RX und TX gekreuzt hast.

Vorab noch ein Tipp: schaue dir nach Möglichkeit im Seriellen Monitor an, ob über die Schnittstelle von Arduino oder D1 Daten fließen.
Gruß Fürst Ruprecht
 
Hallo keeev, nun zur Software,
ich habe mir angesehen

// code version
#define VER "1.0a10-dev Azurit"

lang, lang ist's her.
Du findest folgende wichtige Stellen:

----------------------------------------------------------------------------
In mower.h:

// ------- baudrates---------------------------------
#define CONSOLE_BAUDRATE 19200 // baudrate used for console (Ardumower default: 19200)
#define BLUETOOTH_BAUDRATE 115200 // baudrate used for communication with Bluetooth module (Ardumower default: 19200)
#define ESP8266_BAUDRATE 115200 // baudrate used for communication with esp8266 Wifi module (Ardumower default: 115200)


// ------ used serial ports for console, Bluetooth, ESP8266 -----------------------------
#ifdef __AVR__
// Arduino Mega
#define Console Serial
#define ESP8266port Serial1 //siehe Anmerkung
#define Bluetooth Serial2
#else
// Arduino Due
// Due has two serial ports: Native (SerialUSB) and Programming (Serial) - we want to use 'SerialUSB' for 'Console'
#define Console Serial
#define ESP8266port Serial1
#define Bluetooth Serial2 // Ardumower default
#endif
----------------------------------------------------------------------------
In mower.cpp:

if (esp8266Use) {
Console.println(F("Sending ESP8266 Config"));
//ESP8266port.begin(ESP8266_BAUDRATE,SERIAL_8O1);
//ESP8266port.begin(ESP8266_BAUDRATE);
//ESP8266port.println(esp8266ConfigString);
//ESP8266port.flush();
//ESP8266port.end();
rc.initSerial(&ESP8266port, ESP8266_BAUDRATE);
} else if (bluetoothUse) {
rc.initSerial(&Bluetooth, BLUETOOTH_BAUDRATE);
}
---------------------------------------------------------------------------



Anmerkung: Ich hatte auch Probleme bei der Inbetriebnahme, möglicher Weise weil ich auch völloig neu im Thema war.
Bekam also den esp auch nicht zum Laufen und habe dann direkt auf der Rückseite des Due die Pins TX2/RX2 für den Webserver-Anschluß benutzt - bis heute!
Dann mußt Du natürlich aus #define ESP8266port Serial1 -> machen: #define ESP8266port Serial2

Probiere mal diese Einstellungen.
Gruß Fürst Ruprecht
 
Hallo Fürst Ruprecht,

wie oben bereits erwähnt, habe ich die DEV-Version von AzuritBer verwendet!
Das Bild aus dem vorherigen Post ist nicht mehr aktuell. Aktuell läuft bei mir AzuritBer (master) mit ESP32 angeschlossen am WLAN-Port, deswegen hab ich bei der Bluetooth config einfach Serial2 mit Serial1 getauscht und bluetoothUse ist noch TRUE, d.h. es ist aktuell wie, wenn der ESP am Bluetooth-Port angeschlossen wäre --> das funktioniert problemlos, deswegen muss es meiner Meinung nach ein Einstellungsproblem sein.

Ich werde mal die Baudraten-Einstellung testen und berichten. Die Baudrate im ESP-Code aber so belassen?

Gruß
keeev

​

 
Kannst du mal analog zu meinem Post die Code-Fragmente hier einstellen, die beschreiben, welche Schnittstelle du verwendest und welche Baudrate. Und schreibe nochmal bitte die genaue Version von AzuritBer.
 
Hi Fürst Ruprecht,

erstmal danke für die Unterstützung. Mit folgenden Werten funktioniert es nicht bei mir - anbei die Code-Fragmente:

Version (DEV branch auf GitHub):
#define VER "1.86-Azuritber GY-521"
Version WebControl:
#define VERSION " Version from 30.07.2022 for SPIFFS and SD-Card Use with WiFiMulti"

Mower.h: (bluetoothUse = TRUE)
#define Console Serial
//#define Console SerialUSB
#define CONSOLE_BAUDRATE 115200 // baudrate used for Raspberry PI console
#define Bluetooth Serial1 // Ardumower default OK for ESP32 or HC05
#define BLUETOOTH_BAUDRATE 19200 // baudrate used for communication with Bluetooth module
#define BLUETOOTH_PIN 1234

TeensyMowerWebControl_ESP32_30072022: (Verbindung ESP - PCB = RX2/TX2)
#define Serial_ESP_to_PCB Serial2 // Serial Connection between ESP and PCB, ESP-Pin : RX2/TX2
#define Serial_ESP_to_USB Serial // Serial Connection from ESP via USB to PC (arduino Monitor/Plotter)
#define BAUDRATE_ESP_to_PCB 115200
#define BAUDRATE_ESP_to_USB 115200
 
Zuletzt bearbeitet:
Hallo Keeev,
schau mal hier:
#define BLUETOOTH_BAUDRATE 19200 // baudrate used for communication with Bluetooth module
#define BAUDRATE_ESP_to_PCB 115200
das ist ein Widerspruch.
Richtig wäre beides auf 115200 baud zu setzen:

Due-Programm:
#define Bluetooth Serial1 -> TX1/RX1, Stecker P44
#define BLUETOOTH_BAUDRATE 115200

D1-mini - ESP-WebServer:
der D1 mini hat nur eine Serielle Schnittstelle und zwar TX/RX. daher kannst du auch nativ/hardwaretechnisch nur "Serial" adressieren

#define Serial_ESP_to_PCB Serial // TX/RX
#define Serial_ESP_to_USB Serial // TX/RX
#define BAUDRATE_ESP_to_PCB 115200
#define BAUDRATE_ESP_to_USB 115200
Wenn nur das PCB angeschlossen ist, sollte das funktionieren.
Zum Programmieren mußt du das PCB trennen.
Du kannst aber wenn das Programm läuft mit der seriellen Schnittstelle (Arduino-IDE) mitlesen.
Lesen ist kein Problem, aber das beide, PCB und PC schreiben geht nicht.

Alternativ kann man eine zweite Serielle Schnittstelle definieren (was du eigentlich nicht brauchst)
#include <SoftwareSerial.h>
SoftwareSerial Serial2(D5, D6); // RX2, TX2 (2, weil wir Serial2 definiert haben, ist aber vollkommen egal, weil es RX2/TX2 hardwaretechnisch nicht gibt)
#define Serial_ESP_to_PCB Serial // TX/RX
#define Serial_ESP_to_USB Serial2 // TX2/RX2
#define BAUDRATE_ESP_to_PCB 115200
#define BAUDRATE_ESP_to_USB 115200

Insgesamt wäre es besser, du würdest einen "alten" esp32 benutzen. Der hat mehr Leistung und mit USB-Anschluss hat man weniger Gefummel.
Gruß Fürst Ruprecht
 
Baudrate angepasst - geht leider immer noch nicht.

Es handelt sich um die ESP32 Version des D1 mini, die hat sehr wohl weitere serielle Schnittstellen
Hier das Pinout:

1787408102996.png

Wie gesagt, mit der gleichen Verdrahtung funktioniert bei mir ja auch der Code von ESP32_RFID_mqtt aus dem master-branch von AzuritBer.
Da wird schließlich auch Serial2 für RX2/TX2 verwendet und Serial für den USB-Anschluss - siehe hier: ESP32_RFID_mqtt

UPDATE:

Vielen lieben Dank Fürst Ruprecht, nach Anpassung der Baudrate und Tausch aller Verbindungskabel funktioniert es... Scheinbar hatte ich einige kalte Lötstellen bzw. schlechte Verbindungen!

Was mir gerade noch auffällt:
- Sollte die Console in der WebControl nicht etwas anzeigen, wenn ich den Mäher per Knopfdruck starte?
- Die Verbindung über Pfod-App funktioniert auch nicht oder? Habe eine leere Anzeige aber bin connected. (USEPFOD ist defined)
 
Zuletzt bearbeitet:
Wenn ich mich recht erinnere, war die console für den due zu viel. Die haben wir beim Teensy benutzt. Da müsste ich aber noch einmal nachsehen. Wahrscheinlich muß sie auch im code über #define aktiviert werden.
Die Android-App funktioniert nicht mit dem esp32-Server. (weil ich sie nicht habe und auch kein Gerät dafür).
Freut mich, daß es jetzt bei Dir funktioniert.
Ich melde mich noch zur Console.
Gruß Fürst Ruprecht
 
Oben