Ardumower im zentralen Haus-Leitsystem

Hallo Kilian,
muss in der aktuellen Ardumower 1.0a7-Azurit-dev am Code noch etwas angepasst werden?
ich komme leider nicht über diesen Punkt weiter.

config_WiFi.jpg


Also er nimmt scheinbar den Config-String nicht an.
Gruß
Stephan
Attachment: https://forum.ardumower.de/data/media/kunena/attachments/921/config_WiFi.jpg/
 
Zuletzt bearbeitet von einem Moderator:
Tolle Arbeit,

ich hatte auch schon daran gedacht meinen Mower in den fhem zu Integrieren. Bin aber, da wlan nicht lief, noch nicht rangegangen.

Sind deine Anpassungen an der Mower Firmware eingescheckt oder muss ich die Manuell einfügen ?

Stefan
 
Ich werde mich mal an ein Tutorial setzen, es is nicht so schwer den Ardumower Wlan beizubringen.... nutze nur noch Wlan, ich finde es viel besser und Stabiler als Bluetooth.... mehr Reichweite, besser von anderen Geräten zu erreichen usw....

den Gedanken mit dem Fhem bzw in meinem Fall Homematic einbinden hab ich auch, kann ja über Putty zb. über tellnet auf meinen Mower zugreifen, ihn starten, alles machen, bekomme den Datenstring mit Werten usw... habe jetzt nur noch das Problem, das ich die Daten nicht in meiner Homematic einbinden kann.... könntet ihr mir da Helfen?

Gruß
Benni
 
Mit der Homematic dürfte schwer werden, da du dort nur auf die Homematic Komponenten zugreifen kannst. Deswegen habe ich fhem im Einsatz Universeller gehts nicht für die Haussteuerung allerdings mit Programmieraufwand verbunden.

Und für unseren Mower könnte man dann ein Modul schreiben über das fhem dann mit dem Mower kommunizierst.
Mähe alle zwei Tage aber nur wenn es nicht Regnet und der Sprenger nicht an ist.

Stefan
 
Und für unseren Mower könnte man dann ein Modul schreiben über das fhem dann mit dem Mower kommunizierst.
Mähe alle zwei Tage aber nur wenn es nicht Regnet und der Sprenger nicht an ist.

Japp, genau so meinte ich das auch, aber man kann auch Virtuelle schalter in der Homematic einbinden, habe es selbst schon so mit meiner anwesenheits erkennung am laufen, das Zauberwort heißt cux-daemon
 
Falls jemand Interesse hat, ich hab da mal ein Kleines Tutorial zum einrichten des ESP8266 geschrieben
zu finden unter Ardumower Wlan Tutorial

Gruß
Benni
 
Hallo Kilian

kann dein Programm auch über Seriel die Daten Senden /Empfangen ?

Ich habe meine Datenübermittlung nicht über WLan ( ich bekomme es nicht am laufen) sondern über ein Radio Telemetry Modul aus dem Modellbau , er überträgt 57600 B. seriel.

Gruß
Norbert
 
Hi Kilian,

das sieht wirklich gut aus..

Muss ich am Wochenende gleich mal probieren.

Ist es auch Möglich die ausgelesenen Daten irgenwo in eine Datei zu schreiben?

Viele Grüße aus München

Andreas
 
Hallo,

ich habe die letzten Abende dazu verwendet um meinen Mower ins FHEM zu integrieren.
Im Prinzip habe ich es ähnlich gemacht wie Kilian.
Auf dem ESP läuft ein kleiner Webserver, dessen Daten bequem per Browser abgerufen werden können.
Der Webserver kommuniziert ebenfalls mit PfodCmds mit dem Mega, sodass Commandos per URL-Aufruf abgegeben werden können.
Seine Daten bekommt der Webserver alle 5 Sek per Aufruf aus der robot.cpp loop.

