ESP8266 mit ESPEasy in wenigen Minuten an Fhem anbinden

Begonnen von Reinhart, 26 Dezember 2015, 10:33:51

Vorheriges Thema - Nächstes Thema

Reinhart

ich habe einen 8266er im Batteriebetrieb laufen, der misst die Temperatur im Keller. Kann aber noch keine Langzeitdaten liefern, weil der erst seit ein paar Wochen aufgestellt ist. Ich messe in 15 Minuten Intervallen und geh in dann in den Deep Standby.

Ein User hatte aber gepostet, dass es nicht länger als 3 Monate laufen soll. Das wäre dann unbrauchbar, schon alleine aus Umweltgründen. Von einem HM Aussenfühler wären wir da weit entfernt, der läuft bei mir weit über ein Jahr.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

MadMax-FHEM

Hi Reinhart,

hmmm 3 Monate klingt auch für mich nicht wirklich gut...

Bin auch grad ein wenig am Rumtesten aber habe auch noch keine wirklichen Langzeittests da mir die kurzen Tests schon zeigen, dass es so nicht wirklich lange gehen wird...

Aber ich hab noch ein paar Ideen und Varianten die ich testen kann/will...

Welchen Sensor hast du?
Nur Temperatur?
Nur 3,3V?
Oder auch 5V?

Habe leider aktuell noch Sensoren die 5V brauchen, daher etwas viel "StepUp/StepDown" usw.

Hier meine aktuellen Tests:

http://forum.fhem.de/index.php/topic,28905.msg394066.html#msg394066

Alternativ spiele ich auch noch mit Arduino bzw. ATMEGA plus "simplen" Sender/Receiver Modulen rum.
Vielleicht ist das stromsparender...
...ESP wäre halt schön gewesen, weil ich mir dann ein extra Empfängermodul sparen würde (WLAN hab ich ja).

Momentan fehlt mir nur Zeit meine Ideen/Probeaufbauten zu verwirklichen und zu testen...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Reinhart

#32
ich habe am Batterietest nur einen DS18b20 mit 3,3 V hängen!
Die blaue Sende Led am Adafruit habe ich allerdings nicht weggekratzt.

Ich bin gespannt ob die neueren Modelle 8266-12e und 8266-14 noch bessere Stromverbrauchsdaten aufweisen.
Ein Jahr Laufdauer wäre erstrebenswert.

ESP nehme ich deshalb, weil ich nicht überall eine 868 Mhz Abdeckung habe aber Wlan schon!

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

SvenJust

Zitat von: chunter1 am 20 Januar 2016, 14:23:58
Kann man eigentlich mehrere DS18B20 parallel mit ESPEasy betreiben?
Ich würde gerne im Heizraum ein Kabel mit mehreren DS18B20 zur Messung der Vorlauf/Rücklauf Temperaturen betreiben.

Ja, ich betreibe vier DS18B20 mit ESPEasy. Der ESP rebootet zwar 1-2 mal am Tag, kommt aber innerhalb einer Minute immer wieder in einen funktionierenden Zustand.

VG
Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

Inputsammler

Hey Reinhart,

Also erst mal vielen Dank für deine Erklärung.
Bin von Mirco darauf aufmerksam gemacht worden das du hier was schönes bastelst.

Da ich meine Bestllung von China das ist kann ich loslegen.
Hab hier ein ESP-12E   Modul.
Was auch teilweise NodeMCU genannt wird.


Hatte trotydem bei mir einige Anlaufprobleme.
- auf meinen MAC nicht Möglich da der Treiber CH341 ohne die Sicherheit zu deaktivieren nicht funktioniert :'(
- Windows PC wird benötigt (VirtualPC)
- bei mir geht nur die 1.6.5 IDE
- es ist ein AP PW in der  R048 hinterlegt und wird benötigt zum erstmaligen verbinden

Er läuft im Moment schon mal ....
Heute kommt die Einbindung in FHEM dran ....
Sensoren plan:
- Einige Ds18d20
- 2x DHT-11
- evtl. Ic2 Display (???)
- Servo (???)
- LEDs (???)

Mal sehen ob ich es zum laufen bringe ......

Gruß Gerd
Rpi's und Bpi's und Hw von Dirk und locutus
CCU2,F20,Ks300,1-Wire,Homematic usw ...
vitodens 300 & IstrkrM372 auslesen über USB und FHEM
RUHE IN FRIEDEN AHA1805 RIP Mallorca +29.08.16
I miss you and your Family H.H.L.L.

