Neues Modul: ESPEasy [war: ESPEasy ohne MQTT]

Begonnen von dev0, 18 Juli 2016, 11:53:28

Vorheriges Thema - Nächstes Thema

Kalli01

Hallo

ich wollte, wie auf http://www.fhemwiki.de/wiki/Batterie%C3%BCberwachung beschrieben ist, eine Überwachung der ESP einrichten

Dabei ist mir aufgefallen das die Zeit beim Status aktualisiert wird, obwohl der ESP nicht mehr angeschlossen ist.
Switch off 2016-09-09 13:57:53
presence absent 2016-09-11 19:58:53
state Swi:off 2016-09-11 19:58:53


Ist das so richtig?

dev0

Ob richtig oder falsch kann man so nicht sagen. Es ist im Moment aber so ;)
Schaue ich mir bei Gelegenheit an.

Kalli01

OK Danke.

Ich gehe halt immer erst einmal davon aus, das es so sein soll und ich es falsch verstehe. :)

Auch Danke für deine Arbeit

dev0

Du kannst auch das Attribut setState auf 0 setzen und dich selbst, mit einem userReading, um state/STATE kümmern.

Kalli01

Das kann ich so direkt nicht :d

Ich habe es erst einmal so gelöst, dass jedes ESP die Wlan Signalstärke sendet und die Funktion aus dem Wiki prüft einmal am Tag ob dieses Reading älter als 1 Stunde ist.

sdz35

Hallo,

espeasy scheint bei mir über json für die Temperatur nur noch true zu senden, was auch angezeigt wird.
Über HTTP wird die richtige Temperatur geholt.

Das ist mit espeasy 128-131 der Fall.
Ist vielleicht meine json Installation imRaspi falsch ?

2016.09.15 12:43:39 4: ESPEasy ESPEasy_Poolabdeckung_Wassertemperatur: presence: present
2016.09.15 12:43:39 5: ESP_B dispatch Poolabdeckung_Wassertemperatur::192.168.1.127::1::1::setreading||presence||present||0
2016.09.15 12:43:39 4: ESPEasy ESP_B: dispatch: Poolabdeckung_Wassertemperatur::192.168.1.127::1::1::setreading||presence||present||0
2016.09.15 12:43:39 4: ESPEasy ESPEasy_Poolabdeckung_Wassertemperatur: Temperature: 1
2016.09.15 12:43:39 5: ESP_B dispatch Poolabdeckung_Wassertemperatur::192.168.1.127::1::1::setreading||Temperature||1||1
2016.09.15 12:43:39 4: ESPEasy ESP_B: dispatch: Poolabdeckung_Wassertemperatur::192.168.1.127::1::1::setreading||Temperature||1||1
2016.09.15 12:43:39 5: ESPEasy ESP_B: no basic authentication required
2016.09.15 12:43:39 4: ESPEasy ESP_B: data: {"module":"ESPEasy","version":"1.02","data":{"ESP":{"name":"Poolabdeckung","unit":0,"version":9,"build":131,"sleep":0,"ip":"192.168.1.127"},"SENSOR":{"0":{"deviceName":"Wassertemperatur","valueName":"Temperature","type":1,"value":true}}}}
2016.09.15 12:43:39 5: ESPEasy ESP_B: header: {'Connection' => 'close','Content-Length' => '238','GET' => '/fhem?cmd=setreading%20Poolabdeckung%20Temperature%2023.31 HTTP/1.1','Host' => '192.168.1.111'}
2016.09.15 12:43:38 5: ESPEasy ESP_B: accepted tcp connect <= 192.168.1.127:17303
2016.09.15 12:43:38 4: Connection accepted from ESP_B_192.168.1.127_17303

sdz35

#171
hier noch die esp Seite leider etwas schlecht dargestellt:



<>
Task   Device   Name   Port   IDX/Variable   GPIO   Values
Edit
1   Temperature - DS18b20   Wassertemperatur   28-ff-4b-98-3e-4-0-3d   2   GPIO-5   Temperature:
23.69
Edit
2   Switch input   Relay      2   GPIO-4   Switch:
0
Edit
3   Switch input   Taster      3   GPIO-14   Switch:
0
Edit
4                  


dev0


sdz35


somebuddy

huhu ! :)

