Hallo Zusammen,
nachdem ich hier im Forum meist nur Empfänger von Informationen bin, möchte ich heute auch mal was zurück geben.
Um aus dem Banana Pi einen vollwertigen Client zu machen muss man das Gerät ja auch irgendwie aus seinen Schlaf erwecken können.
Und das ohne extra zum TV latschen zu müssen. (Das ist ja sowas von 2007).
Ob das generell notwendig ist muss man selber wissen. Der BPi kan problemlos am USB des TV betrieben werden, und startet sobald er Strom kriegt.
Zum sauberen herunterfahren müsste man dann aber eine kleine Gangreserve vorsehen. Basteln muss man also auf jeden Fall.
Ein Arduino Mini Pro in Verbindung mit einen TSOP32238, einer Diode, einen Taster und zwei Widerständen soll den Job erledigen..
Die Aufwändigste Modifikation ist einen Pin an den Banana Pi zu löten. Leider haben es die BPi Entwickler versäumt den PowerOn Pin zugänglich zu machen. Also wird direkt am Power-Taster ein Header-Pin angelötet und mit Kleber fixier. Ich empfehle hier einen Kleber der bei UV Bestrahlung aushärtet. So kann man erst die Position gut korrigieren, und hat das Teil dann in 10 Sekunden ausgehärtet.
Kurz das Gehäuse ein wenig bearbeitet, und schon kann das Teil einziehen. Der Arduino Mini Pro wird vom BPi auch im heruntergefahrenen Zustand mit Strom versorgt. Die 3,3V Schiene wird im heruntergefahrenen Zustand "abgeschaltet" (1V kann man noch messen) und wird als Indikator genommen ob der BPi an ist, oder nicht. Zum einschalten wird der neue Pin für 2 Sekunden auf Masse gezogen. Die Diode soll dazu dienen einen Stromfluss vom Arduino zum BPi zu verhindern.
Funktion: Nach dem Start leuchtet die grüne LED am Arduino dauerhaft und Signalisiert den Grundzustand.
Drückt man den Taster zum Anlernen blinkt die LED 3 Mal und erlischt.
Zum Anlernen muss die entsprechende Taste 5 mal betätigt werden. Jeder erfolgreiche Tastendruck wird mit einen blinken quittiert in der Anzahl der Stufe in der er sich befindet. Wird zwischendurch eine andere Taste betätigt fängt das spiel von Vorne an. Nach erfolgreichen anlernen wird der Wert im EEPROM gespeichert und wieder in den Grundzustand gewechselt.
Empfängt der Arduino jetzt den Code wird der Pin für 2 Sekunden auf Masse gezogen. In dieser Zeit erlischt auch die LED.
Wenn der BPi läuft wird der Code einfach ignoriert um ein unbeabsichtigtes betätigen des Tasters zu verhindern.
Vlt. kann es ja jemand gebrauchen.
Gruß,
Jarv
Edit:
Es soll nicht unerwähnt bleiben das ich mir diese Idee vom Kollegen bloern abgeschaut habe. Danke.