Winlirc / Lirc IR in IPS einbinden und erweitern

HI ich wollte mal euch meine Erfahrungen und daraus enstandenen Wissen mit euch teilen :wink:

Fangen wir von vorne an:

1. Ihr braucht ein Winlirc komp. Empänger/Sender:

USB Infrared Toy v2 [TES42756P] - $19.50 : Seeed Studio Bazaar, Boost ideas, extend the reach

2. Ihr braucht Winlirc und für das IR Modul noch eine Firmware:

Habe euch das alles mal zusammen gepackt:

fileape » download

3. Flashen

Auf dem Ir Toy sind an der Seite mehrer Kontakte:

Überbrückt mit einem Kabel PGC und PGD und schließt es an USB an.

Im Winlircpacket von oben findet Ihr im Unterordner FM eine Datei up.bat, die starten.

Es sollte dann eine Dos-Box aufgehen und die FW wird eingespielt.

Vor man mit IR Toy was machen kann muss man erstmal die FW einspielen.

Von USB trennen, die Brücke (das Kabel) entfernen.

5. IR Toy in Windows installieren.

Steckt den IR Toy wieder an USB an, Windows will dann einen Treiber, den findet man wieder im Packet unter inf.

Wenn z.B. Windows 7 rummotzt das der Treiber blabla nicht Signiert ist einfach auf Trozdem installieren klicken !

Wenn alles gut gelaufen ist solltet jetzt ein neuer Communicatios Port im Geräte Manager von Windows zu sehen sein.

Jetzt ist der IR Toy einsatzbereit :slight_smile:

5. WinLirc konfig

Die Konfig von Winlirc ist sehr einfach, IR Toy muss angesteckt sein !

Geht in den Geräte Manager in Windows und schaut nach welchen Com. Port der IR Toy belegt hat.

Starte Winlirc und klicke auf Reconfiguration.

Wähle beim Input Plug in „IRToy_ori.dll“ aus und klicke auf Setup, dort stellst du dann den Com Port, den du im Geräte Manager nachgeschaut hast ein, und drücke auf ok.

Man braucht noch eine Config Datei, also klicke auf Browse und wähle zum testen einfach mal die mac.txt aus und drücke auf öffnen.

Zum Abschluss auf OK drücken, wenn dann keine Fehlermeldung kommt ist Winlirc jetzt fertig und du kannst auf Hide Windows klicken (dann verschwindet es in der Statusleiste).

6. WinLirc in IPS einbinden

In IPS legt man eine neue Instanz an:

Hersteller: (None)
Gerät: Winlirc

Einfach dann mit ok bestätigen.

Gehe dann auf I/O Instanz, da ist nun ein (neuer) Client Socket angelegt worden. Doppleklick drauf und trage folgendes ein:

Host: 127.0.0.1
Port: 8765

Einfach dann mit ok bestätigen.

Fertig.

7. WinLirc IPS Scripte

Hier ein Beispiel:

$id = 24344 /[IR Fernbedienung\WinLIRC]/ ;

Das ist die ObjektID von dem Gerät WinLirc

WinLIRC_SendOnce($id, „yamaha“, „volume+“);

yamaha = das Gerät was wir steuern wollen (nur im Beispiel)
(Das ist das Erste dropdown Feld in WinLirc)

volume+ = ist der IR Befehl den wir ausgeben wollen (nur im Beispiel)
(Das ist das zweite dropdown Feld in WinLirc)

!!!Achtet auf exakte Schreibweise, Sie muss mit dem was in WinLirc steht gleich sein, auch Groß und kleischreibung !)!!!

Wenn man mehrere IR Befehle hinter einander versenden möchte, empfehle ich eine Pause von 200ms:

ips_sleep (200);

So aber führ heute ist schluss, bis Freitag schreibe ich hier dann noch weiter, wie z:b: man IR Signale von Fernbedienungen anlernt.

Hallo drapple

