Entwicklung: Sensor mit dem ESP8266 WLAN-Funkmodul

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

Vorheriges Thema - Nächstes Thema

hexenmeister

GND muss verbunden bleiben.  Sonst haben die Signalleitungen keine Bezugsmasse.

PeMue

Zitat von: accessburn am 10 September 2016, 16:04:22
Böse Sache, wer erfindet sowas :D
Schaust Du hier: Da hat ein  8) 8) 8) überaus hilfsbereiter 8) 8) 8) Forumsteilnehmer eine Platine für einen USB-seriell Wandler entwickelt, der auch einen 3,3 V Spannungsregler drauf hat  ;D
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

laberlaib

#287
Ich habe endlich die Zeit gefunden, den "IR WLAN Gateway" in Betrieb zu nehmen, leider kann ich mein Pioneer AV Receiver nicht steuern.

Flashen des Gateways funktioniert für den Sende- und auch den Einlesesketch.
Eingelesen habe ich dann die lauter und leiser Taste und das Ergebnis so auch in einer IR-Code-Library gefunden:
http://lirc.sourceforge.net/remotes/pioneer/VSX9300

Zitat
          KEY_VOLUMEUP                 0xA55A50AF                #  Was: VOL+
          KEY_VOLUMEDOWN           0xA55AD02F                #  Was: VOL-

Dezimal ergibt das:
Zitat
Lauter: 2774159535
Leiser: 2774192175

Beim Aufrufen von
http://192.168.178.210/ir?code=2774159535&bits=32&protocol=RC5
bzw.
http://192.168.178.210/ir?code=2774192175&bits=32&protocol=RC5
erscheint auf der Weboberfläche alles "richtig", das blaue Licht leuchtet am Gateway kurz auf, aber am Receiver tut sich nix.
(Beim Auslesen erhalte ich als Protokoll im Gegensatz zur o.g. Library "NEC", habe es aber mit beiden versucht).

Im Sourcecode von ESP8266_IRremote.ino habe ich nun folgendes gefunden:


[...]
String codestring=httpServer.arg("code");
[...]
unsigned long code = codestring.toInt();
[...]

Kann das ein Grund sein? Also das der Code mit 32 Bit nicht per "toInt()" verarbeitet werden kann?
Ich hab mir Code mal nach der toInt() ausgeben lassen, das ist dann schon die komplette Zahl.

Also weiter - warum tut das so nicht? Gibts irgend ein Testszenario?

Fürs aufzeigen weiterer möglicher Fehlerquellen oder gar Lösungsvorschlägen wäre ich dankbar.
--
Proxmox, Homematic, G-Tags, Zigbee2MQTT, Rhasspy Sprachsteuerung im Aufbau (beta)

stefan22

Zitat von: joe.lee am 22 April 2016, 21:42:24
Klappt leider nicht. Weder mit dem Http noch dem Telnet. Ist es egal, auf welchem Port (7072 Telnet, 8083, 8084, 8085) das läuft oder behindert irgendein Dienst ggf. den Empfang?

Muss ich der Fritzbox noch was mitteilen (Teilnehmer dürfen bereits miteinandet kommunizeren)? Der FHEM Server läuft auf einem Raspberry hinter der Fritzbox.
Wenn ich den Befehl per Http Befehl im Browser eingebe, sehe ich den Wert in FHEM. Daher sollte in FHEM alles richtig eingestellt sein.

Zusätzlich habe ich mal die Kommunikation mit der Fritzbox aufgezeichnet und sehe, dass das ESP8266 dem RPI irgendwas sendet (Sender- und Empfänger-IP sichtbar). Aber vom ESP empfange ich nichts.

Gibt es noch irgendeine Idee?


Hi Joe.Lee,

habe genau das gleiche Problem wie du im April beschrieben hast.
Bei mir klappt die Verbindung zu FHEM auch nicht. Bekomme auch keine Fehlermeldungen etc.

Hast du es mittlerweile lösen können ?
Wäre toll wenn du mir eventuell helfen könntest.

Mfg Stefan

gloob

#289
Zitat von: locutus am 26 Juni 2016, 21:55:13
Hallo,
basierend auf der IRremote ESP8266 Library ist diese Infrarot-Fernbedienung entstanden.
Das IR WLAN Gateway ist als einfache Infrarot-Fernbedienung nutzbar und unterstützt zahlreiche IR-Protokolle sowie Produkte vieler Hersteller.

