Entwicklung: Sensor mit dem ESP8266 WLAN-Funkmodul

Begonnen von locutus, 09 November 2014, 19:30:06

Vorheriges Thema - Nächstes Thema

eppi

#135
Hallo zusammen
Zitat von: fhem-hm-knecht am 23 Mai 2015, 14:16:56
@ eppi

ich hab gesehen du bekommst noch http:1/1 302 found zurück

bei dem setreading als weblink solltest du zum schluß noch &XHR=1 anhängen
dann bekommst du 200 found zurück und wirst nicht umgeleitet(302) auf die standard fhemseite mit dem ganzen overhead
Danke fhem-hm-knecht für den wertvollen Tipp! Ich habe es ergänzt und jetzt kommt 200 found zurück!

Zitat von: Franz Tenbrock am 23 Mai 2015, 09:34:12
@eppi
Kannst du mir die Definition des Dummys geben
habe mit define esp8266temp dummy probiert
Ganz simple Franz:
define esp8266temp dummy
attr esp8266temp stateFormat {sprintf("%.1f",ReadingsVal("esp8266temp","state",0))."°C"}

Sonst ist nichts in FHEM zu konfigurieren!

@All:
Ich habe die bestehenden fhem_ds18b20.lua und fhem_bh1750.lua in den ZIP Files ersetzt durch die korrigierten (http:1/1 200 found) // siehe Beitrag 128.
Viele Grüsse Dani

Franz Tenbrock

#136
irgendwie ist wohl doch noch ein Hänger drin?

Also ich habe eine Fritte die per DHCP die IPs verteilt
in der Fritte hat der ESP die IP .53

mein aktuelle FHEM Server ist ein cubi der die IP 192.168.178.46 hat

Habe gerade FHEM auf der Fritte gestartet, dort dann das define .. dummy etc erledigt
aber auch da keine aktuelle Temperatur.



das hier bekomme ich bei run im ESPlorer

> dofile('fhem_ds18b20.lua')
Temp:29 C

ds hier bei init

> dofile('init.lua')
> IP unavaiable, Waiting...
IP unavaiable, Waiting...
IP unavaiable, Waiting...
ESP8266 mode is: 1
The module MAC address is: 1A-FE-34-FD-F6-15
Config done, IP is 192.168.178.53
Temp:28 C


dofile('ds18b20.lua')
not enough memory

in der Fritzbox habe ich
PC-192-168-178-53   192.168.178.53   18:FE:34:FD:F6:15   10 Mbit/s   2,4 GHz, WPA2   
mit 4 grünen Balken, ist also aktiv im Netz

wenn ich aber nun in der Taskleiste die Wlan Netzwerke aufrufe
ist nur meine Fritzbox zu sehen

esp8266temp
Internals
CFGFN
NAME
esp8266temp
NR
999
STATE
0.0°C
TYPE
dummy
esp8266temp
Attributes
room
Mysensors
deleteattr
stateFormat
{sprintf("%.1f",ReadingsVal("esp8266temp","state",0))."°C"}
deleteattr

leider zeigt er noch nicht die Temperatur an

cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

eppi

#137
@Franz
Kannst du bitte auch mit Code #Tags arbeiten, ist einfacher zu lesen....!

Hast du die drei Files übertragen zum ESP8266, sowie ich es beschrieben habe?

Bei mir gibt der ESPlorer folgendes aus:

PORT OPEN 9600

Communication with MCU...
Got answer! AutoDetect firmware...

NodeMCU firmware detected.
=node.heap()
17048

lux: 130.83 lx
HTTP/1.1 200 OK
Content-Length: 0
Content-Type: text/plain; charset=UTF-8


Formatiere sonst den des ESP8266 nochmals. Dazu musst du rechts oben auf "Format" drücken, allenfalls mehrmals, danach jeweils den "Reset" Knopf drücken unten rechts.
Damit löscht du die Files auf dem ESP. Danach nochmals die 3 Files auf den ESP saven...

Franz Tenbrock

#138
es geht nun !!!

Readings
state
T: 29
2015-05-23 20:51:32

das stateformat stimmt noch nicht, hatte deine def genommen, aber auch das wird noch

es war das GND Kabel abgerutsscht, ist halt noch nicht fest verdrahtet
nun steht die Temperatur in FHEM zur Verfügung....
Ergänze morgen die Doku, formatiere das geschrieben, damit andere sich hoffentlich nicht so quälen müssen...

