Voor de 'Tweakers' onder ons, te weten: Linux-kenners en IT'ers, er is nog een andere mogelijkheid om de ontbrekende opdrachten aan te sturen met een Harmony remote. Als je geen Tweaker bent, en/of je bent tevreden met de Sequence - oplossing: stop dan met lezen. Onderstaande is volledig op eigen risico. Niet omdat je er iets mee kunt stukmaken, maar om je veel frustratie te besparen.
De Samsung SMT-G7400 en SMT-G7401 (Horizon Mediabox XL) zijn via het thuisnetwerk te bedienen. De Horizo Go apps van IOS en Android doen dat immers ook. Van deze wetenschap kun je gebruik maken, als je een extra 'computer' hebt die je naar believen kunt inrichten, inclusief een IR-ontvanger. In mijn geval: een Raspberry Pi 3 B+, met een RemotePi board. De R-Pi wordt dan aangestuurd met de Harmony remote. Dit mag zelfs eentje zijn die geen Hub heeft (zoals de Harmony One), zolang jouw remote maar 'zicht heeft' op de R-Pi. De R-pi 'vertaalt' vervolgens de ontvangen IR-signalen naar een commando dat via het netwerk naar de Mediabox XL wordt gestuurd.
Werkwijze (zéér ruwweg, anders wordt het een veel te uitgebreide handleiding):
1. Op de Harmony remote: voeg een Infrarood-gestuurd apparaat toe dat je niet in huis hebt. Met dit apparaat bedien je de Raspberry Pi. Hernoem dit apparaat dus naar "Raspberry Pi" (ook al klopt dit strikt genomen niet). Om het overzichtelijk te houden.
2. Op de Raspberry Pi:
- installeer daarop (bijvoorbeeld) Raspbian Lite, het besturingssysteem.
- Zorg ervoor dat het besturingssysteem zélf de IR-commando's ondervangt en vertaalt. Dit kan in Raspbian Lite door in het bestand /boot/config.txt de regel 'dtoverlay=gpio-ir' toe te voegen. Maak dus geen gebruik van LIRC!
- Maak Python - scripts aan, per aan te sturen knop. Deze python-scripts sturen opdrachten naar de mediabox via het thuisnetwerk. Ik heb slechts 3 scripts aangemaakt: voor de TV-knop, de Guide-knop en de DVR-knop. Deze scripts sturen de commando's via het netwerk naar de Mediabox. Zie https://github.com/OrangeTux/einder Met behulp hiervan kun je zelf de Python scripts maken.
- Verwerk de IR-signalen ("events") die via jouw remote door het besturingssysteem worden gegenereerd. Dit kan met een bash-script met daarin het commando 'evtest' (= 'event test'). Je kunt hierin per IR-event het bijbehorende Python-script aanroepen. Dit is dus de verbinding met het IR-event en het netwerk-commando. Zie https://unix.stackexchange.com/questions/428399/how-can-i-run-a-shell-script-on-input-device-event
- Zorg ervoor dat bovenstaand bash-script wordt uitgevoerd bij het starten van het besturingssysteem.
3. Voeg het in 1.) aangemaakte apparaat toe aan een nieuwe activiteit, of aan de activiteit die je al gebruikte om o.a. de Mediabox te bedienen. De knoppen TV, Guide en DVR moet je dus aanpassen, omdat die nu via de Raspberry Pi lopen. De overige knoppen blijven hetzelfde, die bedienen immers de Mediabox rechtstreeks.
Opmerking 1: In de Python scripts moest ik een vertraging inbouwen vóór en na het sturen van het commando naar de mediabox. Deed ik dit niet, dan bleef de mediabox continu commando's bleef ontvangen en liep 'ie vast (alleen op te lossen door deze keihard uit- en aan te zetten).
Opmerking 2: De mediabox moet een vast IP-adres hebben, en je moet 'm kunnen bedienen via jouw app op Android / IOS.