FHEM Forum

Verschiedenes => Bastelecke => ESP Familie => Thema gestartet von: Steffen am 30 Juli 2018, 12:06:14

Titel: Daten senden von Espeasy zu Espeasy?
Beitrag von: Steffen am 30 Juli 2018, 12:06:14
Hallo!

Ist es möglich auch irgendwie Daten von einem Espeasy(Wemos d1 Mini) System zu einem anderen Espeasy System zu senden?

Ich habe ein Boden Sensor und einen Wasser Temp Sonsor mit einem Solar Modul im Garten zu stehen, da benutze ich Fhem aber ein Kollege möchte das jetzt auch und würde gerne ein Display im Haus haben wo er die Daten ablesen kann, eine Zentrale(fhem,Pi/Mqtt) sollte dabei nicht ins Spiel kommen.

Gibt es da eine möglichkeit die Daten auf einen anderen Esp zu senden an dem ein LCD Display hängen würde?

Mfg Steffen
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Frank_Huber am 30 Juli 2018, 12:10:15
IMHO können die aktuellen Versionen Peer to Peer kommunizieren.
Müsstest du mal nachlesen und testen.

Gesendet von meinem Doogee S60 mit Tapatalk

Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: r00t2 am 30 Juli 2018, 12:19:37
Zitat von: Frank_Huber am 30 Juli 2018, 12:10:15
IMHO können die aktuellen Versionen Peer to Peer kommunizieren....
Ja, können sie: https://www.letscontrolit.com/wiki/index.php/Tutorial_SendTo bzw. https://www.letscontrolit.com/wiki/index.php/ESPEasy_Command_Reference
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: dev0 am 30 Juli 2018, 12:43:02
Zitat von: Steffen am 30 Juli 2018, 12:06:14
(fhem,Pi/Mqtt) sollte dabei nicht ins Spiel kommen
Auch wenn ich mich mal wieder unbeliebt mache: die Frage sollte dann besser nicht hier im Forum, sondern bei den Entwicklern von ESP Easy gestellt werden, wenn es die Dokumentation nicht her gibt. Das ist aber mWn nicht der Fall ohne jetzt explizit nachgesehen zu haben.
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: r00t2 am 30 Juli 2018, 14:24:38
Zitat von: dev0 am 30 Juli 2018, 12:43:02... Das ist aber mWn nicht der Fall ohne jetzt explizit nachgesehen zu haben.
Wie gesagt: Die aktuelle ESPEasy Commandref hält SendTo bereit:

Command      Class  Purpose                                Syntax
SendTo       Rules  Send command to other ESP (using UDP)  SendTo <unit nr>, <command>
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Klaus0815 am 30 Juli 2018, 14:46:49
Es gab da mal was, nannte sich global sync
Du konntest dann z.B. an einen ESP einen Sensor anschließen, als Task 1 definieren, dann hat der andere ESP auch auf Kanal 1 diesen Wert angezeigt

Allerdings wurde das Ding wohl umbenannt:
https://github.com/letscontrolit/ESPEasy/issues/1129 (https://github.com/letscontrolit/ESPEasy/issues/1129)
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: mommfried am 03 November 2018, 10:05:55
Ich stand auch gerade vor dem Problem, ist aber eigentlich ganz einfach:
Einen Controller "ESPEasy P2P Networking" im Sender einstellen, vorher unter Tools, advanced settings das Inter-ESPEasy Network einstellen.
Dann unter dem entsprechenden Gerät senden an Controller ...
Dann kommt in meinem Fall folgendes beim Empfänger an (hier natürlich auch das P2P Netzwerk einstellen):
EVENT: Lichtsensor#Lux=1200.00

:D


Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Dondolo am 06 Juli 2019, 09:42:37
Zitat von: mommfried am 03 November 2018, 10:05:55
Ich stand auch gerade vor dem Problem, ist aber eigentlich ganz einfach:
Einen Controller "ESPEasy P2P Networking" im Sender einstellen, vorher unter Tools, advanced settings das Inter-ESPEasy Network einstellen.
Dann unter dem entsprechenden Gerät senden an Controller ...
Dann kommt in meinem Fall folgendes beim Empfänger an (hier natürlich auch das P2P Netzwerk einstellen):
EVENT: Lichtsensor#Lux=1200.00

:D