Ich stelle mich glaube ich irgendwie zu blöd an -.-

Ich möchte via FHEM auf meinem NodeMCU lediglich 5 GPIO Ports schalten. Ich habe folgendes gemacht.

- NodeMCU ( ESP Dev Board ) mit dem neuesten ESPEasy geflasht ( via Arduino ).
- ESPEasy Modul in FHEM eingefügt und Update durchgeführt.
- ESP Bridge wie im ersten Beitrag beschrieben erstellt.

Irgendwas scheint aber nicht richtig zu funktionieren bzw. ich bin vielleicht zu doof den ESP zu konfigurieren.
Ich habe den ESP nur einmal kurz dazu bekommen in FHEM ein Device zu erstellen.

- Autocreate ist an !

Ich habe auf dem ESP ein Switch Device erstellt  und den entsprechenden GPIO auf Masse gezogen. Dann wurde ein Device im Room ESPEasy erstellt.
Tests mit einem DHT22 blieben allerdings erfolglos. Es wurde einfach keine Temperatur angezeigt in der Weboberfläche des ESP.


Wie auch immer..

Welche ist denn nun die einfachste Vorgehensweise um einfach 4 Devices / Buttons in FHEM zu erhalten um auf dem ESP  jeweils für eine Sekunde ein GPIO auf Masse zu ziehen ?


Vielen Dank!

dev0

Zitat von: somebuddy am 19 September 2016, 07:24:29
Ich möchte via FHEM auf meinem NodeMCU lediglich 5 GPIO Ports schalten.
Ich habe auf dem ESP ein Switch Device erstellt  und den entsprechenden GPIO auf Masse gezogen
...
um auf dem ESP  jeweils für eine Sekunde ein GPIO auf Masse zu ziehen ?
Wieso ziehst Du einen GPIO auf Masse, wenn Du ihn über FHEM schalten möchtest?
Um GPIOs für einen Zeitraum zu schalten bietet ESPEasy die Befehle Pulse und LongPulse. Wie weiter oben schon beschrieben: https://forum.fhem.de/index.php/topic,55728.msg488460.html#msg488460

Zeige bitte ein verbose 4 Log und list der Bridge, jeweils in Code-Tags.

somebuddy

Zitat von: dev0 am 19 September 2016, 08:11:11
Wieso ziehst Du einen GPIO auf Masse, wenn Du ihn über FHEM schalten möchtest?

Das war nur zum Testen eines eingerichteten "Switch Device" im ESP Easy.
Vielen Dank. Alles klar.. reiche ich später nach.

feryy

Hello,
I'm a newbie with ESPEasy and FHEM

