Displayausgabe - Verständnisproblem

  • Hallo,

    ich habe ein kleines Verständnisproblem. Ich bin sicher hier kann mir weitergeholfen werden.

    Ich haben einen Raspi Zero W seit längerer Zeit in Betrieb. Darauf läuft eine kleine Steuerung für meine PV Anlage. Wenn ich mich auf dem Raspi über SSH einlogge sehe ich die Ausgaben des Programms in der Shell.

    Ich wollte mir nun die Ausgaben auf einem kleinen 1.8Zoll TFT ausgeben lassen. Das Display ist angeschlossen und soweit konfiguriert. (https://tutorials-raspberrypi.de/lcd-touch-disp…m-raspberry-pi/ )

    Nach $ con2fbmap 1 1 sehe ich auch Text darauf, aber nicht die Ausgaben die ich in der SSH sehe.

    Was muss ich tun, um die Ausgaben die ich in der SSH sehe auf dem Display zu sehen, bzw. wie kann ich aus dem C++ Programm die Ausgaben an das Display ausgeben.

    Schonmal vielen Dank für eure Ideen und Hinweise.

    Gruß

    Micha

  • Worin unterscheiden sich denn die Ausgaben auf den verschiedenen Devices ?

    Zeichengrösse, Zeichenhöhe,

    Zeichensatz, Ländereinstellung,

    Displaybreite

    Displayhöhe

    Die Remote Shell und die angezeigte Shell am HDMI Monitor verwenden eine Terminalemilation über ein (Pseido-)TTY Device [/dev/?tty*]. Ein Minidusplay wird aberüblicherweise mit einem Framebuffer Device "angeschlossen", dessen Auflösing samt Farbtiefe beim Booten festgelegt wird [/dev/fb*].

    Servus !

    RTFM = Read The Factory Manual, oder so

  • Hallo RTFM,

    die Ausgaben unterscheiden sich komplett im Inhalt. Ich denke mal am Display sehe ich die Ausgaben vom Bootvorgang ... In der SSH sehe ich das was ich gerade mache .... bzw. die Ausgaben die mein C++ Programm über printf macht....

    Wie kann ich die Ausgaben die ich in der Shell sehe auf das Framebuffer Device dauerhaft umleiten?

    Gruß

    Micha

  • Wenn Du kein login: ausfüllst, wird auch niemand eingeloggt und der login-Screentext bleibt stehen.

    Da Linux ein Multiuser Betriebssystem ist, bekommt jeder (angemeldete) User eine eigene "Sitzung". Wenn sich der User pi 1x remote und 1x local anmeldet, sind das zwei getrennte "Sitzungen".

    Wenn Du local am Pi Dein C++ Programm anzeigen lassen willst, musst Du es local, nach dem Login starten.

    Servus !

    RTFM = Read The Factory Manual, oder so

  • Moin Micha70,

    kannst du mal den Kontroller deines Displays oder den Link des Verkäufers angeben.

    Ev. gibt es ja andere Wege..

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Wie kann ich die Ausgaben die ich in der Shell sehe auf das Framebuffer Device dauerhaft umleiten?

    Es gibt drei Möglichkeiten, dies zu tun:

    1. nutze das Programm screen

    Dazu installierst Du mit sudo apt install screen das Paket. Danach richtest Du den RPi so ein, dass er sich automatisch anmeldet und dabei mit screen eine virtuelle Konsole startet. Danach kannst Du Dich per SSH verbinden und dann zur laufenden screen session.

    2. nutze linuxvnc

    linuxvnc ermöglicht es, eine Textkonsole an einen VNC Client zu übergeben. Dazu musst Du lokal den Server automatisch starten lassen und kannst Dich dann dorthin verbinden.

    3. nutze VNC

    Über VNC funktioniert so etwas natürlich auch, allerdings muss dann auch lokal die grafische Oberfläche laufen

    Bei allen drei Varianten spielt es keine Rolle, welche Hardware angeschlossen ist.

    Grüße, STF

  • Moin Micha70,

    ist vielleicht einen Test wert.

    Starte mal con2fbmap 1 1 nicht.

    In der /boot/cmdline.txt am Ende folgendes fbcon=map:10 eingeben. Abspeichern und Reboot.

    Beim Starten sollten die Hochlaufmeldungen auf dem Display zu sehen sein.

    Wenn du dich, per SSH, einloggst, sollte es auch auf dem Display passieren. Es kann sein das noch was geändert werden muss.

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Hallo Bernd,

    ich habe in der /boot/cmdline.txt bereits folgende Zeile drin: $fbcon=map:10 fbcon=rotate:3 fbcon=font:MINI4x6 

    Aber beim Booten erfolgen keine Ausgaben auf dem Display.

    Erst nachdem ich mich als Superuser mit sudo su angemeldet habe und con2fbmap 1 1 kann ich über ./meinProgramm > /dev/console die Ausgaben von meinProgramm auf das Display umleiten....

    Ich suche aber eine Möglichkeit um für ein Programm, welches ich automatisch mit Screen beim Booten starte, die Ausgaben auf dem Display ausgebe.

    Gruß

    Micha70

  • con2fbmap 1 1 sehe ich auch Text darauf, aber nicht die Ausgaben die ich in der SSH sehe.

    am Display sehe ich die Ausgaben vom Bootvorgang

    Aber beim Booten erfolgen keine Ausgaben auf dem Display.

    Hmm, verwirrt ich bin. Was geht denn nun und was nicht? Und von screen hast Du bisher überhaupt nicht gesprochen. Aber gut, so etwas ist doch recht einfach hinzukriegen. Du hast meinen Post dazu gelesen?

    1. Bring das Display dazu, dass Dir eine Shell angezeigt wird

    2. sorge dafür, dass sich Dein Nutzer automatisch anmeldet

    3. verbinde Dich bei dieser Anmeldung mittels screen (screen -rx <sitzung> ist Dein Befehl, <sitzung> durch den Namen ohne spitze Klammern Deiner erzeugten Sitzung austauschen) zu der laufenden Session

    et voila.

  • Moin Micha70,

    wir hatten das Thema schon mal 2017.

    Ev. hilft es ja. Der Link ist rot.

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Moin Micha70,

    das freut mich.

    Ist damit dein Thema erledigt?

    Wenn ja, dann, bitte, dein Thema als erledigt markieren. Das geht oben bei "Thema bearbeiten".

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!