Hardware:
ESP8266 ESP-12/-E WLAN-Modul
3,3V LDO-Spannungsregler
2 IR-Dioden
IR-Empfänger
4 Taster
- S1 an GPIO5
- S2 an GPIO12
- S3 an GPIO13
- S4 an GPIO14
Programmierschnittstelle für USB zu TTL-Wandler mit 3,3V-Logik
FLASH Jumper
USB mini Typ B Buchse zur Spannungsversorgung

Da ich gerade die Platinen aufbaue habe ich ein paar Fragen:

1. C6-C9 sind doch nur für die Buttons da oder? Wenn ich keine Buttons habe brauche ich die Kondensatoren nicht?
2. Wie werden die Buttons belegt? Woher weiß der ESP was welcher Button machen soll?
3. Sind die Buttons eignetlich aktuell im Sketch eingebunden? Ich habe nichts gesehen.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

locutus

Zitat von: laberlaib am 21 Oktober 2016, 11:54:22
Kann das ein Grund sein? Also das der Code mit 32 Bit nicht per "toInt()" verarbeitet werden kann?
Ich hab mir Code mal nach der toInt() ausgeben lassen, das ist dann schon die komplette Zahl.

Also weiter - warum tut das so nicht? Gibts irgend ein Testszenario?

Fürs aufzeigen weiterer möglicher Fehlerquellen oder gar Lösungsvorschlägen wäre ich dankbar.
Die IRremoteESP8266 Library ist leider verbugt. Einige Hersteller setzen voraus, dass ihr IR-Code mehrmals hintereinander gesendet wird.
Siehe: https://github.com/markszabo/IRremoteESP8266/issues

Zitat von: gloob am 11 November 2016, 07:42:12
Da ich gerade die Platinen aufbaue habe ich ein paar Fragen:
1. C6-C9 sind doch nur für die Buttons da oder? Wenn ich keine Buttons habe brauche ich die Kondensatoren nicht?
R6 ist dann auch überflüssig. R und C entprellen Taster.

Zitat2. Wie werden die Buttons belegt? Woher weiß der ESP was welcher Button machen soll?
3. Sind die Buttons eignetlich aktuell im Sketch eingebunden? Ich habe nichts gesehen.
Die Tasten sind nicht belegt und frei verfügbar.

micky0867

Gibt es noch Leerplatinen?

Gesendet von meinem Toaster.



locutus

#293
Hallo zusammen,
ich möchte euch die Version 1.1 des LW12 WLAN-RGB-Controllers vorstellen.

Die wichtigsten Änderungen im Überblick:
- neues Platinendesign
- zwei zusätzliche IO-Ports: GPIO4 und GPIO5
- ESP-03 durch ESP-13 ersetzt
- Si4936CDY durch Si9410DY ersetzt
- LUA Code durch Arduino C/C++ ersetzt
- OTA Update über Webbrowser unter: http://<IP-Adresse>/update
- Arduino core for ESP8266 WiFi chip
- WiFiManager

Die Vorgehensweise ist identisch wie beim LW12 WLAN-LED-Controller 1.0.
Beim ersten Start des ESP8266 wird ein Access Point (der LED-Stripe leuchtet rot auf) mit der SSID RGB-Controller-AP erstellt. Die Zugangsdaten des eigenen WLAN-Netzes werden im Webbrowser unter der Adresse http://192.168.4.1/ eingeben. Nach dem Speichern der Daten, startet der ESP8266 neu und versucht sich zu verbinden. War die Verbindung erfolgreich, leuchtet der LED-Stripe für 3 Sek. grün auf.

Bsp. für Steuerung des LW12 Controllers mit WifiLight:
define WiFiLED WifiLight RGB LW12:192.168.1.100
attr WiFiLED colorCast 0, -20, -20, -25, 0, -10
attr WiFiLED webCmd RGB
attr WiFiLED whitePoint 1, 0.75, 0.25
attr WiFiLED widgetOverride RGB:colorpicker,RGB


Im Anhang Gerberdaten für ITEAD Studio und Schaltplan für die, die selbst löten möchten.

Die Verwendung der Daten für kommerzielle Zwecke, Herstellung oder gewerblichen Vertrieb ist untersagt.

Verfügbarkeit und Preise
Ich biete die Geräte im Marktplatz zum Kauf an.


locutus