Tom71

Hallo,
ich hab einen anderen Scetch genommen: http://www.jerome-bernard.com/blog/2015/10/04/wifi-temperature-sensor-with-nodemcu-esp8266/

Damit schickt nun auch mein ESP8266-01 per MQTT Nachrichten an fhem. Das kommt auch prima an. Nur leider wird kein eigenes Log-File geschrieben. Alles was in FHEM ankommt ist bei verbose 5:

2016.01.28 15:02:53 5: MQTT MyBroker message received: Publish/at-most-once /hooks/devices/1/SensorData/temperature
  34 32 2e 37 35                                   42.75


Damit kann ich schwer in ein eigenes File parsen. Wie hast du das gemacht, Reinhart?

Gruss Thomas
Homematic | RaspberryMatic

SvenJust

#36
Hallo!

Zitat von: Tom71 am 28 Januar 2016, 15:05:01
Hallo,
ich hab einen anderen Scetch genommen: http://www.jerome-bernard.com/blog/2015/10/04/wifi-temperature-sensor-with-nodemcu-esp8266/

Damit schickt nun auch mein ESP8266-01 per MQTT Nachrichten an fhem. Das kommt auch prima an. Nur leider wird kein eigenes Log-File geschrieben. Alles was in FHEM ankommt ist bei verbose 5:

2016.01.28 15:02:53 5: MQTT MyBroker message received: Publish/at-most-once /hooks/devices/1/SensorData/temperature
  34 32 2e 37 35                                   42.75


Damit kann ich schwer in ein eigenes File parsen. Wie hast du das gemacht, Reinhart?

Hast Du zusätzlich zum MQTT_BROKER auch ein MQTT_DEVICE angelegt?
Infos hier: http://fhem.de/commandref.html#MQTT_DEVICE bzw http://forum.fhem.de/index.php?topic=27532.0

/Edit: Das Vorgehen ist auch oben im Startbeitrag beschrieben.

VG
Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

Tom71

#37
Hallo,
das hab ich gemacht gehabt. Genau dafür wollte ich ja die Logs.
Nur das ist alles was bei verbose 5 im MQTT Device ankommt:

2016.01.28 20:44:48 5: MQTT MyBroker message received: Publish/at-most-once /hooks/devices/1/SensorData/temperature
  34 31 2e 37 35                                   41.75