Ich habe dazu die Dateien webserver.h und webserver.cpp ins Build eingefügt s.Anhang. Der Einbau in die Robot.cpp usw wird in der webserver.h Datei am Anfang erklärt.

Die Firmware für den ESP findet ihr auch im Anhang, dort muss nur noch die SSID und der Key angepasst werden.

Für FHEM-Nutzer können die Daten per HTTPMod Modul und entsprechender RegEx ausgelesen und CMDs abegeben werden.
Hier die Änderungen in der fhem.cfg

Code:
define Ardumower dummy
attr Ardumower room test
define ArduWeb HTTPMOD [URL]http://192.168.1.61:80/info[/URL] 20

attr ArduWeb userattr reading1Name readingsName readingsName_batteryChargeCycles readingsName_batteryRechargedCapacityAvg readingsName_batteryRechargedCapacityTotal readingsName_batteryRechargedCapacityTrip readingsName_humidity readingsName_mode readingsName_mowing readingsName_pattern readingsName_state readingsName_temperature readingsName_totalMowingTime readingsName_triptime readingsName_version readingsRegex_batteryChargeCycles readingsRegex_batteryRechargedCapacityAvg readingsRegex_batteryRechargedCapacityTotal readingsRegex_batteryRechargedCapacityTrip readingsRegex_humidity readingsRegex_mode readingsRegex_mowing readingsRegex_pattern readingsRegex_state readingsRegex_temperature readingsRegex_totalMowingTime readingsRegex_triptime readingsRegex_version
attr ArduWeb group Ardumower
attr ArduWeb readingsName_batteryChargeCycles batteryChargeCycles
attr ArduWeb readingsName_batteryRechargedCapacityAvg batteryRechargedCapacityAvg
attr ArduWeb readingsName_batteryRechargedCapacityTotal batteryRechargedCapacityTotal
attr ArduWeb readingsName_batteryRechargedCapacityTrip batteryRechargedCapacityTrip
attr ArduWeb readingsName_mowing mowing
attr ArduWeb readingsName_pattern pattern
attr ArduWeb readingsName_state state
attr ArduWeb readingsName_totalMowingTime totalMowingTime
attr ArduWeb readingsName_triptime triptime
attr ArduWeb readingsName_version Version
attr ArduWeb readingsRegex_batteryChargeCycles Battery[s]charging[s]cycles[s]([0-9]+)
attr ArduWeb readingsRegex_batteryRechargedCapacityAvg Battery recharged capacity average [\(]mAh[\)]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_batteryRechargedCapacityTotal Battery recharged capacity total [\(]Ah[\)]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_batteryRechargedCapacityTrip Battery recharged capacity trip [\(]mAh[\)]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_mode Mode: ([0-9])
attr ArduWeb readingsRegex_mowing Mowing[s]is[s]([0-1])
attr ArduWeb readingsRegex_pattern Pattern[s]is[s]([A-Z]+)
attr ArduWeb readingsRegex_state State[s]is[s]([0-9a-zA-Z]+)
attr ArduWeb readingsRegex_totalMowingTime Mowing[s]time[s]total[s][\(]hrs[\)][s]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_triptime Mowing[s]time[s]trip[s][\(]min[\)][s]([0-9]+)
attr ArduWeb readingsRegex_version Ardumower[s]+([0-9][.][a-zA-Z0-9]+[-][a-zA-Z]+[-][a-zA-Z]+)
attr ArduWeb room test
attr ArduWeb stateFormat State: state --- Mowing: mowing --- TripTime: triptime
define ArduMow notify ArdumowerModeSelector:* {
	if ("$EVENT" eq "OFF"){
		GetFileFromURL("http://192.168.1.61/ro");;
		fhem("setreading ArduWeb mode 0");;
		
	}
	if ("$EVENT" eq "AutoMode"){
		GetFileFromURL("http://192.168.1.61/ra");;
		fhem("setreading ArduWeb mode 1");;
	}
        if ("$EVENT" eq "Home"){
		GetFileFromURL("http://192.168.1.61/rh");;
		fhem("setreading ArduWeb mode 2");;
	}
        if ("$EVENT" eq "PeriTrack"){
		GetFileFromURL("http://192.168.1.61/rk");;
		fhem("setreading ArduWeb mode 3");;
	}
        if ("$EVENT" eq "RC"){
		GetFileFromURL("http://192.168.1.61/rc");;
		fhem("setreading ArduWeb mode 4");;
	}
        if ("$EVENT" eq "delErr"){
		GetFileFromURL("http://192.168.1.61/z00");;
		fhem("setreading ArduWeb mode 5");;
	}
}
attr ArduMow disable 0
attr ArduMow group Ardumower
attr ArduMow room test
define ArdumowerModeSelector dummy
attr ArdumowerModeSelector eventMap 1:AutoMode 0:OFF 2:Home 3:PeriTrack 4:RC 5:delErr
attr ArdumowerModeSelector group Ardumower
attr ArdumowerModeSelector room test
attr ArdumowerModeSelector webCmd 0:1:2:3:4:5
define ArduMode notify ArduWeb:mode:.* {
	
	fhem("set ArdumowerModeSelector $EVTPART1");;
}
attr ArduMode room test


