SIGROK2EGA - CGA/EGA/HGC capture mit 6€ USB-Logic Analyzer

  • Hallo,

    ich bekomme leider kein Bild angezeigt.

    Ich habe mal ein paar Bilder vom Bildschirm gemacht.

    Wie ist die Vorgehensweise beim Eintragen der Befehle?

  • Hmm, habe ich so noch nicht gehabt. Probier mal ein paar andere Anschlüsse durch. Ich glaube das Teil kann ohnehin nur USB 2.0?

    Ansonsten hatte ich erst die Saleae Software installiert...vielleicht hat die einen anderen Treiber?

  • Hab mal ein bisschen recherchiert. Das Problem liegt bei der USB-Verbindung ... kommt öfter vor. Bis 8 MHz läuft es bei mir (und anderen) stabil. Die höheren Frequenzen sind anscheinend ein bisschen Glückssache.

  • Es bricht leider vorher ab. Aber warum USB 3 nicht reicht?!

    Das Problem hab ich mit der Logitech Wireless Tastatur auch.

    Die meldet sich an USB3 ständig ab und an.

    An einen USB2 Port gesteckt funktioniert alles fehlerfrei.


    Hast du einen Aktiven USB Hub ? könntest versuchen diesen dazwischen zu packen.

    совок

  • Jo, "Glückssache" halte ich auch für ein Gerücht.


    USB-Hub ist ne gute Idee. Bei mir läuft das sogar mit 24MHz mit meinem 10 Jahre alten Monitor (USB2) als Hub und 2 langen Kabeln dazwischen mit 24 MHz...


    Ansonsten wäre Linux einen Versuch wert...ich weiß das will keiner hören, aber das Programm läuft damit _deutlich_ schneller und stabiler...

  • Am dritten Rechner jetzt ein kleiner Erfolg. Das Programm läuft durch. Test mit dem Euro PC dann morgen. Danke für die Unterstützung!


    Gibt es sigrok2EGA als Binary oder muss ich das selbst kompilieren?

  • Das liegt unter anderem am Pipe, man leitet den Standard Output eines Programms auf den Standard Input des anderen. Alle UNIX-likes haben diesen Mechanismus ganz tief sitzen und sind auf solche Anwendungsfälle optimiert und extrem viele Tools u.a. unter Linux nutzen das. Dagegen gehört unter Windows so ein Anwendungsfall eher nicht zum Standard und dort sind die Pipes extrem langsam umgesetzt. Windows ist eher darauf ausgelegt eine integrale Applikation laufenzulassen und reagiert auf Pipes sehr allergisch. Der Anwendungsfall mit dem sigrok, wie er hier beschrieben ist, ist für Windows eher schlecht geeignet.


    Übrigens, der Sourcecode beinhaltet zumindest potenzielle Bugs (wahrscheinlich sogar echte) und der Kompilierungsbefehl ist suboptimal, es fehlt z.B. ein Optimierungsflag -O2. Bei GCC wird der default genommen, wenn keines angegeben ist, im Normalfall ist es -O1, was unter Umständen deutlich langsamer sein kann. Außerdem wurden -fpermissive verwendet um einen Kompilierungsfehler zu umgehen, statt den Code zu fixen. Dieser Fehler ist aber ziemlich ernsthaft. Außerdem wurde "inline" Keyword verwendet, obwohl man wahrscheinlich "static" wollte. Leider wird inline oft misinterpretiert, dabei kann bei der falschen Verwendung viel Performance verloren gehen. Es gibt noch sehr viele Punkte, die man verbessern könnte, ich werde versuchen den Code in den nächsten Tagen etwas zu stützen, aber die langsamen Pipes unter Windows wird man leider so einfach nicht umgehen können. Da muss man libsigrok nehmen und mit dem sigrok2ega zu einer Applikation bauen. Dann wird es auch unter Windows schneller.

  • Ja, das mit der Pipe wird ein wichtiger Grund sein. root_42 hatte noch erwähnt dass es am Farbmodell liegt welches unter Linux anders ist?


    Wie auch immer, Du und jeder andere ist herzlich eingeladen mitzumachen. So wie es ist läuft es aber immerhin stabil und ist für meine Zwecke ausreichend.


    Bisschen Optimierungsbedarf gibt es noch. Mir ist nun doch aufgefallen dass der 320x200 "Filter" Modus auf verschiedenen Karten geringfügig andere Parameter braucht - sonst sind doch wieder Störungen im Bild. Ich habe das nun so programmiert dass man diese Parameter mit den F-Tasten durchspielen kann bis es passt. Wäre vielleicht ganz schön wenn man das in einer Konfigurationsdatei speichern könnte anstatt es dann hinterher im Sourcecode fest zu verdrahten...

  • Habe heute noch ein bisschen Zeit investiert und eine halbstabile Lösung gefunden.


    Mit einem anderen USB Kabel am USB Hub ... läuft es manchmal dauerhaft. Wenn ich das Programm dann beende, kann ich es aber nicht mehr zum Laufen kriegen. Wenn ich dann die USB Ports am Hub durchwechsle, kriege ich es nach einer Weile wieder zum Laufen.


    Den Zweck, eine Grafikkarte bzw. einen Rechner mal schnell zu testen, erfüllt es. Um wirklich einen Monitor zu ersetzen, muss ich sicher noch Zeit investieren. Die Idee ist jedenfalls super.

  • Ansonsten wäre Linux einen Versuch wert...ich weiß das will keiner hören, aber das Programm läuft damit _deutlich_ schneller und stabiler...

    Wundert mich nicht. Rate mal wofür sigrok entwickelt wurde..


    Kann man die CPU Last nicht senken ?

    e.g. gleiche Frames nicht berechnen sondern skippen usw.

    совок

  • Habe heute noch ein bisschen Zeit investiert und eine halbstabile Lösung gefunden.


    Mit einem anderen USB Kabel am USB Hub ... läuft es manchmal dauerhaft. Wenn ich das Programm dann beende, kann ich es aber nicht mehr zum Laufen kriegen. Wenn ich dann die USB Ports am Hub durchwechsle, kriege ich es nach einer Weile wieder zum Laufen.


    Den Zweck, eine Grafikkarte bzw. einen Rechner mal schnell zu testen, erfüllt es. Um wirklich einen Monitor zu ersetzen, muss ich sicher noch Zeit investieren. Die Idee ist jedenfalls super.

    Also ich kann die von Dir geschilderten USB Probleme nicht bestätigen. Bei mir läufts unter Windows mit 16MHz problemlos. Wenn es abstürzt kann ich auch direkt nochmal neu starten ohne den USB-Port zu wechseln.


    Mach Dir einfach mal ein Linux auf einen USB-Stick oder so...

  • Die Qualität von den China Logic Analyzern ist teils unterschiedlich.

    Ich würde auch nicht davor scheuen das Ding mal aufzumachen und die Bestückung zu prüfen.

    Bei meinen Cypress Logic Dings Clone fehlten ebenfalls Abblockkondensatoren z.B.

    совок

  • Hier siehst Du was unter Linux geht...:



    Externer Inhalt youtu.be
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

Jetzt mitmachen!

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