ALCD plugin ownership

  • Moin moin,
    Nachdem ich nun auch ein Display habe ( Danke HansDampf :] ) hab ich nun mal das ALCD plugin angetestet. In Verbindung mit vdr 1.3.17 ist dies aber alles andere als stabil. Daher habe ich mir mal den Code angesehen und will auch ein wenig drin "rumpfuschen" Daher mal die Frage ob aktuell jemand daran arbeitet ?
    Wenn ich schon dabei bin gleich mal die Frage ob es irgendwelche offenen Wuensche gibt ?! Was allerdings bei mir sofort rausfallen wird ist das "Buchstabenweise Scrollen", da ich dies ueberhaupt nicht mag.
    Gruss
    HelAU

  • Zitat

    Original von helau
    Moin moin,
    Nachdem ich nun auch ein Display habe ( Danke HansDampf :] ) hab ich nun mal das ALCD plugin angetestet. In Verbindung mit vdr 1.3.17 ist dies aber alles andere als stabil. Daher habe ich mir mal den Code angesehen und will auch ein wenig drin "rumpfuschen" Daher mal die Frage ob aktuell jemand daran arbeitet ?
    Wenn ich schon dabei bin gleich mal die Frage ob es irgendwelche offenen Wuensche gibt ?! Was allerdings bei mir sofort rausfallen wird ist das "Buchstabenweise Scrollen", da ich dies ueberhaupt nicht mag.
    Gruss
    HelAU


    Der letzte Verdächtige war Galaga, der wohl auch nicht mehr mag ;)


    Wie ist das Scrollen realisiert? Ständiges Neuschreiben des Inhalts oder per Scroll-Funktion des PICs?
    Evtl. könntest du ja eine Compile-Option vorsehen, ob mit oder ohne ....


    arghgra

  • Moin,
    Auf den ersten fluechtigen Blick sah es nach neuschreiben des Inhalts aus.
    Meiner Ansicht nach ist blockweises Scrollen wesentlich weniger stoerend und auch besser lesbar, so nach dem Prinzip:

    Code
    Originaltext:
    eins zwei drei vier fuenf sechs sieben acht
    Display:
    eins zwei drei vier
    vier fuenf sechs
    sechs sieben acht


    oder so aehnlich :)
    Grusss
    HelAu


  • Wenns gut formatiert ist, bin ich Deiner Meinung. Nur was ist, wenn ein Wort breiter als das LCD ist?


    Hab gerade mal ins Plugin 0.0.21 geguckt - die Scroll-Funktionen des PICs werden nicht genutzt ....


    arghgra


    P.S.: Probier doch die Kommandos dich mal aus:

    Zitat


    0x9A 0x04 LCD scroll write text line 1
    0x9A 0x04 LCD scroll write text line 2


    ..... wobei ich annehme, dass Zeile 2 "0x9A 0x05" sein wird .....

  • Hallo Leute,


    Owner von dem Ding ist Markus Geisler:


    http://home.primusnetz.de/mgeisler/alcd/


    Er hatte aber, als ich in dem Ding rumgepfuscht habe, auch nichts dagegen und neue Versionen von mir auch dort veröffentlicht. Er hat wohl auch keine Zeit mehr dafür.
    Das ist eh Stückwerk, von Meinrad Sauter für den Multitainer geschrieben, von randy für die Activy portiert ...


    Ich gebe euch auch vollkommen recht, daß der Code (so weit ich Ihn verstanden hab) nicht besonders schön ist, und das man das am besten unter Verwendung einiger Teile komplett neu schreiben würde.
    Da ich aber noch nicht viel C++ gemacht habe, war mir das ne Nummer zu groß. Also nur zu. Sagt Bescheid wenn ich, im Rahmen meiner begrenzten Zeit, irgendwas machen kann.


    Zum Thema scrollen:


    Das Scrollen und dauernde neuschreiben, verschlechtert auch die Stabilität. Da wäre seitenweises Scrollen vielleicht ne Verbesserung.
    Das PIC-Programmieren geht halt, aus welchen Gründen auch immer, nur in 99% der Fälle gut. Und je öfter man schreibt, desto häufiger schmiert das ab. Oder man würde die Ursache für die Abstürze finden.


    Wie sieht denn das Scrollen über PIC-Kommandos aus. Ist das dann pixelweile?


    Gruß,


    Sascha

    ... that light at the end of the tunnel is the front of an oncoming train.


    System1:
    Reelbox Avantgarde


    System2 (Backup/Spielerei)
    Software: Windows XP mit DVBViewer, Hardware: Asus Pundit, tevii s660, Nova-T USB, Tevii S660

    Einmal editiert, zuletzt von Galaga ()

  • Zitat

    Original von Galaga
    Sagt Bescheid wenn ich, im Rahmen meiner begrenzten Zeit, irgendwas machen kann.


    Allenfalls die von mir im Thread zu Deiner Plugin-Version vorgeschlagene kleine Änderung für einen weiteren Einstellbereich der Scrollgeschwindigkeit...


    Zitat

    Zum Thema scrollen:


    Das Scrollen und dauernde neuschreiben, verschlechtert auch die Stabilität. Da wäre seitenweises Scrollen vielleicht ne Verbesserung.
    Das PIC-Programmieren geht halt, aus welchen Gründen auch immer, nur in 99% der Fälle gut. Und je öfter man schreibt, desto häufiger schmiert das ab. Oder man würde die Ursache für die Abstürze finden.


    Wie sieht denn das Scrollen über PIC-Kommandos aus. Ist das dann pixelweile?


    Kann ich mir nicht vorstellen; das ist ja kein graphisches, sondern ein alphanumerisches, also zeichenweise organisiertes LCD - über ein so aufgebautes Display kann man in der Regel allenfalls mit großem Aufwand pixelweise scrollen, indem man Bitmaps der Zeichen umdefiniert (wo das überhaupt möglich ist).

  • Zitat

    Zitat:
    Original von Galaga
    Sagt Bescheid wenn ich, im Rahmen meiner begrenzten Zeit, irgendwas machen kann.


    Allenfalls die von mir im Thread zu Deiner Plugin-Version vorgeschlagene kleine Änderung für einen weiteren Einstellbereich der Scrollgeschwindigkeit...


    Nun ja, wenn Helau das komplett umbauen will, werd ich an der alten Version eh nix mehr machen.


    Aber den Geschwindigkeitsbereich zu ändern ist kein Akt:


    In acld.c:


    Add(new cMenuEditIntItem( tr("Scroll speed (199=slowest,200=off)"), &newScrollSpeed, 0, 200));


    In alcd-thread.c:


    usleep(2000);

    // SQ: nicht bei jedem Durchlauf scrollen, sonst ist das zu schnell
    if (ScrollSpeed != 200) {
    scrollcounttime++;
    }
    else {
    scrollcounttime=1;
    }
    updatetime++;
    if (scrollcounttime==(ScrollSpeed+1)) scrollcounttime = 0;
    if (updatetime==2000) updatetime = 0;



    Dann ist das Scrolling von 0-199 regelbar und bei 200 ausgeschaltet.


    Ist ungestestet. Aber Achtung! Ich hab die Erfahrung gemacht, daß es, wenn man diese Warteschleife <10000 setzt, sehr unstabil wird.

    ... that light at the end of the tunnel is the front of an oncoming train.


    System1:
    Reelbox Avantgarde


    System2 (Backup/Spielerei)
    Software: Windows XP mit DVBViewer, Hardware: Asus Pundit, tevii s660, Nova-T USB, Tevii S660

    4 Mal editiert, zuletzt von Galaga ()

  • Moin Galaga,
    Ich seh das fast eher als ne andere Version an, da ich das Handling etwas anders gestalten moechte ( z.B. Blockweise Scrollen ).
    Zudem fliegt das komplette Tastenhandling raus, da dies alles mitels setkeycodes geregelt werden kann, oder uebersehe ich da was ?
    Gruss
    HelAu

  • Moin, Moin,


    mach doch einfach Version 0.3.


    Wie gesagt, blockweises scrollen ist bestimmt besser für die Stabilität Vielleich versuchst Du auch mal die PIC-Programmierung komplett neu zu machen: Es könnte ja sein, daß da nur irgendwo ein blöder Bug drin ist, der die Abstürze verursacht. Von der Ecke hab ich leider ziemlich wenig Ahnung.


    Ich hab noch nie probiert die Frontpanel-Tasten umzudefinieren.


    Kannst mir gerne neue Versionen zum Test zukommen lassen.


    Gruß,


    Sascha

    ... that light at the end of the tunnel is the front of an oncoming train.


    System1:
    Reelbox Avantgarde


    System2 (Backup/Spielerei)
    Software: Windows XP mit DVBViewer, Hardware: Asus Pundit, tevii s660, Nova-T USB, Tevii S660

  • Moin,
    So langsam gehts voran :) Allerdings fehlt mir immer noch ein vernuenftige Beschreibung des PIC-Interfaces. Zu den Return Codes habe ich noch nix gefunden und es fehlen auch noch einige Kommandos.
    Das Scrollkommando hab ich bisher auch noch nicht sinnvoll anwenden koennen - geht das ueberhaupt ?
    Ansonsten noch ne Geschmacksfrage zum Scrollen:
    angenommen der text heisst:


    Der mit dem Wolf tanzt


    Wie sollten dann die unterschiedleichen Anzeigen aussehen:


    oder seht ihr noch andere huebsche Varianten ?
    Macht es Sinn durch nen . oder <> auf die Scrollactivitaet hinzuweisen ?


    Und die naechste Frage zur Message-LED - macht das Sinn diese konfigurierbar zu halten ? Ich seh eigentlich nur 2 Verwendungen:
    Auf Rot schalten falls eine Aufnahme laeuft - und blinken lassen wenn ne Nachricht erscheint.


    Gruss
    HelAu

  • Zitat

    Original von helau
    So die erste Version ist jetzt mal fertig.
    Testet diese bitte mal ein wenig :)


    Leider "krieg' ich sie nicht gebacken" (Luzifer_mentox 0.6.1 nach http://linvdr.org/wiki/index.php?pagename=LinVDR-Development&version=39:(



    Okay, womit lerne ich (online) besser C++ speziell zur Pinguinbändigung? :whatever
    Sorry, ist mir aus dieser Meldung nicht klar, wie das Problem zu beheben ist...


    Was mir außerdem unklar ist: Warum sieht cd /vdr-1.3.11; make plugins nicht in das Verzeichnis dieses Plugins, wenn es nach tar xzf vdr-alcd-0.1.0.tgz einfach alcd-0.1.0 heißt (ein make direkt darin bringt übrigens auch nur die oben zitierte Fehlermeldung) - sondern erst, wenn ich es in alcd umbenenne?

  • Zitat

    Original von TEN
    Was mir außerdem unklar ist: Warum sieht cd /vdr-1.3.11; make plugins nicht in das Verzeichnis dieses Plugins, wenn es nach tar xzf vdr-alcd-0.1.0.tgz einfach alcd-0.1.0 heißt (ein make direkt darin bringt übrigens auch nur die oben zitierte Fehlermeldung) - sondern erst, wenn ich es in alcd umbenenne?


    weil das schon immer so war? ;)


    es dient dazu, mehrere pluginversionen parallel zu halten; in der regel linkt man
    die aktuellste version. (ln -s alcd-0.1.0 alcd)


    ist bei jedem anderen plugin genauso


    -- randy

  • Zitat

    Original von helau
    Der Compilerproblem liegt leider an der GCC Version.
    ( http://www.vdrportal.de/board/thread.php?page=2&threadid=23128 ). Kannst Du mal ein bischen damit rumexperimentieren und evtl. einen Patch bauen ?


    Kenne mich leider nicht genug aus:
    DEFINES += -D_GNU_SOURCE steht schon im Makefile.


    Ein define allein hilft leider nichts (#include <vdr/tools.h> steckt in activylcd.c aus alcd-0.1.0), weil ja keine Sonderbehandlung für __STL_CONFIG_H vorgesehen ist, und ich nicht weiß, wie man um dieses Problem herumprogrammieren kann:


    BTW, zu allem Überfluß hat gerade irgendein ...:§$%... die LinVDR-Doku mit riesigen Linklisten kaputtgespammt (bei Wikis ist das wirklich ein Fall für den Staatsanwalt :( oder vielleicht besser noch, gleich für ein Erschießungskommando :whatever ), seht Euch mal die Bescherung an - d.h. man kann nur noch über oben verlinkte Nummern der Vorversionen zugreifen:


    Zitat


    Leider geht auch die neueste Version der Development-FAQ (letzte "Q:") nur auf die Installation von gcc 2.95 ein, womit sich der Vorgänger alcd-0.0.21 auch noch problemlos kompilieren ließ.
    Wenn jemand die Schritte auch für eine Installation des aktuellen gcc unter LinVDR nachvollziehbar aufführen kann (und sei's nur aus der .bash_history), wäre das eine große Hilfe, um wieder "in die Gänge zu kommen".

  • Falls jemand alcd-0.1.0 als binary für vdr-1.3.11/12 zur Verfügung stellen könnte, teste ich gerne auch erst einmal damit... allerdings wäre es auch im Hinblick auf andere Plugins schon hilfreich, die "Schritt-für-Schritt"-Dokumentation zum Einrichten des Compilers zu aktualisieren - hat denn z.B. nach all den Monaten schon jemand ein PSone mit GraphTFT am CVBS-Ausgang (Composite Video/FBAS, vom internen VGA-Chip) der Activy am Laufen? :rolleyes:

  • Zitat

    Original von TEN


    Kenne mich leider nicht genug aus:
    DEFINES += -D_GNU_SOURCE steht schon im Makefile.


    Ein define allein hilft leider nichts (#include <vdr/tools.h> steckt in activylcd.c aus alcd-0.1.0), weil ja keine Sonderbehandlung für __STL_CONFIG_H vorgesehen ist, und ich nicht weiß, wie man um dieses Problem herumprogrammieren kann


    Außer mit brutalen Methoden - sehe ich das richtig, die Library sollte in diesem namespace nichts definieren, also greifen wir zum Messer, hacken links, hacken rechts...

    Code
    // /usr/include/g++-3/stl_algobase.h:76
    /* template <class _Tp>
    inline void swap(_Tp& __a, _Tp& __b) {
      _Tp __tmp = __a;
      __a = __b;
      __b = __tmp;
    } */

    ... und wenn das Stück Code noch irgendwo gebraucht wird und sich keiner mehr an den Patch erinnert, geht's dem System bald richtig schlecht? :rolleyes:

    Code
    cd /vdr-1.3.11
    make plugins # und es geht unter LinVDR wohl doch nur hier - sonst wird kein .so erzeugt
    cp PLUGINS/src/alcd-0.1.0/libvdr-alcd.so /mnt/..."Produktivsystem".../usr/lib/vdr/plugins/libvdr-alcd.so.1.3.11

    Also, was ich da "verbrochen" habe, ist wohl eher ein "dirty hack" als der Weisheit letzter Schluss... aber es läuft.


    Nun zum ersten Eindruck:

    • Im /var/log/activyrc2.log sind bislang keine PIC-Resets mehr zu finden! :]
    • Isch-will-Kühö, äh, nein, Umlaute :whatever
    • Leider ist das "vertikale Scrolling", weil es meist nur zwischen zwei Textzeilen umschaltet, wegen des Display-Layouts von 20*2 eben doch schwerer lesbar als das gängige horizontale, daher reichlich gewöhnungsbedürftig und deshalb sicher auch nicht besonders "DAU-tauglich" oder "WAF-kompatibel"... :rolleyes:
  • Moin,

    Zitat

    Im /var/log/activy2rc.log sind bislang keine PIC-Resets mehr zu finden!


    Ich denke die schreibe ich in dem Falle auch gar nicht :) Es wuerde dann lediglich ein Eintrag im syslog zu finden sein.

    Zitat

    Isch-will-Kühö, äh, nein, Umlaute

    Isch nischt - daher hab ich die reausgemacht :) Kann das Display denn diese richtig anzeigen ?

    Zitat

    Leider ist das "vertikale Scrolling", weil es meist nur zwischen zwei Textzeilen umschaltet, wegen des Display-Layouts von 20*2 eben doch schwerer lesbar als das gängige horizontale, daher reichlich gewöhnungsbedürftig und deshalb sicher auch nicht besonders "DAU-tauglich" oder "WAF-kompatibel"...


    Wie meinst Du denn das ? Bei einer Sendung bleibt immer die obere Zeile konstant und die untere scrolled. Wann wird denn senkrecht gescrolled ??? Lediglich eine Message sollte zweizeilig angezeigt werden ( sofern laenger als 20 Zeichen )
    Gruss
    HelAu

  • Zitat

    Original von helau


    Wie meinst Du denn das ? Bei einer Sendung bleibt immer die obere Zeile konstant und die untere scrolled. Wann wird denn senkrecht gescrolled ??? Lediglich eine Message sollte zweizeilig angezeigt werden ( sofern laenger als 20 Zeichen )


    Sie springt zwischen Anfang und Ende des Titels hin und her, statt (wie bisher) horizontal zu scrollen... die ersten zwei Testpersonen schauten gleich verwundert. :whatever

Jetzt mitmachen!

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