Bin jetzt nicht der Programmierfuchs, Verbesserungen sind willkommen.

Evtl hilft es dem ein oder anderen
Gruß Frederic




webserver.zip

Attachment: https://forum.ardumower.de/data/media/kunena/attachments/3897/webserver.zip/
 
Zuletzt bearbeitet von einem Moderator:
Hallo Frederic,

ich habe auch ein Fhem System für Heizung, Licht, Bewässerung und Alarmanlage. Jetzt kann ich schön den Mowern einbinden damit er nicht bei Bewässerung losfährt und über die Wetterdaten von Fhem kann ich Ihn auch bei Regen in der garage lassen.

Danke ich werde es mal testen

Stefan
 
Bastel gerade an einer Homematic-Integration, läuft auch schon ganz gut, nur ist das Ganze im Moment noch eine sehr rudimentäre Lösung ;)
Ziel soll sein den Status des Ardumowers in der Homematic abrufen zu können, und eben verschieden Befehle zu senden. Über die Homematic lassen sich Scripte ausführen die ich sozusagen direkt an den ESP schicken könnten, nur fehlt mir im Moment absolut der Ansatz da ich keine entsprechende Doku habe.
Gibt es denn irgendwo eine Übersicht für die pfod-Befehle? Vielleicht auch ein Beispiel wie der komplette Befehl aussehen muss?
 
alterSchwede schrieb:
Hallo,

ich habe die letzten Abende dazu verwendet um meinen Mower ins FHEM zu integrieren.
Im Prinzip habe ich es ähnlich gemacht wie Kilian.
Auf dem ESP läuft ein kleiner Webserver, dessen Daten bequem per Browser abgerufen werden können.
Der Webserver kommuniziert ebenfalls mit PfodCmds mit dem Mega, sodass Commandos per URL-Aufruf abgegeben werden können.
Seine Daten bekommt der Webserver alle 5 Sek per Aufruf aus der robot.cpp loop.

Ich habe dazu die Dateien webserver.h und webserver.cpp ins Build eingefügt s.Anhang. Der Einbau in die Robot.cpp usw wird in der webserver.h Datei am Anfang erklärt.

Die Firmware für den ESP findet ihr auch im Anhang, dort muss nur noch die SSID und der Key angepasst werden.

Für FHEM-Nutzer können die Daten per HTTPMod Modul und entsprechender RegEx ausgelesen und CMDs abegeben werden.
Hier die Änderungen in der fhem.cfg

Code:
define Ardumower dummy
attr Ardumower room test
define ArduWeb HTTPMOD [URL]http://192.168.1.61:80/info[/URL] 20