Am Ende des Dokus ev ein
Shit happens, was kann alles schief gehen

THX 8) ;D :) ;)
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

Franz Tenbrock

https://github.com/souliss/souliss/wiki/Gateway

Ist das ev was?
Die machen ja scheinbar so was wie mysensors, aber haben den ESP8266 schon eingebunden???

Mysensors ist ja schon super, da man dort die unterschiedlichsten Sensoren einfachst einbinden kann, Sketche werden ausgetauscht etc. also selbst für Dummys einfachst nachzubilden. Ich glaube ich könnte den code nun so abändern, dass ich den Temp Sensor auf einen anderen GPIO leite, aber mehr ???

Interessant wären Sketche für Bewegungssensor (HC-SR501 PIR Motion Sensor Module), 4 fach Relais, Ultraschallsensor (DYP-ME007Y Ultrasonic Sensor Module für Zisterne, Anwesenheitserkennung Auto etc ) 

Ich würde dann für die einzelenen Projekte die Doku schreiben und ev. auch einen Wiki Eintrag. Sow as macht ja auch Arbeit, und das bekomme ich dann wohl hin, nur für die Sketche reicht es beim besten Willen nicht.
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

PeMue

Hallo Franz,

läuft der DS1820 bei Dir? Ist bei Dir die fhem Oberfläche mit Passwort abgesichert?
Ich habe die Frage mal hier
http://blog.moneybag.de/fhem-temperaturmessung-mit-dem-esp-8266-und-ds18b20-ohne-arduino-datenuebertragung-per-wlan/
gestellt, sie konnte aber nicht beantwortet werden. Ich versuche mal, den Code zu verstehen (vor allem, wie die Daten an fhem übergeben werden).

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Klausi


PeMue

Hallo Klaus,

genau das hat mir gefehlt, danke. Jetzt muss ich nur noch herausbekommen, wie man im lua-Quellcode das WLAN Passwort verschlüsselt ablegt ...

Danke + Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Franz Tenbrock

Morgen,
hatte das Passwort aus FHEM rausgenommen, also die passwortgeschützte Anmeldung an FHEM
Hab mir gedacht das das bestimmt Probleme machen könnte
Es ging ja erst mal darum das ich das Ding überhaupt ans laufen bekomme.
Das WLAN selbst ist aber mit Passwort geschützt, im code habe ich da das Passwort angepasst.
Jetzt werde ich heute erst mal sehen wie die Reichweite ist.
Dann muss ich noch einen Stromanschluß ohne Arduino mittels STep down realisieren, ev was nachlesen wie es mit Batterie funktionieren könnte.
etc..

Dann hab ich mir noch Sonos gegönnt die auch noch in FHEM integriert werden sollen   8)
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

eppi

@Franz:
Du hast laut deiner Doku einen Arduino Nano für das Flashen und bespielen der Files genommen.
Was hast du für einen Sketch für den Arduino genommen, damit du ihn als FTDI-Serial-Device einsetzen konntest?

Gruss Dani

PeMue

Zitat von: Franz Tenbrock am 25 Mai 2015, 09:13:18
Dann muss ich noch einen Stromanschluß ohne Arduino mittels Step down realisieren, ev. was nachlesen wie es mit Batterie funktionieren könnte.
Hallo Franz,

nimm doch einfach den (step-up) Teil aus Dirks Universalsensor, Schaltplan siehe
https://github.com/kc-GitHub/Wettersensor/raw/master/Schematic/Schematic-RF.pdf
links oben: MAX1724, L1, C6 und C7. Dann sollte man ggf. noch eine ADC Überwachung der Batterie realisieren. So wie es aussieht, scheint der "deep-sleep mode" per lua noch nicht funktionieren.

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Franz Tenbrock

Hallo ich habe einen FTDI Ardunio, damit funktioniert scheinbar alles ohne Anpassung, das mit dem FTDI muss dann noch in die Anleitung.

Bin fast fertig, da fehlt noch die Passwort Anmeldung an FHEM

Hier meine Frage

http://forum.fhem.de/index.php?topic=36662.new#new

wenn ich das bei mir klappt lade ich die komplette Anleitung hoch.
Hab die 2 mal kontrolliert, alles alles Schritt für Schritt noch einmal neu gemacht.