Bezug auf -->>
Man braucht noch eine Config Datei, also klicke auf Browse und wähle zum testen einfach mal die mac.txt aus und drücke auf öffnen.

In dem WinLirc sind bei mir keine Config Dateien.
Muss ich die selbst anlegen aus den remotes Codes?
Wenn ja in welches Verzeichnis?

Gruß wibo

HI schau mal es gibt es ein Ordner in WinLirc --> Remote oder so, da liegt alles drin.

Hallo drapple,

Viel Dank für Anleitung hat bis hierher prima funktioniert.

Hast du noch Lust und Zeit eine kleine Anleitung um die IR Signale von Fernbedienungen einzulesen bzw. anzulernen.

Gruß
wibo

Hi klar aber ich glaube dafür drehe ich ein Video :slight_smile:

Kommt bald, habe ab nächster Woche, 2 Wochen Urlaub :slight_smile:

Wirklich noch Urlaub, oder ausgewandert ? :smiley:

Gruß
Bruno

hab übers Wochenende auf 3 verschiedenen Rechnern versucht, eine Fernbedienung einzuspielen. Jedesmal das gleiche, entweder nur die Raw_Codes oder sonst beim anlernen der ersten Taste „something went wrong“ und dann Abruch durch WinLirc. Hat da jemand noch eine Idee, an was das liegen kann?

Es geht um die Fernbedienung zum LG HB405SU.

Hi sorry ich komme einfach nichz dazu bin nur noch am Arbeiten und meine Kinder wollen auch mit Papa spielen :wink:

Hi was für deine Version hast du vom IR Toy ?

Ich hatte auch die Probs mit der Sanyo Beamer FB mit der ir Toy V1 mit V2 ging es dann sofort :slight_smile:

hab die V2, FW v.21.

bin nun schon ein Stück weiter. 1 x Befehl semdem funktioniert. Beim 2. senden hängt sich WinLirc auf. Dies hier hab ich gefunden im www:

header_high>4500</header_high> 
  <header_low>4400</header_low> 
  <stop_high>550</stop_high> 
  <stop_low>22300</stop_low> 
  <bit_count>32</bit_count> 
  <repeat_count>1</repeat_count> 
  </pat>
- <pat id="1">
  <header_high>4500</header_high> 
  <header_low>4400</header_low> 
  <stop_high>600</stop_high> 
  <stop_low>96900</stop_low> 
  <bit_count>1</bit_count> 
  <repeat_count>0</repeat_count> 
  </pat>
  </frame_pat>
- <page>
- <button name="電源" repeat_type="1">
  <signal code_pat="0" frame_pat="0">B4B40CF3</signal> 
  <signal code_pat="0" frame_pat="1">00</signal> 

und so sieht das Config-File im Vergleich aus.

begin remote
  name  lg
  bits           32
  flags SPACE_ENC|CONST_LENGTH|REPEAT_HEADER
  eps            30
  aeps          100
  header       4500  4400
  one           600  1620
  zero          600   520
  ptrail        599
  repeat        600  1632
  pre_data       0xB4B4
  gap          104879
  min_repeat      1
  toggle_bit_mask 0x0

      begin codes
          power                    0xB4B40CF3

Kann mir jemand sagen, ob und wenn wo der Fehler ist?

Hat sich erledigt. Min Repeats mussten noch auf Nul.

Hallo Forum,

ich versuche gerade meinen IR-Toy V2 in IPS einzubinden, jedoch ohne Erfolg. :frowning:

Verwendet wird WinXP, Firmware V22, WinLirc 0.9.

Wenn ich über Winlirc direkt meinen Sony-TV ansteuern will, funktioniert das auch.
Wenn ich einen Befehl auf der Fernbedienung sende erkennt das IPS auch richtig.
Will ich aber einen Befehl über IPS ausführen will passiert nichts.
Die Diode am IR-Toy leuchtet kurz auf, das ist alles.

