Beiträge von driftmonster

    Hallo zusammen,

    ich hoffe der Titel ist nicht zu kryptisch geraten, dass man erkennen kann was ich gerne von euch erfahren würde ;)

    Ich fasse das aber nochmal besser auf:

    Hat jemand sein Hyperion auf einem RPi2 installiert und wäre bereit zu berichten, wie sich die Geschwindigkeit des Auswertens auf die Aktualisierungsrate sowie Lag auswirken?

    Ich würde nämlich, wenn es einen deutlichen Unterschied gibt, auf den 2er umsteigen, da mir das Lag momentan bei meiner gewünschten Konfiguration mit ca. 0.1 Sekunden noch minimal (ich weiß, meckern auf hohem Niveau :D) zu hoch ist.

    Würde mich sehr über Rückmeldung freuen ;)

    Den WLAN Stick brauchst du nur fürs Internet, nicht für den Controller. Zum Einrichten deines Aufbaus würde ich erstmal zum Kabel greifen.

    Um den Controller anzuschliessen, kommst du meines Wissens nach nicht um den Adapter von MS rum.

    //EDIT: Alternativ kannst du auch eine alte RF Unit von einer alten 360 nehmen und die ein USB Kabel anlöten, die Diode aber dann nicht vergessen.

    Du kannst eine Variable, nennen wir sie mal THREAD_RUN, erstellen und auf True initialisieren. Wenn der Handler dann das SIGTERM empfängt, setzt du THREAD_RUN auf False und machst nicht mehr.
    Das bewirkt, dass deine Schleife bis zum Ende durchläuft. Danach wird das Programm normal weiter abgearbeitet. Man kommt aber bei meiner Version nicht um das "global" nicht rum.

    Code
    while THREAD_RUN:
    ...
    Code
    def signal_handler():
         global THREAD_RUN
         THREAD_RUN = False


    meigrafd: Hab letztens ein ähnliches Problem gehabt, allerdings lief die Funktion bei mir noch in einem eigenem Thread, sodass ich mich für "global" Version entschieden hatte um schnell Variablen zwischen mehreren Threads schreiben zu können. Bin in Python auch noch nicht so begabt, allerdings hatte diese Lösung die geringste Arbeit bereitet. Wenn du da eine elegantere, aber genauso einfache Lösung hättest, würde ich mich freuen ;)

    Hätte mir eigentlich schon beim ersten Mal auffallen sollen, allerdings dir eigentlich auch, man kann ja deutlich sehen, dass die angegebenen Pfade nicht passen.
    Das Problem wird daran liegen, dass du den Pfad unter /etc/ benutzt und nicht den Pfad, wo deine Konfigurationen liegen?

    Die "Erste" Konfiguration läuft, da es in /etc/ einen symbolischen Link zur Datei in /opt/hyperion/config/ gibt, zur "Zweiten" hast du aber wahrscheinlich keinen Link erstellt. Daher nochmal; Merk dir den Pfad, wo deine Konfiguraionen liegen (Klartext:"/opt/hyperion/config/") und trage diesen anstatt "/etc/" in deinem Script ein.
    Alternativ kannst du natürlich auch einen Link in /etc/ erstellen. Davon rate ich aber ab, da man so beim Umbennen und Testen immer Probleme bekommt.

    Prinzipiell ist boblight (glaube ich) das einzige Programm was unter Windows läuft. Auf dem RPi dann Hyperion isntallieren, das kann ja mit boblight kommunizieren. Allerdings bin ich da kein Spezi, dass ich dir genauere Informationen zum Aufbau bzw. zur Konfiguration geben kann.

    Jetzt habe ich folgendes Ziel, ich bringe Hyperion bei auf andere GPIO Pins zu hören und die Sache müsste gegessen sein.

    Wisst Ihr, wo in Hyperion eine solche Einstellung zu tätigen ist?
    Im großen weiten Ozean des Internets fand ich sonst nur wenig hilfreiches.

    Hahusu

    Hi,

    zuerst mal "hört" hyperion doch auf keinen GPIOs, gibt ja nur über SPI die Daten raus.
    Da der Raspberry aber zwei SPI Interfaces hat, kannst du im Code bestimmt ansprechen, dazu müsstest du dich aber mal in die source auf der Github Seite einlesen. nach der Änderung komipilierst du das dann alles nochmal und dann sollte das funktionieren.

    Hab gerade mal durch Zufall hier vorbei geschaut, da ich das Script nun auch verwende, sehr nützlich übrigens, besten Dank pmmd ;)

    @humi: Das Anpassen der Pfade ist ja das einzige was man machen muss, du merkst dir den Pfad wo deine Konfigurationen für Hyperion liegen und schreibst sie an die Stelle der momentan vorhandenen.

    Zur Sicherheit schreib mich mal noch, dass das Script nach /etc/init.d/ gehört und (zumindest bei mir) Rechte 755 hat.

    Souu, es geht weiter mit neuem Material zu dem Projekt ;)

    Ich habe mal noch meine Platine bzw. eher Schaltung ein wenig weiter designed und möchte euch diese noch zeigen. Die Dateien hänge ich in an, sind direkt aus Eagle.
    Das Layout der Platine habe ich nicht fertig, da würde ich mich sehr freuen, wenn da einer von euch noch Lust zu hat diese auf den Raspberry Pi B anzupassen. Dafür können auch gerne die Bauteile gegen SMD Versionen getauscht werden, da ich zum Erstellen erstmal nur die erstbesten und momentan eingesetzten Bauteile benutzt habe.

    RPi_Schaltung.zip

    Freut mich dir geholfen zu haben ;)

    Hätte dir auch als nächsten Schritt mal meinen auch etwas älteren Quellcode geschickt, der arbeitet auch noch nach dem alten Prinzip.

    Über ein paar Bilder des Ergebnisses würde sich aber sicher nicht nur ich freuen ;)


    Ok, ich habe das nunmal alles soweit konfiguriert, mit leichten Anpassungen:

    Code
    "device" :
    {
    	"name"       : "MyPi",
    	"type"       : "piblaster",
    	"output"     : "/dev/pi-blaster",
    	"assignment" : " r  g b "
    },

    Bei dem Assignment hattest du glaube ich ein Leerzeichen zu viel. Wenn ich es richtig verstehe, sind es 8 Channels, wie man auch hier nachlesen kann: https://github.com/sarfata/pi-blaster

    Prinzipiell hast du recht, wenn du dich auf die Anleitung beziehst, im Code ist inzwischen allerdings schon der neunte GPIO nutzbar (27), daher muss das Leerzeichen schon rein ;)


    Desweiteren habe ich noch unter LEDs drei Einträge gemacht, wie hier beschrieben: http://forum.osmc.tv/showthread.php…=92735#pid92735

    Ich würde eigentlich nur einen Eintrag machen, der die ganze Fläche abdeckt.
    Der Rest resultiert wahrscheinlich aus dem Fehler beim Ansprechen von piblaster

    //Edit: Du kannst auch im Code die unbenutzten GPIO auskommentieren, dass du nur noch 3 übrig hast, dann solltest du auf alle Leerzeichen verzichten können.

    //Edit2: Im Code des Hyperion-Plugins ist alles auf 8 Kanäle abgestimmt, die Änderung würde aber nur zwei Stellen betreffen. Alternativ passt du die Anzahl auf 8 über das Auskommentieren im piblaster Code an, es reicht glaube ich sogar oben den zB GPIO27 wieder zu deaktivieren. Du müsstest lediglich neu compilieren und dann auch wirklich das Leerzeichen aus dem Header der Config löschen.


    Vielen Dank schonmal.
    Inzwischen habe ich folgendes:
    TV-Bild kommt an
    ambi-tv installiert
    RGB-Steuerung über pi-blaster funktioniert

    Wie konfiguriere ich nun ambi-tv am Besten (leds-top, bottom, left, right)? Und wie komme ich an die Farbe, welche ambi-tv letztendlich ausgibt?

    Theoretisch muss ich mir dann ein Script schreiben, welche alle x Millisekunden den Farbwert errechnet und dementsprechend meine Farbkanäle aktiviert oder?

    EDIT: Ich sehe gerade, dass ambi-tv einen Durchschnitts-Farb-Effekt hat, der im Prinzip genau das macht, was ich möchte. Kann ich auf diesen direkt zugreifen?

    Freut mich, dass der Ansatz mit piblaster soweit läuft ;)

    Bin kein spezi für ambitv, aber du kannst an GPIO3 (glaube ich?) n Taster anschliessen und damit die Modi durchschalten

    Joa, deine LEDs wirst du über PWM steuern müssen.

    Im Endeffekt wirst du ja aus deinem Hyperion/ambitv eine Farbe (bestehend aus R, G und B, je ein Byte in HEX) bekommen.
    Diese HEX Werte musst du dann lediglich normieren und damit dein PWM Signal (->z.B. über piblaster) füttern. Frequenz kann ich dir natürlich nicht sagen, da kein Datenblatt vorhanden ist, solltest du aber rankommen können.