Stimmt die Verbindung ist einfach und funktioniert auch mit mehreren Wemos. Aber wie versendest du den Wert des Licht Sensors? Mit sendto kommt das Event an aber nicht der Wert.
Ich sehe beim Empfänger nur Event,value?
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: DasQ am 06 Juli 2019, 13:24:24
zitierst, aber liest nicht? :o ::)
steht doch in dem posting drin ....

ZitatDann unter dem entsprechenden Gerät senden an Controller ...
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: mommfried am 06 Juli 2019, 18:42:44
Wenn man etwas kennt, ist die Lösung einfach und auf der Hand liegend ;-)
Schau Dir mal die Geräte im Empfänger an :-) nach dem Du die Daten an den Controller "ESPEasy P2P Networking" geschickt hast.
Habe gerade keine Zeit, muß drucken (ja, 3D Druck ist eine Sucht :-), daher keine ausführlichere Antwort, sollte aber auch nicht nötig sein.

Schönen Gruß

Momme
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Dondolo am 06 Juli 2019, 20:24:47
Zitat von: mommfried am 06 Juli 2019, 18:42:44
Wenn man etwas kennt, ist die Lösung einfach und auf der Hand liegend ;-)
Schau Dir mal die Geräte im Empfänger an :-) nach dem Du die Daten an den Controller "ESPEasy P2P Networking" geschickt hast.
Habe gerade keine Zeit, muß drucken (ja, 3D Druck ist eine Sucht :-), daher keine ausführlichere Antwort, sollte aber auch nicht nötig sein.

Schönen Gruß

Momme
[/

Dann stehe ich wohl mal wieder auf der Leitung.

Was ich hinbekomme ist, dass ein LED Devise von verschiedenen Wemos die Daten anzeigt. Weil aber die unterschiedlichen Daten sich gegenseitig beeinflussen (überschreiben) wollte ich die Daten in einem Unit sammeln und zusammen per sendto verschicken.

Wie geschrieben, im LOG steht Event,value und nicht Event=value, damit kann ich ja das Ereignis nicht weiterverarbeiten.

Wenn es nur eine Kleinigkeit ist, wäre schön toll!

Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: DasQ am 06 Juli 2019, 21:06:58
Vergiss sendto ... die espeasy Firmware ermöglicht eine Art Mesh.
Wenn die wie oben beschrieben deine beiden esps configurierst, werden die Daten über den Controller dem andern esp bereit gestellt.
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Dondolo am 07 Juli 2019, 08:46:40
Zitat von: DasQ am 06 Juli 2019, 21:06:58
Vergiss sendto ... die espeasy Firmware ermöglicht eine Art Mesh.
Wenn die wie oben beschrieben deine beiden esps configurierst, werden die Daten über den Controller dem andern esp bereit gestellt.

Ok danke, so langsam komme ich weiter. Ich habe jeweils ein dummy device mit vier values angelegt.
Mit taskvalueset kann ich die Werte zu ordnen und sehe die Werte dann auch bei dem anderen dummy device.
Aber nicht dauerhaft und irgend ein hoher Wert überschreibt immer wieder. (Der Wert ist noch vom ausprobieren irgendwie present).
Vom Ablauf, wenn die Events mit value im Meshsystem vorliegen müsste ich sie ja auch einfach weiterverarbeiten können.
Aber wie?
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: DasQ am 07 Juli 2019, 09:41:27
Da ist meiner Meinung nach ,,rules" das Mittel der Wahl.

Da du auf ein Display visualisieren willst, empfiehlt es sich das über rules zu Befüllen.
Ich Sitz jetzt leider nicht am Rechner sonst hätt ich dir meine Küchenuhr gezeigt.
Problem ist, wenn mehr als die im Plugin zu befüllenden feldvariablen zu befüllen ist. Dynamisch wechselnde Inhalte, geht meines Wissens nicht an jedem Display. (Kann aber sein das sich da inzwischen was geändert hat, oder es gibt ein Hack .... wer weis.)
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Dondolo am 07 Juli 2019, 11:38:04
Zitat von: DasQ am 07 Juli 2019, 09:41:27
Da ist meiner Meinung nach ,,rules" das Mittel der Wahl.

Da du auf ein Display visualisieren willst, empfiehlt es sich das über rules zu Befüllen.
Ich Sitz jetzt leider nicht am Rechner sonst hätt ich dir meine Küchenuhr gezeigt.
Problem ist, wenn mehr als die im Plugin zu befüllenden feldvariablen zu befüllen ist. Dynamisch wechselnde Inhalte, geht meines Wissens nicht an jedem Display. (Kann aber sein das sich da inzwischen was geändert hat, oder es gibt ein Hack .... wer weis.)

Ja genau so was ähnliches, das Anzeigen auf dem LCD funktioniert per Rules Sendto von unterschiedlichen Units gut. Es wird aber immer wieder die Anzeige teilweise gelöscht wenn wieder ein Wert reinkommt von einem anderen Unit. Habe die Zeilen vom LCD einzelnen Units zugeordnet, trotzdem wird die folgende Zeile gestört.

Im Mesh ist es überhaupt nötig die Werte in ein dummy zu schreiben? Zurzeit funktioniert das bei mir mit zwei Wemos.
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Dondolo am 07 Juli 2019, 11:39:39
Zitat von: DasQ am 07 Juli 2019, 09:41:27
Da ist meiner Meinung nach ,,rules" das Mittel der Wahl.

Da du auf ein Display visualisieren willst, empfiehlt es sich das über rules zu Befüllen.
Ich Sitz jetzt leider nicht am Rechner sonst hätt ich dir meine Küchenuhr gezeigt.
Problem ist, wenn mehr als die im Plugin zu befüllenden feldvariablen zu befüllen ist. Dynamisch wechselnde Inhalte, geht meines Wissens nicht an jedem Display. (Kann aber sein das sich da inzwischen was geändert hat, oder es gibt ein Hack .... wer weis.)

Hab ich vergessen, danke für die Unterstützung bin auf dem Weg der Besserung.  :)
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: Dondolo am 07 Juli 2019, 19:40:59
Zitat von: DasQ am 07 Juli 2019, 09:41:27
Da ist meiner Meinung nach ,,rules" das Mittel der Wahl.