Ich habe im Forum gesucht und auch z.B., wie in einem anderen Thread erwähnt,
in der Registry ein Password mit SendOnce gesetzt, hat aber alles nicht funktioniert.

Kann mir hier jemand weiterhelfen?
Ich bin für jeden Tipp dankbar.

Schönen Sonntag noch.


Darklord

Wie sendest du die Befehle in IPS ?

Poste mal dein Script.

Hier ein Bespiel:

<?
$id = 24344 /*[IR Fernbedienung\WinLIRC]*/ ;
$lsa=GetValueString(46665 /*[IR Fernbedienung\Yamaha\Yamaha\Lautstärke in db]*/);
$yamaha=GetValue(47515 /*[IR Fernbedienung\Yamaha\Yamaha\Power]*/ );

if ($yamaha==false)
{
print "Geht net, Gerät erstmal einschalten !";
}

else
{


WinLIRC_SendOnce($id, "yamaha", "cd");



SetValueString(32045 /*[IR Fernbedienung\Yamaha\Yamaha\Audioquelle]*/ , "CD");
}
?>

Hallo Darklord,

wenn es über WinLirc geht, dann kann das Problem nur am Sende-Kommando liegen. Senden geht:


$id = 12345 /*[WinLIRC]*/;
WinLIRC_SendOnce($id, "LW:\WinLIRC\Fernbedienung.conf", "ON");

Das mit dem Passwort habe ich nicht verstanden, bei mir geht es ohne.

Gruß
Bruno

Hi,

sorry, das Script wollte ich eigentlich auch noch posten.

<?

WinLIRC_SendOnce(12800 /*[Sonstiges\Fernbedienung\WinLIRC]*/, "Sony_RM-ED011", "chan+");

?>

Ich habe alles, um Schreibfehler zu umgehen, mit Copy/Paste angelegt.
Und das Script auch mehrmals neu geschrieben, ich denke dass es daran nicht liegen sollte.

Hier der Link zum Thread mit dem Passwort:

Danke.

Darklord

Hallo,

ich habe nun die Codes von meinem BD-Player verwendet.
Diese funktionieren.

Aber wieso funktionieren die von meinem TV nur über WinLirc, mit IPS jedoch nicht?

Naja, egal auch.
Ich weiß nun, dass es generell funktioniert.
Da muss ich jetzt eben meine eigenen Fernbedienungen anlernen.

Kann mir hier jemand einen schnellen Tipp geben wie ich dabei am besten vorgehe?

Vielen Dank.

Gruß

Darklord

Hallo Forum,

für alle, die noch nicht so recht wissen wie Codes an zu lernen sind:

Hier wird Schritt für Schritt beschrieben wie Ihr vorgehen müsst.

Irgendwo bei der Eingabeaufforderung müsst Ihr „irrecord -serialdevice.dll myremote.cfg“ einfügen.
An dieser Stelle müsst Ihr statt „serialdevice“ die Bezeichnung Eures Gerätes einfügen.
In diesem Fall wäre es also „irtoy“.
So sollte es dann aus sehen: „irrecord -irtoy.dll myremote.cfg“

Jetzt aber zu meinem Anliegen.
Kennt jemand eine bessere, einfachere Möglichkeit die Codes an zu lernen?

Außerdem habe ich für meinen Sony-TV eine neue Datei erstellt und die Codes selber angelernt.
Jedoch habe ich das selbe Problem wie bisher auch.
Über WinLirc gesendet funktioniern diese Codes, über IPS nicht.
Hat jemand eine Idee woran das liegen könnte?

Gruß

Darklord

Hi ich kann dir eine Teamviewersitztung anbieten dann schauen wir mal was da nicht gehen will :wink:

Hi drapple,

danke für Dein Angebot.
Allerdings ist Teamviewer Neuland für mich, habe ich somit auch nicht installiert.
Aber vielleicht werde ich demnächst auf Dein Angebot zurück kommen…:rolleyes:

Trotzdem Danke.

Gruß

Darklord