Hilfe gesucht! Projekt: HTPC in Reelbox-Gehäuse

  • Hallo zusammen,


    ich habe mir ein kleines Projekt vorgenommen, da mir irgendwie keines der bezahlbaren HTPC-Gehäuse wirklich zusagt: ION/Atom330-basierter HTPC mit Netceiver als Tuner in einem Reelbox-Gehäuse.


    Mittlerweile hab ich schon alle Hardware, auch die Software auf yaVDR-Basis funktioniert soweit schon.


    Abgesehen davon, dass ich die Rückblende des RB-Gehäuse noch anpassen muss, will ich natürlich auch das Frontpanel incl. Display nutzen.


    Mit der Pin-Belegungsanleitung von http://wiki.reel-multimedia.com/index.php/Benutzer:Xtra#fps (danke an den Verfasser!) und einer ELV-Bastelanleitung für einen TTL/RS232-Umsetzer hab ich's mittlerweile auch geschafft, die Paneltasten und rudimentär auch das Display per RS232 anzusprechen.


    Mein Problem ist nun folgendes: ich will natürlich auch die Einschaltfunktionen des Panel nutzen. Dafür habe ich auch ein original Reelbox-Netzteil gekauft... aber leider versteh ich dessen Belegung und Zusammenschaltung mit dem Frontpanel nicht.


    Ich wäre sehr dankbar, wenn mir jemand da weiterhelfen könnte. Evtl. würde mir sogar schon ein gut aufgelöstes Foto der kleinen Original-Platine der Reelbox neben dem Netzteil reichen.... ein Schaltplan wäre natürlich absolut genial... ;)


    Bin für jede Hilfe dankbar und werde am Ende mein Projekt auch mit einem kleinen HOWTO vorstellen...


    Grüße
    antubis

  • > ein Schaltplan wäre natürlich absolut genial...


    Der bleibt bei mir :P


    Beim NT musst du erstmal an dem 4poligen Stecker weiss und lila überbrücken. Sonst bekommt das MB keine ATX-Standbyspannung, und kann so oder so nicht angehen. In der Reelbox übernimmt die kleine Platine beim NT das schaltbar, sodass man (wenn man kein Wake-on-LAN oder USB-Power braucht), die 2-3W des Mainboards dafür auch noch einsparen kann.


    Pin 2 vom Frontpanel (5V Power) geht an die lila/weisse Leitung. Damit hat das Frontpanel immer Strom. Pin 4 verbindest du mit den 5V vom Mainboard (rote Leitung...).


    Jetzt wirds mit dem Poweron etwas fummelig. Das Frontpanel ist nahezu unverändert von der Lite übernommen, die hatte kein ATX. Daher ist der MB-Power-On-Pin nicht kompatibel zum normalen Power-On von ATX. Da war der Pin unmittelbar für das Schalten der Stromversorgung zuständig (0V: MB aus, 5V: MB ein).


    Die Umsetzung auf das ATX-Verhalten wird in der Avantgarde in dem Microcontroller auf der Lüftersteuerung gemacht. Allerdings wird da das MB auch nur eingeschaltet, aus gehts über ACPI von selbst. Das Frontpanel merkt das über Pin 4 und setzt sein Signal dann auch auf 0.


    Wenn du das nachbauen willst, wirst du um eine kleine Transistorschaltung nicht herumkommen. Im Endeffekt muss man beim Übergang von 0 auf 1 den ATX-Power-Pin kurz auf 0 ziehen. Kurz deshalb, weil bei >4s die MB ja meistens hart abschalten.


    Ich würde mal sagen, dass folgende Schaltung tun sollte:


    Code
    T1
                                 |----------------------->   ATX-PWR Mainboard
    Frontpanel-Pin9 >--C1--R1----|
                                 |->-----------_ Masse


    Kollektor an ATX, Emitter an GND. C1 so 1u-10u (Elko mit Minuspol zur Basis), R1 ca. 10kOhm, T1 BC337-40 (oder irgendein anderer Kleinleistungs-NPN).


    Das erzeugt beim Übergang 0 auf 5V von Pin 9 einen kurzen Puls nach Masse.


    Ausprobieren kann man das im Testmode des Frontpanels (beim Poweron des FPs die Ejekttaste gedrückt halten, es kommt so eine Uhrzeitanzeige zum Testen der Tasten). Wenn man dann die "blaue"/rechte Taste unterm Display drückt, geht Pin 9 auf 0.

  • Ah nochwas: Die neuen NTs haben einen Lüfter, der von "aussen" angesteuert werden muss. In der AVG macht das auch die Lüfterplatine. Du solltest den dreipoligen Stecker zB. an einen der Lüfterpins vom MB hängen (oder an einen eigene Lüftersteuerung), muss auch gar nicht maximale Drehzahl haben, Hauptsache er dreht sich. Aber das NT ohne laufenden Lüfter zu betreiben ist jedenfalls keine gute Idee.

  • hm... ich glaub, ich hab's theoretisch verstanden... :)


    komisch nur, dass wir schon alle möglichen PINs (v.a. natürlich PIN 9) durchgemessen haben... ne spannung oder nen spannungsabfall haben wir beim drücken von power nie festgestellt... :(


    haben wir was übersehen... oder ist mein panel kaputt... zumal die rewind-taste auch nicht funktioniert (alle anderen liefern sauber ein KEY-event bei laufendem reelbox-ctrld)?


    ...und wenn ich hier schonmal quasi an der quelle bin... noch n paar fragen:


    - reagiert der IR-empfänger nur auf die reel-fb, oder kann ich auch ne andere verwenden?
    - ich kann via reelfpctl zwar die uhrzeit setzen, led blinken lassen, etc., aber das mit dem display ist noch irgendwie komisch... wenn ich ein -clearlcd mach, löscht er mir nur die rechte untere ecke des displays - allgemein scheint er nur diese ecke anzusprechen... im rest vom lcd bleibt das reelbox-logo liegen. was muss ich da noch machen, dass ich das volle display ansprechen kann (koordinaten verschieben?)?
    - wie funktioniert das dann mit dem graphlcd-treiber? kompiliert und installiert hab ich schon das zeug aus dem svn...

  • nachtrag: gerade hab ich's geschafft, das komplette display mit einem -clearlcd zu löschen (wie auch immer, hab zu den vorigen tests nix geändert)... auch konnte ich mit -showpnm ein bild auf dem lcd anzeigen. bei -toptext oder -bottomtext wird nur das reel-logo und dann ein leerer schirm bzw. ein leeres eck rechts unten (s.o.) angezeigt.


    wenn ich mit dem graphlcd-tool showpic ein logo (.glcd) hinschicke, wird das lcd wieder nur resettet (reel-logo), dann kurz ein leerer bildschirm und dann die uhrzeit angezeigt.

  • > ne spannung oder nen spannungsabfall haben wir beim drücken von power nie festgestellt...


    Nur dann, wenn Pin 4 auf 0V ist. Wenn das MB an ist, kann man es nicht mehr anschalten. Versuch den Test-Mode, da ist es deutlicher...


    > - reagiert der IR-empfänger nur auf die reel-fb, oder kann ich auch ne andere verwenden?


    Mit der aktuellen FW geht nur die Reel-FB, die neue (in ein paar Wochen) kann Raw-IR, der Code zum einspeisen ins Lirc ist im reelbox-ctrld schon drin.


    > wenn ich ein -clearlcd mach, löscht er mir nur die rechte untere ecke des displays


    Hm, kann ich nicht nachvollziehen. Betriebsspannung und RS232/TTL-Konverter sind "sauber"?


    > - wie funktioniert das dann mit dem graphlcd-treiber? kompiliert und installiert hab ich schon das
    > zeug aus dem svn...


    Das graphlcd.conf muss nach /etc, die diversen Logos/Fonts nach .../vdr/plugins/graphlcd, beim vdr braucht es "-Pgraphlcd -c /etc/graphlcd.conf -d st7565r". /dev/frontpanel sollte auf das passende ttyS* zeigen.


    > bei -toptext oder -bottomtext wird nur das reel-logo und dann ein leerer schirm bzw. ein
    > leeres eck rechts unten (s.o.) angezeigt.


    Klingt alles irgendwie sehr stark nach Übertragungsfehlern auf RS232.


    > wird das lcd wieder nur resettet (reel-logo)


    Wenn das mit dem LED-Christbaum wie beim Einschalten passiert, dann sinkt die Versorgungspannung unter 4.5V. Da ist eine recht harte Spannungsüberwachung drin.

  • juhuuu... funktioniert :)



    Zitat

    Original von real_schorsch
    Nur dann, wenn Pin 4 auf 0V ist. Wenn das MB an ist, kann man es nicht mehr anschalten.


    das war das problem. pin 4 war nicht angeschlossen, dadurch wohl nicht sauber auf 0V und deswegen haben wir den impuls nicht messen können


    Zitat


    Mit der aktuellen FW geht nur die Reel-FB, die neue (in ein paar Wochen) kann Raw-IR, der Code zum einspeisen ins Lirc ist im reelbox-ctrld schon drin.


    ja... den reelbox-ctrld starte ich schon im raw-mode. komm ich da irgendwie an die neue FW und wie krieg ich die auf das panel?


    geh ich recht in der annahme, dass mit einer anderen FB das einschalten nicht mehr funktioniert... nur noch über die taste an der box?


    Zitat


    Klingt alles irgendwie sehr stark nach Übertragungsfehlern auf RS232.


    auch hier hattest du recht. die masse vom rs232-connector zum board war nicht angeschlossen. jetzt kann ich das display über reelfpctl korrekt ansprechen.


    Zitat


    Das graphlcd.conf muss nach /etc, die diversen Logos/Fonts nach .../vdr/plugins/graphlcd, beim vdr braucht es "-Pgraphlcd -c /etc/graphlcd.conf -d st7565r". /dev/frontpanel sollte auf das passende ttyS* zeigen.


    das hab ich alles. die graphlcd-treiber und die graphlcd.conf hat mit der make install bereits korrekt rumkopiert und die einstellungen im plugin mit -c und -d hab ich auch gemacht.


    ich hab auch schon udev-rules für /dev/frontpanel und die 2 input-devices des reelbox-ctrld und einen upstart-job für den daemon gebaut... das läuft alles.


    wenn ich via showpic oder showtext etwas ans display schicke, zeigt er mir das auch kurz an, schaltet dann aber sofort um in den displaymode 1 (uhrzeit) und bleibt da. vom vdr selbst seh ich keinerlei ausgaben auf dem lcd - trotz plugin.


    wir haben folgendes gebastelt und konfiguriert:



      - ~/schaltplan.png (s. Anhang)


      - /etc/graphlcd.conf (s. Anhang)


      - /etc/udev/rules.d/99-reel-frontpanel.rules

    Code
    KERNEL=="ttyS0", SYMLINK+="frontpanel"
    KERNEL=="uinput", SYMLINK+="input/uinput"
    
    
    KERNELS=="input*", ATTRS{name}=="Reelbox Frontpanel Part I (VDR-Mode)", SYMLINK+="input/rbfp0"
    KERNELS=="input*", ATTRS{name}=="Reelbox Frontpanel Part II (XINE-Mode)", SYMLINK+="input/rbfp1"


    - /etc/init/reelbox-ctrld.conf


  • > komm ich da irgendwie an die neue FW und wie krieg ich die auf das panel?


    Ich werde sie wohl samt Flash-Tool (geht auch über RS232) ins Wiki legen.


    > geh ich recht in der annahme, dass mit einer anderen FB das einschalten nicht
    > mehr funktioniert... nur noch über die taste an der box?


    Gehst du nicht. Es gibt die Möglichkeit, für genau einen Code ein Timing im FP-EEPROM zu hinterlegen, der dann auch als Power-On interpretiert werden soll. Ist aber noch etwas ...hüstel... schlecht dokumentiert, bzw. es gibt noch kein Tool, was eine LIRC-Beschreibung dafür umwandelt. Ich habe zum Testen einfach den printf-Output der Raw-Lirc-Messages aus dem reelbox-ctrld genommen... Das Reinprogrammieren selbst geht dann über reelfpctl


    > schaltet dann aber sofort um in den displaymode 1 (uhrzeit)


    Den Mode kannst du auf 0 umstellen, wenn du die Uhr loswerden willst, von ganz allein passiert das nicht. Das PI macht es aber eigentlich. Es klingt bei dir aber so, als würde die Schnitstelle nicht passen. Hast du beim Compilieren von glcd-base die Environment-Variable FP_DEVICE auf /dev/frontpanel gesetzt? Das Device in der graphlcd.conf wird praktischerweise ignoriert :schiel

  • Zitat

    Original von real_schorsch
    Den Mode kannst du auf 0 umstellen, wenn du die Uhr loswerden willst, von ganz allein passiert das nicht.


    ja, ist mir klar. aber jedes mal, wenn ich showpic (oder showtext) aufrufe, schaltet er, nachdem das bild (oder der text) kurz (seeeeeeehr kurz) angezeigt wurde, zurück in den mode 1


    Zitat


    Das PI macht es aber eigentlich. Es klingt bei dir aber so, als würde die Schnitstelle nicht passen. Hast du beim Compilieren von glcd-base die Environment-Variable FP_DEVICE auf /dev/frontpanel gesetzt? Das Device in der graphlcd.conf wird praktischerweise ignoriert :schiel


    PI?
    die environment-var hatte ich nicht gesetzt. wenn er das falsche device anspricht, dürfte er aber garnix anzeigen, oder?

  • > aber jedes mal, wenn ich showpic (oder showtext) aufrufe, schaltet er,
    > nachdem das bild (oder der text) kurz (seeeeeeehr kurz) angezeigt wurde, zurück in den mode 1


    Wenn der Test-Mode nicht mehr läuft (kommt man nur mit echtem Power-Off raus), könnte es noch eine kleine Unverträglichkeit mit dem "Quickstandby" vom Reel-vdr sein. Der hat einen Mode, wo er zwar noch läuft, aber alles inkl. Video und Frontpanel gemuted ist. Wüsste aber nicht, wie der da einfach so reinkommt. Oder es ist die Einstellung an, dass er immer die "IdleCLock" anzeigen soll. Schau mal im vdr-Setupfile nach, dass GraphLCDSetup.ShowIdleClock auf 0 steht.


    > PI?


    Plugin...

  • hmm... also ich bin scheinbar zu blöd... mein vdr interessiert sich in keinster weise für das installierte graphlcd-plugin.


    über die tools showtext und showpic kann ich was hinschicken, das wird kurz angezeigt, dann schaltet das display zurück in den displaymode 1. das tool lcdpattern läuft auch problemlos durch und switcht danach auch wieder auf displaymode 1.


    komischerweise sieht das log so aus, als würde das plugin einwandfrei funktionieren... :-/



    Code
    root@yaVDR:~# cat /etc/vdr/plugins/plugin.graphlcd.conf 
    -c /etc/graphlcd.conf -d st7565r


    Code
    root@yaVDR:~# ps aux |grep st7565r
    vdr       3851  8.6  1.7 516476 58108 ?        Ssl  15:33   0:55 /usr/bin/vdr -v /srv/vdr/video.00 -c /var/lib/vdr -L /usr/lib/vdr/plugins -r /usr/lib/vdr/vdr-recordingaction -s /usr/lib/vdr/vdr-shutdown-message -E /var/cache/vdr/epg.data -u vdr -g /tmp --port 6419 -w 60 -Pxine -r -Piptv -Pextrecmenu -Pvnsiserver -Pgraphlcd -c /etc/graphlcd.conf -d st7565r -Plive --port=8008 --ip=0.0.0.0 -Pffnetdev  -Pconflictcheckonly -Pepgsearch -Pexternalplayer -Pchannellists -Ptext2skin -Pfemon -Psvdrpservice -Pavolctl -Pstreamdev-server -r /usr/local/bin/externremux.sh -Pwirbelscan -Pmcli --ifname eth1 -Pquickepgsearch -Preelchannelscan -Posdteletext  -Pnordlichtsepg -Pepgsearchonly -Pmenuorg
    root      4559  0.0  0.0   3328   824 pts/0    S+   15:44   0:00 grep --color=auto st7565r


  • oh mann... manchmal sieht man echt vor lauter bäumen den wald nicht...


    problem war ein fehlendes schreibrecht für den user 'vdr' auf das device /dev/ttyS0


    ich hab zig threads mit dem problem gefunden, gelesen und geprüft, ob das auf mich zutrifft... aber jedesmal ging es dort um ein parallel angeschlossenes display... und in der gruppe 'lp' ist der user bereits gewesen. nur in der gruppe 'dialout', welcher das serielle device gehört, war er natürlich nicht... *gnarf* *kopf* -> *tisch*

  • Ja. Allerdings scheint das je nach Umgebung noch Probleme zu machen, jedenfalls deuten einige absonderliche Hänger bei den AVG-Usern darauf hin. Es gibt fürs Frontpanel eine neue FW, die man reinflashen kann. Wenn man reelbox-control mit -r startet, werden die rohen Timings nach /dev/lirc geschrieben, so dann wieder ein lircd rauslesen kann. Ich kann FW und FP-Flasher heute abend mal zusammensuchen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!