2016.01.28 20:44:48 5: publish received for /hooks/devices/1/SensorData/temperature, 41.75
2016.01.28 20:44:48 5: calling readingsSingleUpdate(ESP8266,Temperature,41.75,1
2016.01.28 20:44:56 5: MQTT MyBroker message sent: PingReq/at-most-once
2016.01.28 20:44:56 5: SW: c000
2016.01.28 20:44:56 5: MQTT MyBroker message received: PingResp/at-most-once


Update:
Der Tip mit dem Filelog war richtig:
define FileLog_ESP8266 FileLog ./log/ESP8266-%Y.log ESP8266


schreibt nun in ein extra Log-File. (Mir war so, als hätte ich das schon probiert...)

Gruss Thomas
Homematic | RaspberryMatic

RappaSan

Der HCSR04 Ultraschallsensor ist ja in der ESPeasy Weboberfläche als Sensor enthalten.
Mal ne bescheidene Frage: Wie definiere ich den Trigger und Echo Pin denn in der Weboberfläche?
Und wie komme ich an die Messwerte?

AndreasHH

Hallo Tom71,

wie sieht denn Deine Definition des MQTT-Devices in FHEM aus.
Ist bei MQTT zu Beginn etwas tricky bzw. verwirrend.

Die Ausgaben des MQTT-Brokers sehen brauchbar aus.


Gruss

Andreas
FHEM 5.8, FB7490, FB7390, Linux-Server, Raspi 1, Raspi 2, FHEM2FHEM, div. FS20, div. FHT, div. HMS, div. Homematic, MQTT, ESP8266, Arduino

Reinhart

#40
Ich habe in dem Eröffnungspost vom Broker geschrieben, aber es geht auch ganz einfach mit dem HTTPMOD.
Wer mit den Broker nicht will, kann es daher auch anders durchführen.

define mq HTTPMOD http://10.0.0.141/devices?setpage=2 300
attr mq userattr readingsName1 readingsRegex1 readingsRegex2 requestHeader1 requestHeader2 stateFormat
attr mq group Json
attr mq readingsName1 Humidity
attr mq readingsRegex1 Temperature:</div><div class="div_r">([\d\.]+)
attr mq readingsRegex2 Humidity:</div><div class="div_r">([\d\.]+)
attr mq requestHeader1 Content-Type: application/json
attr mq requestHeader2 Accept: */*
attr mq room Garage
attr mq stateFormat {sprintf("Temp: %.2f Hum: %2.f", ReadingsVal($name,"Temperatur",undef), ReadingsVal($name,"Humidity",undef))}

Abfrage über HTTPMOD. Ich habe den Sensor DHT11 auf der 2.Seite von ESPEasy definiert, daher hier die Abfrage mit setpage=2.
Die beiden Regex habe ich zum filtern des Messwertes auf Numerisch.


Senden geht dann zB: mit einem Webcall, habe ich hier schon gepostet: http://forum.fhem.de/index.php/topic,46205.msg394051.html#msg394051

http://10.0.0.141/control?cmd=GPIO,4,1 = einschalten
http://10.0.0.141/control?cmd=GPIO,4,0 = ausschalten

wichtig ist hier nur die Seite "Control" und der GPIO wo die Ausgabe erfolgen soll.

und in Fhem sieht das dann so aus:
define Port04 FS20 9999 99
attr Port04 IODev COC
attr Port04 alias Tor Auto
attr Port04 dummy 1
attr Port04 eventMap on:1 off:0
attr Port04 group Wifi
attr Port04 icon fts_sliding_gate
attr Port04 room Garage
attr Port04 webCmd 1:0
#attr Port04 event-on-change-reading state

define MyPort04_0 notify Port04:0 "wget -q -O - 'http://10.0.0.141/control?cmd=GPIO,4,0'"
#define MyPort04_1 notify Port04:1 "wget -q -O - 'http://10.0.0.141/control?cmd=GPIO,4,1'"

define PortSchreiben04_Click notify Port04:1 "wget -q -O - 'http://10.0.0.141/control?cmd=GPIO,4,1'";; define TimerPort04 at +00:00:01 set Port04 0

ich steuere hier ein motorgesteuertes Gartentor, dass nur einen Impuls braucht, daher das TimerPort04 das dann gleich wieder "aus" schickt.

LG
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

Zitat von: RappaSan am 30 Januar 2016, 15:40:16
Der HCSR04 Ultraschallsensor ist ja in der ESPeasy Weboberfläche als Sensor enthalten.
Mal ne bescheidene Frage: Wie definiere ich den Trigger und Echo Pin denn in der Weboberfläche?
Und wie komme ich an die Messwerte?

hast du dir schon das Wiki vom DistanceSensor gelesen, da ist die Konfiguration abgebildet!  Link:http://www.esp8266.nu/index.php/DistanceSensor
Hilft dir vielleicht weiter.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

RappaSan

Hab's gerade gefunden. Hätte doch noch etwas besser hinsehen sollen beim Aufruf der ESPeasy-Weboberfläche. Das Fragezeichen beim Edit der Devices hilft weiter ::)
Aber Danke für den Tip.

Tom71

Hallo AndreasHH,

ich denke, ich habe die default config:

define ESP8266 MQTT_DEVICE DS18B20
attr ESP8266 IODev MyBroker
attr ESP8266 room MQTT
attr ESP8266 stateFormat Temperatur: Temperature°C
attr ESP8266 subscribeReading_Temperature /hooks/devices/1/SensorData/temperature
attr ESP8266 verbose 5


und ein "attr autocreate filelog ./log/%NAME-%Y.log"

Für alle anderen Devices bekomme ich auch brav log Einträge.

Homematic | RaspberryMatic

schka17

Zitat von: Tom71 am 01 Februar 2016, 17:08:09
Hallo AndreasHH,

ich denke, ich habe die default config:

define ESP8266 MQTT_DEVICE DS18B20
attr ESP8266 IODev MyBroker
attr ESP8266 room MQTT
attr ESP8266 stateFormat Temperatur: Temperature°C
attr ESP8266 subscribeReading_Temperature /hooks/devices/1/SensorData/temperature
attr ESP8266 verbose 5


und ein "attr autocreate filelog ./log/%NAME-%Y.log"

Für alle anderen Devices bekomme ich auch brav log Einträge.

Das autocreate Attribut reicht nicht, für ein MQTT_DEVICE wird kein Logfile erstellt, du musst manuell ein Logdevice anlegen:

http://fhem.de/commandref.html#FileLog

und für den Plot ein weiteres:

http://fhem.de/commandref.html#SVG


Gruß

Karl

M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000