ESPEasy I set fine. I have ESP-01 only. DHT11 works. GPIO-0 switches the LED (http://192.168.100.138/control?cmd=GPIO,0,1)

But I do not know how to set it up FHEM.

I have this:

define espBridge ESPEasy bridge 8383
attr espBridge group ESPEasy Bridge
attr espBridge room ESPEasy

define ESPEasy_Teplomer_Obyvak_Teplomer ESPEasy 192.168.100.138 80 espBridge Teplomer_Obyvak_Teplomer
attr ESPEasy_Teplomer_Obyvak_Teplomer IODev espBridge
attr ESPEasy_Teplomer_Obyvak_Teplomer event-on-change-reading .*
attr ESPEasy_Teplomer_Obyvak_Teplomer group ESPEasy Device
attr ESPEasy_Teplomer_Obyvak_Teplomer room ESPEasy
attr ESPEasy_Teplomer_Obyvak_Teplomer stateFormat Temp: Temperature°C Hum: Humidity

define FileLog_ESPEasy_Teplomer_Obyvak_Teplomer FileLog /opt/fhem/log/ESPEasy_Teplomer_Obyvak_Teplomer-%Y.log ESPEasy_Teplomer_Obyvak_Teplomer
attr FileLog_ESPEasy_Teplomer_Obyvak_Teplomer logtype temp4hum4:Temp/Hum,text

define weblink_ESPEasy_Teplomer_Obyvak_Teplomer SVG FileLog_ESPEasy_Teplomer_Obyvak_Teplomer:weblink_ESPEasy_Teplomer_Obyvak_Teplomer:CURRENT
attr weblink_ESPEasy_Teplomer_Obyvak_Teplomer label "ESPEasy_Teplomer_Obyvak_Teplomer Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr weblink_ESPEasy_Teplomer_Obyvak_Teplomer room Plots


Data it collects but the plots are displayed.

The log file is this:

2016-09-28_07:46:03 ESPEasy_Teplomer_Obyvak_Teplomer Hum:23.00 Tem:19.00
2016-09-28_07:50:12 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 22.00
2016-09-28_07:50:12 ESPEasy_Teplomer_Obyvak_Teplomer Hum:22.00 Tem:19.00
2016-09-28_07:50:12 ESPEasy_Teplomer_Obyvak_Teplomer Temperature: 21.00
2016-09-28_07:50:12 ESPEasy_Teplomer_Obyvak_Teplomer Hum:22.00 Tem:21.00
2016-09-28_07:51:12 ESPEasy_Teplomer_Obyvak_Teplomer Temperature: 20.00
2016-09-28_07:51:12 ESPEasy_Teplomer_Obyvak_Teplomer Hum:22.00 Tem:20.00
2016-09-28_07:51:12 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 28.00
2016-09-28_07:51:12 ESPEasy_Teplomer_Obyvak_Teplomer Hum:28.00 Tem:20.00
2016-09-28_07:52:13 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 25.00
2016-09-28_07:52:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:25.00 Tem:20.00
2016-09-28_07:52:13 ESPEasy_Teplomer_Obyvak_Teplomer Temperature: 19.00
2016-09-28_07:52:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:25.00 Tem:19.00
2016-09-28_07:53:13 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 23.00
2016-09-28_07:53:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:23.00 Tem:19.00
2016-09-28_07:53:27 ESPEasy_Teplomer_Obyvak_Teplomer gpio 0 on
2016-09-28_07:56:13 ESPEasy_Teplomer_Obyvak_Teplomer Temperature: 20.00
2016-09-28_07:56:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:23.00 Tem:20.00
2016-09-28_07:56:13 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 26.00
2016-09-28_07:56:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:26.00 Tem:20.00
2016-09-28_07:57:13 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 23.00
2016-09-28_07:57:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:23.00 Tem:20.00
2016-09-28_07:57:13 ESPEasy_Teplomer_Obyvak_Teplomer Temperature: 19.00
2016-09-28_07:57:13 ESPEasy_Teplomer_Obyvak_Teplomer Hum:23.00 Tem:19.00


Could you please help me?

dev0

You wrote:
Zitat von: feryy am 28 September 2016, 08:06:51
But I do not know how to set it up FHEM.

define espBridge ESPEasy bridge 8383
define ESPEasy_Teplomer_Obyvak_Teplomer ESPEasy 192.168.100.138 80 espBridge Teplomer_Obyvak_Teplomer
define FileLog_ESPEasy_Teplomer_Obyvak_Teplomer FileLog /opt/fhem/log/ESPEasy_Teplomer_Obyvak_Teplomer-%Y.log ESPEasy_Teplomer_Obyvak_Teplomer

ESPEasy module is already set up correctly.

Zitat

2016-09-28_07:46:03 ESPEasy_Teplomer_Obyvak_Teplomer Hum:23.00 Tem:19.00
2016-09-28_07:50:12 ESPEasy_Teplomer_Obyvak_Teplomer Humidity: 22.00

Values are logged correctly.

Zitat
Data it collects but the plots are displayed.
I do not understand your problem, but I assume that your plots are NOT displayed. Right?
In this case it has nothing to do with ESPEasy module and I cannot help you because I do not know much about SVG module. But my hint is to use the graphical svg editor for simple plots.

SusisStrolch

To create your SVG:
define SVG_Teplomer_Obyvak_Teplomer SVG FileLog_ESPEasy_Teplomer_Obyvak_Teplomer:temp4hum4:CURRENT

Then, modify your layout with Plot Editor.
Synology DS1515+, 16GB RAM, 4x 6TB WD-Red
- Docker (FHEM), MariaDB, MariaDB10, Surveillance Station
Gateways: LCG miniCUL433, LCG miniCUL868, AVR-X4000, VU-Solo SE, Kodi
ESP8266: ESPEasy (S0-Counter, Temp/Hum), Sonoff TH, Sonoff 4ch