#294
Hallo zusammen,
in diesem Beitrag zeige ich euch, wie ihr den RGB-Controller Ver. 1.1 zum MQTT-Device umfungiert und ggf. mit einen DHT22 Luftfeuchte- und Temperatursensor bestückt.
Ladet euch hier den Arduino Sketch für den RGB-Controller herunter.
Auf der Platine sind zwei zusätzliche Ports IO4 und IO5 verfügbar. Im Sketch wird IO4 für den Datentransfer zwischen ESP8266 und DHT22 verwendet. Der DHT22 Sensor wird wie folgt mit den frei verfügbaren Ports des RGB-Controllers verbunden:
DHT22 <-> RGB-Controller
VCC <-> 3V3
DATA <-> IO4
GND <-> GND

MQTT-Broker und RGB-Controller als MQTT-Device in FHEM anlegen:

define localMQTT MQTT 127.0.0.1:1883
attr localMQTT keep-alive 60

define mqtt_LEDlight MQTT_DEVICE
attr mqtt_LEDlight IODev mqtt
attr mqtt_LEDlight publishSet_RGB RGB ESP_RGB_1
attr mqtt_LEDlight stateFormat state
#attr mqtt_LEDlight subscribeReading_temp /sensor/temperature
#attr mqtt_LEDlight subscribeReading_hum /sensor/humidity
attr mqtt_LEDlight webCmd RGB
attr mqtt_LEDlight widgetOverride RGB:colorpicker,RGB
attr mqtt_LEDlight retain 1


Auf dem Topic ESP_RGB_1 publishen wir immer HEX-Farbwerte und steuern somit den LED-Strip an.
Mit subscribeReading_hum und subscribeReading_temp subscriben wir zusätzlich das Topic /sensor/humidity und /sensor/temperature beim Broker.


Kuzl

Hallo locutus,

kennst du das parallel laufende ESP RGBWW Led Controller-Projekt?
https://forum.fhem.de/index.php/topic,48918.msg405793.html#msg405793
Evtl. ist es denkbar Den Code auf deine Platine zu portieren bzw. mit Compilerswitches direkt laufbar zu machen.

Viele Grüße,
Kuzl

locutus

Ja, es ist nicht nur denkbar, sondern auch machbar. So auf Anhieb fällt mir nur ein Unterschied in der Pinbelegung auf. Mein RGB-Controller verwendet die folgenden Ports zur Ansteuerung der MOSFET-Transistoren:
#define BLUEPIN 13
#define GREENPIN 14
#define REDPIN 12


rasti

Hallo,

ich habe das IR-Gateway von Locutus https://forum.fhem.de/index.php/topic,55013.0.html

Installation war kein Problem und ich kann per Browser anscheinend irgendwelche IR-Signale senden.
Nur meinen Panasonic TV bekomme ich nicht angesteuert.

Ich habe einen TX-L47DT50E und dazu gehört die Fernbedienung N2QAYB000715 .

Mir ist nicht klar, wo ich die richtigen Zahlen für CODE und BITS herbekomme.

Bei http://lirc.sourceforge.net/remotes/panasonic/ ist die o.g. Fernbedienung nicht aufgeführt.

Also nehme ich mal nur als Bespiel die hier :
http://lirc.sourceforge.net/remotes/panasonic/N2QAYB000010

In dem Code steht die Zeile 
"bits           32"
Ist das die dezimal codierte Zahl die für BITS einzusetzen ist ?

Weiterhin steht in dem Code die Zeile
"KEY_1                    0x0D000805                #  Was: 1"
0D000805  (hex) => 218105861 dezimal

Zum Absetzen des IR-Signal1 "1" rufe ich also im Browser folgende Seite auf:
http://192.168.178.10/ir?code=218105861&bits=32&protocol=Panasonic
Habe ich das richtig verstanden ???

Oder anders gefragt, wie muss die Browseradresse bei mir lauten, damit per IR eine "1" gesendet wird ?

Viele Grüße

Ralf

gloob

Eigentlich sollte es so passen wie von dir beschrieben.

Du kannst ja auch mal folgende Firmware auf dem Gateway testen:

https://forum.fhem.de/index.php/topic,72950.0.html

Damit kannst du die Codes von der Fernbedienung direkt einlesen und das was im Output der Console steht, kann direkt als Aufruf im Browser genutzt werden.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Papaloewe

Welche Printklemmen (Schrauben oder Federn) würden denn für den
LW12 WLAN-RGB-Controller passen?
Hat jemand einen Tipp für mich mit einem Link bestenfalls?

Vielen Dank.

Thomas