Da du auf ein Display visualisieren willst, empfiehlt es sich das über rules zu Befüllen.
Ich Sitz jetzt leider nicht am Rechner sonst hätt ich dir meine Küchenuhr gezeigt.
Problem ist, wenn mehr als die im Plugin zu befüllenden feldvariablen zu befüllen ist. Dynamisch wechselnde Inhalte, geht meines Wissens nicht an jedem Display. (Kann aber sein das sich da inzwischen was geändert hat, oder es gibt ein Hack .... wer weis.)

Mein Versuch, die Daten auf einem Unit per Dummy funktioniert soweit. Im Log des Unit mit LED Display steht:
Event: Dummy_Unterstand#Oben=17,4

Mit LCD,4,1,[Dummy_Unterstand#Oben] kommt nix im LCD an.

Ich hatte gehofft das Event mit value bekannt sind.
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: parabacus am 03 Mai 2020, 13:59:15
Hallo!

Auch wenn dieser Beitrag schon ein paar Tage alt ist - er passt genau zu meinem Problem, daher häng ich mich mal dran.

Ich hab bei meinem aktuellen Projekt zwei WEMOS D1 laufen - einer als Füllstandssensor für die Zisterne und ein zweiter soll den Füllstand visualisieren. Dafür hätte ich mir vorgestellt, dass das per P2P funktionieren soll - also mal ohne FHEM als Gateway.
Soweit tut das ganz auch - beide haben eine eindeutige Unit-Nr., auf beiden ist der selbe UDP-Port konfiguriert, der P2P-Controller aktiviert und auf dem Empfangs-WEMOS werden die Tasks auch automatisch generiert, sowie auch die Werte angezeigt, die auf der Sensor-Seite gemessen und zyklisch gesendet werden. Damit hatte ich schon erwartet am Ziel zu sein... - aber....

Auf der Empfangs-Seite möchte ich nun per Rules-Code den empfangenen Status (ein Generic - Dummy Device), der mir den Füllstand in Werten zw. 0..10 prozentual in 10%-Schritten übermittelt, z.B. mittels LEDs anzeigen. Zuerst mal grobgranular in 20%-Schritten, später vielleicht auch über ein Display.

Sinngemäss und nicht vollständig ungefähr so:

on System#Boot do // alle LEDS aus, init. Debug-Variable
gpio,0,0
gpio,2,0
gpio,12,0
gpio,13,0
gpio,14,0
TaskValueSet 4,1,255
endon

On Zisterne#ZisternenStatus do // Status 0 = Leer / 10 = Voll

if [Zisterne#ZisternenStatus]=0
gpio,0,0          // rote   LED    aus
gpio,2,0          // gelbe  LED    aus
gpio,12,0         // gelbe  LED    aus
gpio,13,0         // gruene LED    aus
gpio,14,0         // gruene LED    aus
TaskValueSet 4,1,0 // Debuginfo
endif

if [Zisterne#ZisternenStatus]=1 or [Zisterne#ZisternenStatus]=2
gpio,0,1          // rote   LED    an
gpio,2,0          // gelbe  LED    aus
gpio,12,0         // gelbe  LED    aus
gpio,13,0         // gruene LED    aus
gpio,14,0         // gruene LED    aus
TaskValueSet 4,1,1 // Debuginfo
endif

if [Zisterne#ZisternenStatus]=3 or [Zisterne#ZisternenStatus]=4
gpio,0,1          // rote   LED    an
gpio,2,1          // gelbe  LED    an
gpio,12,0         // gelbe  LED    aus
gpio,13,0         // gruene LED    aus
gpio,14,0         // gruene LED    aus
TaskValueSet 4,1,2 // Debuginfo
endif

endon


Zisterne#ZisternenStatus ist das Event, das zyklisch aktualisiert wird und enthält je nach Füllstand einen Wert 0..10 - funktioniert auf der Senderseite und im Log auf der Empfängerseite sehe ich das auch.

Irgendwie funktioniert das aber nicht. Die Variable in Task 4 habe ich als Debug-Info eingebaut und egal was ich mache oder der Sender überträgt - der Wert bleibt immer 255 - also passiert nach der Initialisierung nichts - also auch keine Auswertung - sprich der Event, um die if-else-Anweisungen auszuführen, wird nie durchlaufen.

Dass die Werte aktualisiert werden, sehe ich aber im Log auf Empfängerseite:
365801: EVENT: Zisterne#ZisternenStatus=6.00
366005: EVENT: Zisterne#=0.00
366064: EVENT: Zisterne#=0.00
366122: EVENT: Zisterne#=0.00
370550: EVENT: Fuellstand_Zisterne#Fuellstand=118.54
371020: EVENT: Zisterne#ZisternenStatus=6.00
371224: EVENT: Zisterne#=0.00
371289: EVENT: Zisterne#=0.00
371348: EVENT: Zisterne#=0.00
371537: EVENT: Fuellstand_Zisterne_Liter#Liter=1996.15
371571: EVENT: Fuellstand_Zisterne_Liter#=0.00
371630: EVENT: Fuellstand_Zisterne_Liter#=0.00
371691: EVENT: Fuellstand_Zisterne_Liter#=0.00
375185: BME280 : Humidity: 39.10
375185: BME280 : Barometric Pressure: 1020.87
375186: EVENT: Gartenhaus#Temperatur=21.18
375246: EVENT: Gartenhaus#Luftfeuchtigkeit=39.10
375329: EVENT: Gartenhaus#Druck=1020.87
375800: EVENT: Zisterne#ZisternenStatus=6.00
376008: EVENT: Zisterne#=0.00
376068: EVENT: Zisterne#=0.00
376128: EVENT: Zisterne#=0.00
380552: EVENT: Fuellstand_Zisterne#Fuellstand=118.49
381023: EVENT: Zisterne#ZisternenStatus=6.00
381228: EVENT: Zisterne#=0.00
381288: EVENT: Zisterne#=0.00
381348: EVENT: Zisterne#=0.00
381542: EVENT: Fuellstand_Zisterne_Liter#Liter=1965.44
381575: EVENT: Fuellstand_Zisterne_Liter#=0.00
381634: EVENT: Fuellstand_Zisterne_Liter#=0.00
381694: EVENT: Fuellstand_Zisterne_Liter#=0.00
385794: EVENT: Zisterne#ZisternenStatus=6.00
386000: EVENT: Zisterne#=0.00
386059: EVENT: Zisterne#=0.00
386123: EVENT: Zisterne#=0.00


Hat jemand eine Ahnung, wie man die übertragenen Werte in den Rules verwenden kann - gibt's da einen Trick?
Titel: Antw:Daten senden von Espeasy zu Espeasy?
Beitrag von: parabacus am 07 Juni 2020, 17:38:55
Falls es jemanden hilft, der auf das gleiche Problem stösst.. - hier die Lösung: https://www.letscontrolit.com/forum/viewtopic.php?f=6&t=7752&p=45016#p45016 (https://www.letscontrolit.com/forum/viewtopic.php?f=6&t=7752&p=45016#p45016)