attr ArduWeb userattr reading1Name readingsName readingsName_batteryChargeCycles readingsName_batteryRechargedCapacityAvg readingsName_batteryRechargedCapacityTotal readingsName_batteryRechargedCapacityTrip readingsName_humidity readingsName_mode readingsName_mowing readingsName_pattern readingsName_state readingsName_temperature readingsName_totalMowingTime readingsName_triptime readingsName_version readingsRegex_batteryChargeCycles readingsRegex_batteryRechargedCapacityAvg readingsRegex_batteryRechargedCapacityTotal readingsRegex_batteryRechargedCapacityTrip readingsRegex_humidity readingsRegex_mode readingsRegex_mowing readingsRegex_pattern readingsRegex_state readingsRegex_temperature readingsRegex_totalMowingTime readingsRegex_triptime readingsRegex_version
attr ArduWeb group Ardumower
attr ArduWeb readingsName_batteryChargeCycles batteryChargeCycles
attr ArduWeb readingsName_batteryRechargedCapacityAvg batteryRechargedCapacityAvg
attr ArduWeb readingsName_batteryRechargedCapacityTotal batteryRechargedCapacityTotal
attr ArduWeb readingsName_batteryRechargedCapacityTrip batteryRechargedCapacityTrip
attr ArduWeb readingsName_mowing mowing
attr ArduWeb readingsName_pattern pattern
attr ArduWeb readingsName_state state
attr ArduWeb readingsName_totalMowingTime totalMowingTime
attr ArduWeb readingsName_triptime triptime
attr ArduWeb readingsName_version Version
attr ArduWeb readingsRegex_batteryChargeCycles Battery[s]charging[s]cycles[s]([0-9]+)
attr ArduWeb readingsRegex_batteryRechargedCapacityAvg Battery recharged capacity average [\(]mAh[\)]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_batteryRechargedCapacityTotal Battery recharged capacity total [\(]Ah[\)]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_batteryRechargedCapacityTrip Battery recharged capacity trip [\(]mAh[\)]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_mode Mode: ([0-9])
attr ArduWeb readingsRegex_mowing Mowing[s]is[s]([0-1])
attr ArduWeb readingsRegex_pattern Pattern[s]is[s]([A-Z]+)
attr ArduWeb readingsRegex_state State[s]is[s]([0-9a-zA-Z]+)
attr ArduWeb readingsRegex_totalMowingTime Mowing[s]time[s]total[s][\(]hrs[\)][s]([0-9]+[.][0-9]{2})
attr ArduWeb readingsRegex_triptime Mowing[s]time[s]trip[s][\(]min[\)][s]([0-9]+)
attr ArduWeb readingsRegex_version Ardumower[s]+([0-9][.][a-zA-Z0-9]+[-][a-zA-Z]+[-][a-zA-Z]+)
attr ArduWeb room test
attr ArduWeb stateFormat State: state --- Mowing: mowing --- TripTime: triptime
define ArduMow notify ArdumowerModeSelector:* {
	if ("$EVENT" eq "OFF"){
		GetFileFromURL("http://192.168.1.61/ro");;
		fhem("setreading ArduWeb mode 0");;
		
	}
	if ("$EVENT" eq "AutoMode"){
		GetFileFromURL("http://192.168.1.61/ra");;
		fhem("setreading ArduWeb mode 1");;
	}
        if ("$EVENT" eq "Home"){
		GetFileFromURL("http://192.168.1.61/rh");;
		fhem("setreading ArduWeb mode 2");;
	}
        if ("$EVENT" eq "PeriTrack"){
		GetFileFromURL("http://192.168.1.61/rk");;
		fhem("setreading ArduWeb mode 3");;
	}
        if ("$EVENT" eq "RC"){
		GetFileFromURL("http://192.168.1.61/rc");;
		fhem("setreading ArduWeb mode 4");;
	}
        if ("$EVENT" eq "delErr"){
		GetFileFromURL("http://192.168.1.61/z00");;
		fhem("setreading ArduWeb mode 5");;
	}
}
attr ArduMow disable 0
attr ArduMow group Ardumower
attr ArduMow room test
define ArdumowerModeSelector dummy
attr ArdumowerModeSelector eventMap 1:AutoMode 0:OFF 2:Home 3:PeriTrack 4:RC 5:delErr
attr ArdumowerModeSelector group Ardumower
attr ArdumowerModeSelector room test
attr ArdumowerModeSelector webCmd 0:1:2:3:4:5
define ArduMode notify ArduWeb:mode:.* {
	
	fhem("set ArdumowerModeSelector $EVTPART1");;
}
attr ArduMode room test


