Beiträge von slime

    Kannst du den Fehler denn reproduzieren? Wenn ja, wie?


    Ne Lösung kann ich leider nicht anbieten.
    Aber was du machen kannst ist die "VisualStudio Express" installieren und AtmoWin dort im Debug-Modus laufen lassen. Ist aber nur was für Leute die auch zumindest grob eine Ahnung davon haben was sie da machen, ansonsten ist das verschwendete Mühe.

    Dürfte kein PWM sein oder?

    Doch, ist eine PWM. Das siehst du sobald du das Oszi an einen Ausgang des WS2801-Chip hängst.


    Igor : Ich hab mal die Unterstützung für mein KarateLight in AtmoWin reingehackt. Im Anhang sind alle Source-Dateien die ich (glaube ich!) geändert habe. Das ganze basiert noch auf der 0.49.
    Die 'libkarate' ist mein Versuch die Ansteuerung für die Hardware auf allen Plattformen durch den selben Code zu schaffen. Daher ist die auch mit externC eingebunden.
    Wäre nett wenn du das ins nächste Release aufnehmen könntest.


    Btw: der AtmoWin_0.50 Source Download bei primacom scheint defekt zu sein (oder ich bin zu blöde).

    Dateien

    • karate.zip

      (12,81 kB, 94 Mal heruntergeladen, zuletzt: )

    So, im anhang befindet sich ein python treiber für das karatelight. Der macht nicht viel anders als der serieloutput-driver, aber er liest die rückgabewerte vom KL zurück.


    Um den Treiber zu aktiviere nach /home/<username>/.xbmc/addons/script.dfatmo/resources/lib/drivers/ entpacken,
    dann in den Settings folgendes einstellen:

    Code
    1. <setting id="custom_driver" value="karatenative" />
    2. <setting id="driver" value="custom" />
    3. <setting id="driver_param" value="/dev/ttyACM0" />


    Die Zuordung der Kanäle lässt sich nicht einstellen, die ist automatisch durchnummeriert in der Reihenfolge:
    order for 'colors' is: top 1,2,3..., bottom 1,2,3..., left 1,2,3..., right 1,2,3..., center, top left, top right, bottom left, bottom right


    Als kleiner Hinweis am rande noch: Ich hab das ganze nicht sehr ausführlich getestet; aber es tut unter linux. Auf win32 hab ich es noch net zum laufen bekommen.


    Wäre ganz gut wenn Carsten da mal Stellung zu nimmt warum sich das Karatelight da wegen 1ms verschluckt.

    Gute Frage was da genau passiert.
    Bei 20ms bedeutet das ja eine Update-Rate von 50Hz.
    Das ist generell schon schneller als die minimal zugesicherte USB-Geschwindigkeit von ein Paket alle 64ms. Typischerweise ist der Stack aber viel schneller: meine Testprogramme schaffen 200Hz mit Rücklesen der Daten.


    Ich kann mir allerhöchstens vorstellen das auf PC Seite der Lese-Buffer volläuft und das zu Probleme führt. Warum das nun aber bei 21ms nicht mehr passiert ist ein Rätsel.
    Zudem: Dr.n00b ist jetzt der erste User bei dem das zu einem Problem führt, ich habe ein paar mehr Kunden die nichts ähnliches berichtet haben. Auch bei mir läuft die Hardware mit den default Einstellungen sehr gut. Deswegen gebe ich da ehrlich zu das ich leicht überfragt bin und da nicht direkt was Konkretes zu sagen kann.


    Man könnte mal Testweise einfach auch vom seriellen Port lesen und die Daten dann verwerfen (die müssen ja nicht gecheckt werden, das ist optional) um zu sehen ob das einen unterschied macht.
    Zuerst muss ich aber mal probieren das Problem bei mir zu reproduzieren damit ich das auch debuggen kann :)

    Wie bekomme ich denn aber heraus ob mein atmocontroller/karatelight überhaupt am USB Port erkannt wurde.
    Denn ttyUSBx findet er nix.
    Muss ich irgendwie noch eine Treiber installieren?

    Normalerweise sollte das direkt alles klappen.
    Ein KarateLight erscheint als /dev/ttyACMx


    Falls keine devices erstellt werden mal mittels 'dmesg' nachschauen was der kernel nach dem einstecken des Geräts so meldet.


    Warum der Atmo Filter nicht mit der Hardware redet? - schonmal VLC mit Debug Ausgaben laufen lassen? (Meldungen Fenster --> Strg + M aufrufen und dort vor der Wiedergabe das Verbosity Level auf 2 setzen - dann erscheinen dort mit ein wenig Glück auch Meldungen vom Atmo Filter - vielleicht ist das ja ein entscheidender Hinweis dabei.


    Vielleicht gibt es ja auch ein Problem mit den API's für die Serielle Schnittstelle unter MacOS? - warum die Kommunikation streikt?


    Ich konnte das mangels Zeit auch nicht genauer testen.
    Nachdem der Filter nicht direkt wollte habe ich es mal auf der shell mit 'echo blah > /dev/tty??' probiert.
    Aber auch nach diversen Versuchen mit einfachen C-Programmen (sowas habe ich zum Atmo-Testen) hab die die Hardware nicht dazubringen können mal eine LED zu aktivieren. Ich vermute da schon eher einen systematischen Fehler meinerseits.


    @DaChris: Mir mag jetzt nicht so direkt einleuchten, warum das nicht gehen sollte. Der Filter arbeitet ja im VLC, eigentlich (TM) hat das mit dem Betriebsystem ja nix zu tun.Evtl. gabs da bei PowerPC dank BigEndian probleme, aber da sind wir dank x86 ja vorbei :)

    joah, die Fahrt war einfach ziemlich mächtig. Vor allem die Rükfahrt war lange (6,5 Stunden für 430km).
    Aber mir hats Camp mal wieder viel Spass gemacht.
    War schön die ganzen Gesichter wieder zu sehen.
    Die Verpflegung war auch Super.
    Und als kleiner Bonus war ich sogar Produktiv und hab das KarateLight nun mit xine-post-atmo am laufen :)


    Soweit bin ich auch. Sry, kp :/

    Da es nur eine Zeile mit 'malloc.h' gibt solle diese eigentlich gut zu finden sein.


    Bei configure.ac

    Code
    1. AS_IF([test "${enable_atmo}" != no], [
    2. AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "linux"], [
    3. AC_LANG_PUSH(C++)
    4. VLC_ADD_PLUGIN([atmo])
    5. AC_LANG_POP(C++)
    6. ])
    7. ])


    wird zu

    Code
    1. AS_IF([test "${enable_atmo}" != no], [
    2. AC_LANG_PUSH(C++)
    3. VLC_ADD_PLUGIN([atmo])
    4. AC_LANG_POP(C++)
    5. ])


    Ansonsten der Anleitung aus dem VLC-Wiki folgen.


    Eine komplett neues Programm (AtmoMac) kann ich nicht schreiben. Das ist jeneseits meiner Möglichkeiten.


    Am Wochenende auf dem VDR-Camp hab ich auch die möglichkeit genutzt mit einem neueren Mac ein wenig zu spielen. Das compilieren hat auch geklappt, der Filter hat sich aktivieren lassen. Allerdings hat die Atmo-Hardware prinzpiell nicht mir dem Mac reden wollen. Auch auf der Console habe ich da nichts hinbekommen.
    Das werde ich mit meinem alten Powerbook mal nachvollziehen und versuche zu debuggen.

    Ich hab endlich mal zugriff auf einen neueren Mac gehabt. Auf meinem NewWorld 12"-G4-Powerbook lässt sich kein halbwegs aktueller VLC mehr übersetzen.
    Dabei ist mal ein VLC-Binary mit atmo-support rausgekommen. Testen konnte ich das leider nicht (ich war nur per ssh drauf).


    Download der Binarys (darwin, x64) ist hier:
    http://ca.rstenpresser.de/~cpresser/data/unsorted/vlc.tar.bz2
    http://ca.rstenpresser.de/~cpresser/data/unsorted/vlc.tar.bz2.md5


    Compilieren lässt sich das ganze doch relativ einfach nach der Anleitung aus dem VLC-Wiki (google: vlc, compile, osx). Ich habs anstatt mit dem GIT-head mit version 1.1.9 gemacht.


    Damit sich der Atmo-Filter auch bauen lässt sind zwei manuelle änderungen notwendig.
    0. Source-Datei entpacken
    1. in der Datei "configure.ac" die beiden zeilen 3961 und 3965 löschen (das sind tests auf OS und compiler)
    2. in der Datei "modules/video_filter/atmo/AtmoChannelAssignment.cpp" die Zeile 16 (malloc.h) löschen
    3. bootstrap und compile wie im Wiki angegeben.

    Wäre da noch was in Richtung MacOSX drin?

    Ich hab endlich mal zugriff auf einen neueren Mac gehabt. Auf meinem NewWorld 12"-G4-Powerbook lässt sich kein halbwegs aktueller VLC mehr übersetzen.
    Dabei ist mal ein VLC-Binary mit atmo-support rausgekommen. Testen konnte ich das leider nicht (ich war nur per ssh drauf).


    Download der Binarys (darwin, x64) ist hier:
    http://ca.rstenpresser.de/~cpresser/data/unsorted/vlc.tar.bz2
    http://ca.rstenpresser.de/~cpresser/data/unsorted/vlc.tar.bz2.md5


    Compilieren lässt sich das ganze doch relativ einfach nach der Anleitung aus dem VLC-Wiki (google: vlc, compile, osx). Ich habs anstatt mit dem GIT-head mit version 1.1.9 gemacht.


    Damit sich der Atmo-Filter auch bauen lässt sind zwei manuelle änderungen notwendig.
    0. Source-Datei entpacken
    1. in der Datei "configure.ac" die beiden zeilen 3961 und 3965 löschen (das sind tests auf OS und compiler)
    2. in der Datei "modules/video_filter/atmo/AtmoChannelAssignment.cpp" die Zeile 16 (malloc.h) löschen
    3. bootstrap und compile wie im Wiki angegeben.

    ha hätte ich ein paar Sachen:
    - einen grabber der auch direkt OpenGL und Direct3D abgreifen kann
    - den DirectShow-Filter nutzerfreundlich machen
    - grabber für Media-Foundation (keine Ahnung ob irgendwelche Player das nutzen)
    - boblight-client als ausgabegerät (okay, das könnte ich auch selbst hinbekommen)

    hi,
    das sollte machbar sein.
    Die Dreambox-Oberfläche selbst ist fast komplett in python geschrieben. Irgendwo sollte sich das also einhacken lassen.
    Ob es da etwas bereits fertiges gibt ist mir nicht bekannt, aber ich bezweifele es.