Forum: Mikrocontroller und Digitale Elektronik Automower G3 mit USB Diagnoseport fernsteuern?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Manuel (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin,
ich habe versucht das ganze nachzubauen. Hat anfangs auch geklappt und 
ich konnte mich kurzzeitig verbinden. Aber dann ging das Display 
plötzlich aus und es fing vom Mainboard an zu stinken. :( Hab das Modul 
dann wieder abgeklemmt, aber das Display geht trotzdem nicht mehr an.
Stattdessen ist mir aufgefallen, dass der Prozessor jetzt sehr heiß 
wird. Hab das ganze dann mal unter dem Mikroskop betrachtet und 
festgestellt, dass der wohl nu ein Loch hat. Ich könnte heulen!

Hat jemand zufällig noch eine Hauptplatine über, die er mir verkaufen 
möchte?

(Wenn meine Frau das erfährt, bekomme ich richtig mecker. Die hat 
gesagt, ich soll den Mäher in Ruhe lassen.... ;-)

LG
Manuel

von Timo S. (timosch)


Bewertung
0 lesenswert
nicht lesenswert
Das ist natürlich nicht so gut :(
Magst mal ein/zwei Bilder von deinem Aufbau schicken?

Steuerung habe ich leider nicht mehr...

Günstigster Neupreis (Schnellsuche)
https://shop.mower24.de/Hauptplatine-Board-G3-P1

Defekt, evtl mit guter reinigung (+ paar Widerstände und FET´s 
tauschen)getan
Ebay-Artikel Nr. 283858542404

Vllt besser als nur Steuerung...
https://www.ebay-kleinanzeigen.de/s-anzeige/husqvarna-automower-308-maehroboter-voll-funktionsfaehig/1385275922-89-4969

Oder mit Risiko
https://www.ebay-kleinanzeigen.de/s-anzeige/husqvarna-automower-308/1384561100-89-3010

LG

: Bearbeitet durch User
von Daniel D. (duesentrieb2168)


Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe meine Änderungen am developer-branch eingecheckt:
https://gitlab.com/nbrgmn/wall-e-esp8266-automower/-/tree/develop

- Variablen Mähernamen und Typ über Variable
- Fehlercodes des R70li ergänzt
- "(auto)"/"(man)" beim Status ergänzt beim Parken, etc.
- Automatische CRC-Berechnung über "/send?cmdAutoCrc" über die Webseite
- Ausgabe der Starttage für Timer2 über die Webseite (Starttage von 
Timer 1 und 2 können unabhängig gesetzt werden)
- Setzen der Start- und Endzeiten für Timer1/2 über die Webseite
- Automatisierungs-Befehle über "/send?automation": MOWTODAY / 
MOWNEXTDAY (z.B. bei Regen) / ABORTDAYS (entfernt die geplanten Tage bei 
Timer2)

Meine Automatisierung mache ich so:
- Timer1 ist auf jeden Tag von 10:00-10:10 gesetzt
- Bei aktivem DEF "WITH_AUTOMATION" wird der Mäher als erste Aktion des 
Programms auf STOP gesetzt
- Nach 17 Minuten (einstellbar) wird der Mäher wieder auf AUTO gesetzt
- Timer2 ist bei mir von 10:10-20:00 gesetzt, aber kein Tag beim Start 
hinterlegt
- Mit dem Befehl MOWTODAY wird der Tag von Timer2 auf heute gesetzt und 
die Automatik gestartet
- Wenn es zu regnen anfängt und der Mäher aktiv ist, setzt meine 
Automatisierung (FHEM) ein "MOWNEXTDAY" ab, was den aktuellen Tag von 
Timer2 entfernt und auf den nächsten Tag setzt - der Mäher fährt zurück 
und startet am nächsten Tag.

Hier sind außerdem meine Definitionen für FHEM:
defmod Mower HTTPMOD http://xxx.xxx.xxx.xxx/json 60
attr Mower reading01Name Status
attr Mower reading01Regex "mower":"([a-zA-Z0-9-:() ,']*)"
attr Mower reading02Name Cover
attr Mower reading02Regex "cover":"([a-zA-Z0-9-:() ,']*)"
attr Mower reading03Name BatteryVoltage
attr Mower reading03Regex "batteryvoltage":"([0-9.]+) V"
attr Mower reading04Name BatteryCapacity
attr Mower reading04Regex "batterycapacity":"\s?(.+) mAh"
attr Mower reading05Name FlowingCurrent
attr Mower reading05Regex "flowingcurrent":"\s?(-?[0-9.]+) mA"
attr Mower reading06Name Temperature
attr Mower reading06Regex "temperature":"([0-9.]+)"
attr Mower reading07Name LastLogEntry
attr Mower reading07Regex "lastlogentry":"([a-zA-Z0-9-:.() ,']*)"
attr Mower reading08Name NextStart
attr Mower reading08Regex "nextstart":"([a-zA-Z0-9-:.() ,']*)"
attr Mower set01Name Start
attr Mower set01NoArg 1
attr Mower set01URL http://192.168.178.72/send?name=START
attr Mower set02Name Stop
attr Mower set02NoArg 1
attr Mower set02URL http://192.168.178.72/send?name=STOP
attr Mower set03Name Home
attr Mower set03NoArg 1
attr Mower set03URL http://192.168.178.72/send?name=HOME
attr Mower set04Name Manual
attr Mower set04NoArg 1
attr Mower set04URL http://192.168.178.72/send?name=MAN
attr Mower set05Name Automatic
attr Mower set05NoArg 1
attr Mower set05URL http://192.168.178.72/send?name=AUTO
attr Mower set06Name MowToday
attr Mower set06NoArg 1
attr Mower set06URL http://192.168.178.72/send?automation=MOWTODAY
attr Mower set07Name MowNextDay
attr Mower set07NoArg 1
attr Mower set07URL http://192.168.178.72/send?automation=MOWNEXTDAY
attr Mower set08Name AbortDays
attr Mower set08NoArg 1
attr Mower set08URL http://192.168.178.72/send?automation=ABORTDAYS
attr Mower stateFormat Status
defmod di_Mower_Start DOIF ([10:05|Mo Fr]) (set Mower MowToday) DOELSE
defmod di_Mower_Rain DOIF ([WeatherStation:isRaining] eq "yes" and ([Mower:Status] eq "mowing (auto)" or [Mower:Status] eq "searching")) (set Mower MowNextDay) DOELSE

Viel Erfolg! :-)

von Alexei (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Moin zusammen,

erstmal vielen Dank für eure tolle Arbeit hier!
Bei mir lief bis heute der wall-e Code in der Version 1.15 ohne 
wifiMulti. MQTT ist sehr praktisch. Das ganze lief über Wochen ohne 
große Probleme. Ab und zu hängst dich das Webinterface auf (Ping 
funktioniert noch) und mein Gardena R70Li nimmt die Befehle nicht an. 
Alles halb so wild.

Ich habe heute die Änderungen von Daniel (wall-e Version 1.16) 
übernommen.

Der Mäher bleibt nun nach ein paar Sekunden einfach stehen. Scheint den 
Befehl STOP vom esp (wemos d1 mini pro) zu bekommen. Man kann ihn wieder 
über die Commands oder am Mäher starten, aber der bleibt wieder nach ein 
paar Sekunden stehen.
Egal im welchem Modus er sich befindet. Ich hab schon alles mehrfach 
überprüft. Im Code hab ich dann den Teil mit der Automatisierung 
komplett rausgenommen und sogar ein aufspielen der zuvor installieren 
Version 1.15 brachte keine Besserung.
Am Ende habe ich den esp ausgebaut und nun fährt der Kleine wie gewohnt.
Was mich wundert ist, dass auch ein aufspielen von alten Version keine 
Besserung gebracht hat.
Ich werde mir mal den neuen Code die Tage mal genauer angucken und das 
Ganze noch mal testen. Vielleicht hat einer von euch dasselbe Phänomen?

Grüße
Alexei

von Daniel D. (duesentrieb2168)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Alexei,
dass der Mäher nach dem Aktivieren in STOP versetzt wird, ist so gewollt 
- siehe auch die Info aus meinem vorherigen Beitrag:
"- Bei aktivem DEF "WITH_AUTOMATION" wird der Mäher als erste Aktion des
Programms auf STOP gesetzt"
Nach ~17 Minuten wird er automatisch wieder gestartet. Manuelles Starten 
über die Weboberfläche oder das Bedienpad des Mähers funktionieren bei 
mir ebenfalls problemlos. Ich habe übrigens auch einen Wemos D1 mini Pro 
verbaut.
Das einzige was ich mir gerade vorstellen kann wäre ein Kabelbruch, der 
bei der Bewegung des Mähers kurz zu einem Spannungsabfall und Neustart 
des esp führt und damit regelmäßig den STOP-Befehl auslöst. Warum das 
aber bei der Version 1.15 auch auftritt, kann ich mir dann nicht 
erklären...

von Alexei (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Daniel,

es muss am esp oder der Software liegen. Einen Kabelbruch kann ich 
ausschließen. Das Problem trat direkt nach einem OTA Update auf Version 
1.16 auf und der Mäher fährt mit ausgebautem Modul ohne Probleme. 
Neustarten des esp fällt auch weg, dass würde ich in der Ping History 
sehen. Bei einem Neustart gibt es bei mir immer 1-2 Paketverluste.
Ich muss es nun mit einem anderen esp testen. Melde mich dann noch 
einmal.
Danke.

von Alexei (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Nabend,

ich habe den Fehler in meiner Heimautomatisierung (Home Assistant) 
gefunden. Ich habe mit der Rest API rumgespielt und dabei wurde alle 
paar Sekunden STOP an den Mäher gesendet. Hab's jetzt durch Zufall 
entdeckt. Facepalm
Sorry für meine letzten Beiträge. Der Code funktioniert super und auch 
die Automatisierungserweiterung von Daniel ist eine feine Sache.

Gruß
Alexei

von Markus S. (schmeckm)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Daniel

sorry, kannst du nochmal kurz erklären und darauf eingehen, warum der 
Mäher nach dem Start wieder (kurz) auf Stop gesetzt werden muss?

Die Variable im Code habe ich gefunden:

//********************************************************************** 
*
//***  AUTOMATION 
******************************************************
//********************************************************************** 
*
#define WITH_AUTOMATION
int automationStartTimer = 1020; // seconds

Was muss ich jetzt genau tun, wenn ich den Mäher am morgen aus der 
Ladestation starten möchte?


Gruss, Markus

von Daniel D. (duesentrieb2168)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe meine Timer so gesetzt:
- Timer1 ist auf jeden Tag von 10:00-10:10 gesetzt
- Timer2 ist bei mir von 10:10-20:00 gesetzt, aber kein Tag zum Start
hinterlegt (über die Weboverfläche des ESP gesetzt)

Wenn der Mäher um 10:00 am Morgen startet, wird er vom ESP sofort 
gestoppt. Nach der in der Variablen "automationStartTimer" hinterlegten 
Zeit wird der Mäher vom ESP wieder gestartet, damit er am nächsten 
Morgen wieder aufwacht (idealerweise ist die Zeit mindestens so lang, 
dass Timer1 schon abgelaufen ist und kürzer als der Mäher wieder in 
Standby geht).

Zum Starten des Mähers das Kommando "MOWTODAY" senden 
(http://x.x.x.x/send?automation=MOWTODAY) - dadurch wird der Starttag 
von Timer2 auf den aktuellen Tag gesetzt.
Falls es während des Mähens regnen sollte, kann über "MOWNEXTDAY" der 
Starttag von Timer2 auf den nächsten Tag gesetzt 
(http://x.x.x.x/send?automation=MOWNEXTDAY).
Über das Kommando "ABORTDAYS" kann man die Tage für Timer2 wieder 
entfernen (http://x.x.x.x/send?automation=ABORTDAYS).

von Markus S. (schmeckm)


Bewertung
0 lesenswert
nicht lesenswert
Hallo Daniel,

ok jetzt ist es klarer wie es die Logik funktioniert. Wie funktioniert 
es beispielsweise wenn der Rasenmäher auf einen Hindernis läuft und 
hängen bleibt. Wie ist dann der Ablauf. Heisst es dann ich kann einfach 
den Fehler quittieren und auf am Mäher Startknopf drücken oder muss ich 
alles erneut über das WEb Interface schalten?

Markus

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.