Bin jetzt nicht der Programmierfuchs, Verbesserungen sind willkommen.

Evtl hilft es dem ein oder anderen
Gruß Frederic




webserver.zip

Hey,
ich wollte meinem Mower auch gern bei FHEM einbinden.
Leider bekomme ich den Code nicht ohne weiteres in der neuesten Version kompiliert.
In der webserver.zip Datei scheinen mir auch Dateien zu fehlen. und zwar die webserver.cpp und webserver.h.

Verfolgt noch jemand das Thema mit der Fhem Anbindung?

MfG
netlars
 
Zuletzt bearbeitet von einem Moderator:
Danke,
für die Dateien.
sind das alle Dateien? ich bekomm es immer noch nicht gebaut. Der sagt webS sei nicht deklariert. Wenn ich das in webserver umbenenne, bekomm ich expected unqualified-id before '.' token

deshalb frag ich mich, ob das alle Dateien sind? Hast du das mit dem aktuelle Azurit 1.09a laufen?

Grüße
netlars
 
netlars schrieb:
Danke,
für die Dateien.
sind das alle Dateien? ich bekomm es immer noch nicht gebaut. Der sagt webS sei nicht deklariert. Wenn ich das in webserver umbenenne, bekomm ich expected unqualified-id before '.' token

deshalb frag ich mich, ob das alle Dateien sind? Hast du das mit dem aktuelle Azurit 1.09a laufen?

Grüße
netlars

Ich habe es jetzt hin bekommen. Es läuft mit FHEM.
Es fehlten div. Deklarationen in den Dateien...

Danke für die Dateien und die Starthilfe.

Grüße
netlars
 
Zuletzt bearbeitet von einem Moderator:
Ein Problem ist mir aufgefallen, es zerschießt mir das Menu bei BT Verbindung in der ArduRemote App.
Mittels Fhem lässt sich der Mäher Lesen und Steuern.
Aber die BT App ist für Einstellungen ganz Nützlich.

Hat jemand eine Idee für eine Lösung?

MfG
netlars
 
Hallo netlars,
ich versuche das ganze auch ans laufen zu bekommen, bin aber blutiger Anfänger. Könntest Du bitte die fehlenden Deklarationen in den Dateien zur Verfügung stellen ?
Nach vielen Stunden erfolglosem Probierens stehe ich kurz davor aufzugeben.
Vielen Dank schon mal vorab.
 
Hey Dobi,
klar helfe ich gern, ich habe immerhin auch viele Stunden zu gebracht bis ich es am laufen hatte. Ich habe mittlerweile auch das BT FPOD Problem gelöst, das Menu wird nun Fehlerfrei angezeigt.

Im Anhang die INO für den ESP und ein Patch für die aktuelle Ardumower Azurit Version. Ich hoffe ich habe im Patch nichts übersehen.

Bei Fragen immer raus damit, ich versuche nach besten Wissen zu antworten.
Viel Glück

Mfg netlars
Attachment: https://forum.ardumower.de/data/media/kunena/attachments/4640/ardumower_webserver_fhem.zip/
 
Zuletzt bearbeitet von einem Moderator:
Oben