Den stromanschluß werde ich erst einmal mittels step down , die habe ich , die step up eben nicht, machen, Hab haufenweise alte Handy Ladegeräte mit 5 V, die sollten ja gehen. Im Moment bin ich ja noch am experimentieren damit ich das alles überhaupt hinbekomme.
Halt Anfänger, aber macht Spass und nach vielen Stolpersteinen klappt es ja auch. in der Anleitung erwähne ich auch die Klippen, ich hoffe das macht es anderen auch leichter.
Die Links zu den Diskussionen stelle ich ja auch zur Verfügung, will mich ja nicht mit fremden Federn schmücken
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

eppi

Hallo Franz
Zitat von: Franz Tenbrock am 25 Mai 2015, 11:50:00
Hallo ich habe einen FTDI Ardunio, damit funktioniert scheinbar alles ohne Anpassung, das mit dem FTDI muss dann noch in die Anleitung.
Das verstehe ich nicht. Was ist ein FTDI Arduino? Hast du Infos?

Bezüglich Basic Auth ist das ganz einfach:
Du hast ja ein FHEMWEB angelegt, auf das du zugreifst (Standard Port 8083). Für den gesichten Zugang hast ein Usernamen und Passwort generiert. Dies ist im Attribut basicAuth abgelegt.

Beispiel:
attr WEBphone basicAuth YFDwaTprwr9zdGVyOHlvdSQ=

Dann YFDwaTprwr9zdGVyOHlvdSQ= in den String einfügen wie von Samsi beschrieben.
Gruss Dani

hexenmeister

#148
Zitat von: Franz Tenbrock am 25 Mai 2015, 11:50:00
Hallo ich habe einen FTDI Ardunio, damit funktioniert scheinbar alles ohne Anpassung, das mit dem FTDI muss dann noch in die Anleitung.
Der Nano hat ja quasi einen eingebauten USB-Serial-Adapter mit FTDI. Wenn man den Atmel-µC per Reset lahm legt, kann man den Adapter einzeln nutzen.

Zitat
Den stromanschluß werde ich erst einmal mittels step down , die habe ich , die step up eben nicht, machen, Hab haufenweise alte Handy Ladegeräte mit 5 V, die sollten ja gehen.
Würde ich wohl auch so machen. Ein StepDown ist sogar übetrieben (aber auch nicht unbedings schädlich), ein AMS1117 oder so etwas in der Art reicht ja auch aus.

Franz Tenbrock

#149
Thanks an alle die mir mal wieder geholfen haben

nun hab ich einen ESP Temp Sensor der sich mit Passwort an FHEM anmeldet..

im Anhang die Anleitung incl. basicAuth







das mit dem basicAuth hab ich dann auch hinbekommen s.u.
hatte ich so gemacht wie Rudolf König es für Anfänger empfohlen hatte, also in der FHEM.cfg unverschlüsselt
nun kann ich auch das


basicAuth    { "$user:$password" eq "user:1234" }

attr WEB basicAuth { "$user:$password" eq "user:1234" }

so ist das bei mir in der fhem.cfg

sieht etwas anders aus, daher komm ich nicht weiter....
mit diesem Artikel dann doch
http://forum.fhem.de/index.php/topic,12343.msg74828.html#msg74828
mit diesem Link gehts dann einfach
https://www.base64encode.org
->
RuIhhhm3GHFMg==

hab das mal etwas geändert :-)
das dann in die fhem....lua

so war das ja beschrieben
conn:send("GET /fhem?cmd=setreading%20esp8266temp%20state%20T:%20" ..t.. "\r\n"
            .. "HTTP/1.1\r\n"
            .. "Host: www.local.lan\r\n"
            .. "Authorization: Basic d2lraTpwZWRpYQ==\r\n"
            .. "Connection: keep-alive\r\n"
            .. "Accept: */*\r\n\r\n")

das rot markierte ersetzte ich nun durch meinen String

also

conn:send("GET /fhem?cmd=setreading%20esp8266temp%20state%20T:%20" ..t.. "\r\n"
            .. "HTTP/1.1\r\n"
            .. "Host: www.local.lan\r\n"
            .. "Authorization: Basic RuIhhhm3GHFMg==\r\n"
            .. "Connection: keep-alive\r\n"
            .. "Accept: */*\r\n\r\n")


das sollte ja gehen, hab die fhem.cfg al so angepasst und Anmeldung klappt, also sollte das auch mit dem ESP gehen
also LUAs aufspielen :-)
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi