IR-LED an ESP8266 mit EspEasy

Begonnen von erotikbaer, 18 Februar 2017, 03:02:47

Vorheriges Thema - Nächstes Thema

erotikbaer

Hallo zusammen,
ich bin was Widerstände, Transistoren, etc angeht echt unwissend... und habe in den letzten 2 Stunden gefühlte 1000 Beiträge gelesen und mittlerweile bin ich verunsicherter als vorher.
Daher meine Frage ob mir jemand sagen kann, was ich alles brauche um eine Infrarot LED zum Senden an einem ESP8266 anzuschließen und vielleicht kurz noch wie ich das dann verkabeln muss.
Also ich habe jetzt in verschiedenen Beiträgen etwas von einem Vorwiderstand und einem Transistor gelesen. Da ich heut gern alle Teile besorgen möchte (bei Conrad) wäre es super wenn mir jemand helfen könnte, die benötigten Teile herauszufinden.

was ich in einem Beitrag (https://kaistech.wordpress.com/2016/10/09/wifi-infrared-ir-remote-extension-using-esp8266/) gefunden habe ist folgendes (das habe ich so halbwegs verstanden):
– 2x IR Emitter LED (950nm)
- 1x 20 Ohm 0.5W Widerstand
- 1x 330 Ohm 0.125-0.25W Widerstand
- 1x NPN Transistor (NPN BC547, BC548 oder PN2222)

also das ganze wird dann wohl über 5V angeschlossen. also an die +/5V Leitung kommt erst der 20 Ohm Widerstand, dann die beiden LED´s in Reihe, dann dieses "Kabel" an "collector" vom Transistor, an "base" vom Transistor der 330ohm widerstand und dann zum gpio und der "emitter" vom Transistor an Gnd? ich verstehe die Zeichnung, auf Grund der Zeichen, leider nicht(glaube ich). Kommen beide drähte der LED an die +/5V Leitung ran?
ich weiß, das ist für euch bestimmt simple aber für mich sinds aktuell noch böhmische Dörfer :/

Vielen Dank schonmal vorab!

Gruß Christian

Reinhart

Zitat von: erotikbaer am 18 Februar 2017, 03:02:47
Kommen beide drähte der LED an die +/5V Leitung ran?

natürlich nicht, ich habe es hier etwas anders dargestellt, vielleicht tust dir damit etwas leichter?
Das Steckboard brauchst natürlich nicht, ist nur in der Zeichnung so.

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

erotikbaer

Perfekt! Hab vielen Dank!

erotikbaer

#3
So, alles verkabelt und ich bekomme es mit espeasy nicht hin ir Codes zu senden...zumindest seh ich nix an den ir leds (mit Fotokamera geguckt). 
Habe statt nem 20Ohm 0,5w widerstand nur einen 20ohm mit 0,6w bekommen.
Kann es daran liegen?
Ich habe für die ir leds nen separates 5V Netzteil genommen.

Kann es an den LEDs selbst liegen? Soll ich die Bezeichnung heut Abend mal posten?
Oder liegts an espeasy? Habe R147 geflasht.

Gruß Christian

PeMue

#4
Zitat von: erotikbaer am 19 Februar 2017, 19:21:12
Habe statt nem 20 Ohm 0,5w widerstand nur einen 20 Ohm mit 0,6w bekommen.
Kann es daran liegen?
nein, definitiv nicht. Sind die IR-LEDs richtig gepolt? Hast Du die Masse des 5 V Netzteils mit der Masse des ESPs verbunden (sonst funktioniert es nicht  ;))?

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

Jo

Zitat von: erotikbaer am 19 Februar 2017, 19:21:12
zumindest seh ich nix an den ir leds (mit Fotokamera geguckt). 

Das geht nicht mit jeder Kamera (Iphone geht z.b. nicht) - prüf das mal mit ner anderen Fernbedienung

erotikbaer

#6
also die Polung der LEDs sollte richtig sein. Nein, die Masse habe ich nicht mit der Masse vom ESP (Nodemcu)verbunden.
Also einfachen nen Kabel von der Masse vom Netzteil auf nen GND vom ESP (Nodemcu) machen?

hab ich jetzt mal gemacht, ergebnis ist, dass der nodemcu/esp nicht mehr bootet

erotikbaer

#7
Hier mal die laienhafte Skizze die ich gemacht habe

Reinhart

#8
also ich habe nun die hier abgebildete Schaltung auf einem Sonoff Basic (=esp8266) getestet und die geht einwandfrei. Ich habe es mit dem Arends Sketch getestet und die Schaltung selbst habe ich aus einer alten FB ausgeschnitten und entspricht der hier abgebildeten Schaltung. Auch sehe ich mit meinem Handy (Samsung Ativ S mit Windows) die IR Led schön flackern, aber nur sehr kurz.

Bei der Zusammenstellung des richtigen JSON Strings habe ich den Autor angefragt und folgendes in Erfahrung gebracht.

Als erstes sucht man sich auf LIRC die entsprechenden FB-Codes, im Beispiel für meinen Samsung für den 55" Curved UHD TV HU8580. Die FB ist zwar nicht exakt dieselbe, aber die Befehle passen soweit. Wichtig sind dabei folgende Daten:

name  Samsung_BN59-00940A
bits           16
pre_data_bits  16
pre_data       0xE0E0
Power On/Off   0x40BF


Nun stellt man den Sendestring zusammen:
predata+Befehl =  E0E040BF (hex) = 3772793023 (dec) und 32 Bit Datenlänge.

Der JSON String für den IRSend ist laut Arends Wiki folgender.
IRsend    | {"protocol": "<proto>", | Send IR remote control as JSON encapsulated command.
          |   "bits": 1..32         | <proto> is NEC, SONY, RC5, RC6, DISH, JVC or SAMSUNG
          |   "data": 1..(2^32)-1}  | bits are the required number of data bits.
          |                         | data is the data frame as 32 bit unsigned integer.
          |                         | See http://www.lirc.org/ for more info.


das ergibt dann unseren Befehl für die Kommandozeile am Modul. Die Bitlänge für Pre und Data sind ebenfalls zu addieren (16 + 16 = 32 Bit) und beim Arends Sketch muss im JSON Format gesendet werden:

irsend  {"protocol": "SAMSUNG","bits": 32, "data": 3772793023}

oder hier für die Kommandozeile am Broker:

mosquitto_pub -q 2 -t cmnd/TestSwitch/IRSend/set -m '{"protocol": "SAMSUNG","bits": 32, "data": 3772793023}'

Jedesmal wenn nun der Befehl gesendet wird, wird entweder Ein- oder Aus geschaltet. Die Verzögerung über Wlan hält sich in Grenzen und ist beim reinen Einschalten kaum merkbar. Ebenso können die Kanäle oder die Laustärke verstellt werden. Im Prinzip funktionieren alle Befehle die auf der FB vorhanden sind.

LG
Reinhart

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

Reinhart

ich habe mir jetzt noch zum Test in FHEM eine FB mit den wichtigsten Tasten definiert und kann somit nun alles über esp8266 steuern.

Da ich jedoch noch etwas Schwierigkeiten habe den JSON String ordentlich aus Fhem zu übergeben ( die geschwungenen Klammern machen da noch Probleme ) , habe ich es temporär mit einem Script realisiert. Ein notify übergibt die Taste und im Script liegt dann der entsprechende IR Code. Möchte das aber ordentlich direkt in Fhem einbinden, aber zum Testen reicht es vorerst.

define RC_TV remotecontrol
attr RC_TV rc_iconpath icons/remotecontrol
attr RC_TV rc_iconprefix black_btn_
attr RC_TV room Entwicklung
attr RC_TV row00 KEY_POWER:POWEROFF,:blank,:blank
attr RC_TV row02 :blank,:blank,:blank
attr RC_TV row03 KEY_1:1,KEY_2:2,KEY_3:3
attr RC_TV row04 KEY_4:4,KEY_5:5,KEY_6:6
attr RC_TV row05 KEY_7:7,KEY_8:8,KEY_9:9
attr RC_TV row06 :blank,KEY_0:0,:blank
attr RC_TV row07 :blank,:blank,:blank
attr RC_TV row08 KEY_VOLUMEUP:UP,KEY_MUTE:MUTE,KEY_CHANNELUP:CHUP
attr RC_TV row09 KEY_VOLUMEDOWN:DOWN,:blank,KEY_CHANNELDOWN:CHDOWN

define Samsung_TV notify RC_TV "/opt/fhem/ircmd.sh $EVENT"


Das angehängte Script nach /opt/fhem kopieren und 755er Rechte vergeben.

LG

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

EnderPhilipp

Hi Liebe FHEM-Community,

ich habe Zuhause im Garten ein paar Strahler, die man per Infrarot steuern kann.
Jetzt wollte ich wissen, ob man die auch mit dieser Methode ansteuern kann.

Das hier gibt mit der IRrecvDemo Sketch aus der IRemote-Bibliothek aus:

Unknown encoding: 278010B9 (32 bits)
Raw (68): 9050 -4500 550 -650 550 -1750 550 -650 550 -650 600 -600 550 -650 550 -650 550 -650 550 -650 550 -1750 550 -1750 550 -1750 550 -1750 550 -1750 600 -1700 550 -1750 550 -1750 550 -650 550 -650 550 -650 550 -650 550 -600 550 -650 550 -650 600 -650 550 -1750 550 -1750 550 -1750 550 -1750 550 -1750 550 -1750 550 -1750 550


Wie musste dann der Url-Aufruf aussehen ?

Mfg
Philipp ;D
¡¡¡ANFÄNGERALARM!!!
Raspberry Pi 3 (Hauptsystem)
Raspberry Pi B+ (Kellersonde)
Homematic,Philips Hue, LD382, nanoCul 433/868mhz, MPD, Intertechno, FIRMATA, EspEasy, SSCAM, STV, HDMI-CEC, EchoDot

Reinhart

#11
Hallo Philipp!

Kann man den aus einer Beschreibung entnehmen um welches Protokoll es sich handelt?

Wenn ich jetzt einfach mal annehme es handelt sich um das Protokoll "RC5", dann könnte der Sendebefehl in der Konsole nach der oben beschriebener Methode mit "irsend" so aussehen. Was hast du denn für eine Schaltung gemacht, so in etwa wie oben und mit was sendest du den IR Code?

bits           16
pre_data_bits  16
pre_data       0x2780
Power On/Off   0x10B9


Hex 278010B9 = Dez 662704313

irsend  {"protocol": "RC5","bits": 32, "data": 662704313}

LG

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

tklein

Hallo,

als Neuling habe ich da mal ein paar Fragen:

  • Was habt ihr auf den ESP8266 geflasht? Habt ihr da ESP-Easy drauf oder nur eine INO Datei hochgeladen? Könntet Ihr die bitte posten?
  • Noch eine Frage zur Stromversorgung: Die 5 Volt kann ich nicht vom Wemos D1 mini direkt nehmen? Brauche ich wirklich ein separates Netzteil?

Grüße
Thomas
FHEM auf Pi 3, Echo (Plus, Dot und Connect), CUL868/433, HM Komponenten, Broadlink, Enigma (VU DUO2), Alexa/Homebridge, Sonoffs (POW, RF, Basic), Wemos D1 (IR, DHT, BH1750, OLED, BMP180), IT/Steckdosen, Fritzbox mit SIP, Wifilight, MQTT, Pilight, Xiaomi Flower Sensor, Spotify, Dooya, Shelly, Conbee2

Bapt. Reverend Magersuppe

Ich warte noch auf Bauteile aus Fernost. Ich habe mir 2 IR-Projekte rausgesucht die ich dann testen wollte:

Den IR-Blaster oder auf Basis von IR-Remote.
--
If I was born in 1453, Leonardo da Vinci would be jealous of me.
Reverend Paul Egon Magersuppe
Aus versicherungstechnischen Gründen sind sämtliche Beiträge von mir rein spekulativer und theoretischer Natur und sollten nicht in die Tat umgesetzt werden!
Bin hier selten DRIN. AUS GRÜNDEN!

tklein

gibt es eine Möglichkeit die Befehle, die ich mir lirc und irrecord mit meinem Pi gesammelt habe so zu konvertieren, dass ich die mit meinem wemos senden kann?

Hier ein Auszug:



# Leinwand

begin remote

  name  leinwand
  flags RAW_CODES|CONST_LENGTH
  eps            30
  aeps          100

  ptrail        500
  gap          64607

      begin raw_codes

          name KEY_DOWN
              570    1438    1560     480    1549     471
             1539     482    1538     481    1540     480
              526    1466    1563     480     526    1468
             1560     489    1531     481    1539     482
              525    1469    1559     481     527    1469
             1559     481    1540     481    1540     480
             1541     481    1540     481     527    1466
              550    1466     549    1467     547    1467
              548

          name KEY_UP
              571    1437    1559     481    1538     480
             1539     481    1542     476    1538     481
              527    1465    1560     481     526    1466
             1564     476    1544     476    1539     480
              526    1474    1553     481     524    1468
             1561     480    1539     480    1546     474
              526    1467     548    1467     547    1465
              549    1464    1561     481    1538     481
              529

          name KEY_STOP
              570    1439    1557     482    1535     485
             1533     483    1536     482    1536     483
              524    1467    1558     485     522    1470
             1555     482    1537     482    1537     482
              525    1469    1555     483     525    1468
             1557     483    1536     483    1537     483
              524    1468     547    1466    1558     483
             1537     482     525    1472     542    1468
              545

      end raw_codes

end remote


# Denon AV Receiver

begin remote

  name  denon
  bits           15
  flags SPACE_ENC
  eps            30
  aeps          100

  one           255  1852
  zero          255   816
  ptrail        215
  gap          43955
  toggle_bit_mask 0x0

      begin codes
          KEY_VOLUMEUP             0x223C 0x21C3
          KEY_VOLUMEDOWN           0x213C 0x22C3
          KEY_POWER                0x211C 0x22E3
          KEY_POWER2               0x221C 0x21E3
          KEY_2                    0x208C 0x2373
          KEY_3                    0x228C 0x2173
          KEY_4                    0x231C 0x20E3
          KEY_5                    0x224C 0x21B3
          KEY_6                    0x22CC 0x2133
          KEY_7                    0x218C 0x2273
          KEY_8                    0x203C 0x23C3
      end codes

end remote

begin remote

  name  beamer
  bits           16
  flags SPACE_ENC|CONST_LENGTH
  eps            30
  aeps          100

  header       9025  4524
  one           548  1710
  zero          548   575
  ptrail        550
  pre_data_bits   16
  pre_data       0xC
  gap          108283
  min_repeat      1
#  suppress_repeat 1
#  uncomment to suppress unwanted repeats
  toggle_bit_mask 0x0

      begin codes
          KEY_0                    0x728D
          KEY_1                    0xF20D
          KEY_OK                   0x08F7
          KEY_MENU                 0xF00F
      end codes

end remote


Wie müssten die Befehle ausssehen? Einen Protokolltyp (Sony etc.) kann ich ja nicht nehmen. MQTT brauch ich nicht unbedingt? Ich kann die Signale doch via URL ausführen lassen, oder?
Wie muss der Sketch aussehen?

Grüße
Thomas
FHEM auf Pi 3, Echo (Plus, Dot und Connect), CUL868/433, HM Komponenten, Broadlink, Enigma (VU DUO2), Alexa/Homebridge, Sonoffs (POW, RF, Basic), Wemos D1 (IR, DHT, BH1750, OLED, BMP180), IT/Steckdosen, Fritzbox mit SIP, Wifilight, MQTT, Pilight, Xiaomi Flower Sensor, Spotify, Dooya, Shelly, Conbee2