Grafische Anwendung auf raspberry mit LCD-Display



  • Hallo,
    ich habe dank der schnellen und guten Hilfe von sneubert eine kleine grafische Anwendung erstellt und getestet.
    Da habe ich festgestellt, dass diese nur auf einem raspberry mit HDMI Bildschirm läuft.
    Ich möchte dass das Programm mit einem LCD Display mit anderer Schnittstelle läuft.
    Gibt es da schon Erfahrung wie die Konfiguration sein soll?
    Vielen Dank im voraus.
    Gruß
    Kurt


  • Moderators

    @K-Str
    wenn du EGLFS benutzt siehe QT_QPA_EGLFS_FB variable.



  • Hallo K-Str,

    solange du einen passenden LCD am DSI Display Connector anschließt und die Ausgabe nur dort benötigst funktioniert das eglfs platform plugin direkt, da der RPI beim booten mit angeschlossenem LCD am DSI den
    HDMI abschaltet.

    Bei LCD´s die über das HAT angeschlossen und meist per SPI angesteuert werden bleibt der HDMI aktiv und
    die Applikation kann z.B. über das directfb platform plugin dargestellt werden. Allerding dann ohne Hardware beschleunigte Grafik (QML, OpenglES).
    Für so einen Fall ist es am einfachsten die Applikation auf HDMI laufen zu lassen und z.B. rpi-fbcp als deamon
    einzurichten (https://github.com/tasanakorn/rpi-fbcp).
    Die Umgebungsvariable QT_QPA_EGLFS_FB, wie von raven-worx vorgeschlagen funktioniert in diesem
    Fall leider nicht, da der Broadcom-Treiber nur ein Display Hardware beschleunigt ansprechen kann.



  • Hallo,
    danke für Eure Antworten.
    Ich denke dass das mit dem der Umgebungsvariablen QT_QPA_EGLFS_FB funktionieren könnte da entweder die HDMI oder SPI Schnittstelle aktiv ist aber nicht beide.
    Das muss ich mal testen.
    Gruß
    Kurt



  • Sorry, das war etwas ungenau. Für den RPI kann das eglfs platform plugin aufgrund der Hardware entweder HDMI oder DSI ansprechen (XOR).

    eglfs funktioniert definitiv nicht auf einem per SPI angeschlossenen LCD.



  • Hallo sneubert,
    Danke für den Hinweis. Das ist aber schade.
    Gibt es irgend eine Lösung für mein Problem? Oder muß ich das Ganze mit dem LCD-Display mit SPI Interface vergessen? Vielleicht hat sonst jemand eine Idee.
    Gruß
    Kurt



  • Hallo,
    ich glaube, dass ich einer Lösing mit XCB etwas näher komme.
    Bisher habe ich noch keine Ahnung wie ich das machen soll.
    Wenn jemand eine Idee hat, dann wäre es schön wenn er mir helfen könnte.
    Schau mer mal!
    Gruß
    Kurt



  • Hallo Kurt,

    also wie oben beschrieben kannst du, wenn du auf Qt Quick 2 und OpenGL verzichtest, eine QWidget-Anwendung mit Buttons usw. schreiben, die du dann mit

    ./meinProg --platform linuxfb:fb=/dev/fb1 
    

    auf dem SPI-Display anzeigen lässt.

    Oder du lässt die Anwendung auf dem nicht angeschlossenen HDMI per eglfs laufen und nutzt rpi-fbcp um die HDMI-Ausgabe auf das SPI-Display zu spiegeln. Wir haben das bei einer unsere Anwendungen im Einsatz, die Latenz ist zu vernachlässigen. Dann kannst du auch graphisch ansprechende Anwendungen in QML schreiben.

    Für xcb muss ein x server mit Fenstermanager laufen, also z.B. der Pixel Desktop aus raspbian, dort funktioniert OpenGL mit dem Broadcom-Treiber aber auch nicht, nur mit dem noch nicht ganz fertigen VC4.

    Also funktionieren tut es auf unterschiedlichen Wegen, du musst dich nur für einen entscheiden und die jeweiligen Nachteile in Kauf nehmen.



  • Danke,
    das ist einfach. Und funktioniert super!
    Danke!


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.