TASIOMIND.DEV — OPERATIONAL▸▸▸FULL STACK DEVELOPER @ GWQ SERVICEPLUS AG▸▸▸FOUNDER — K8SGPT.AI▸▸▸OPEN SOURCE: ACTIVE▸▸▸DISTRIBUTED SYSTEMS / KUBERNETES / AI▸▸▸RUST + GO + PYTHON▸▸▸FIELD TESTED / STATUS — NOMINAL▸▸▸LOCATION: EUROPE/BERLIN▸▸▸TASIOMIND.DEV — OPERATIONAL▸▸▸FULL STACK DEVELOPER @ GWQ SERVICEPLUS AG▸▸▸FOUNDER — K8SGPT.AI▸▸▸OPEN SOURCE: ACTIVE▸▸▸DISTRIBUTED SYSTEMS / KUBERNETES / AI▸▸▸RUST + GO + PYTHON▸▸▸FIELD TESTED / STATUS — NOMINAL▸▸▸LOCATION: EUROPE/BERLIN▸▸▸

Manuelle Monitorkonfiguration mit xrandr unter Armbian

August 26, 2018

Diese Anleitung beschreibt, wie Sie eine manuelle Monitorkonfiguration vornehmen können, falls die automatische Erkennung der Display-Eigenschaften (EDID) auf Ihrem Armbian-System fehlschlägt. Dies äußert sich oft dadurch, dass xrandr nur einen generischen Ausgang namens default anzeigt und keine korrekten Auflösungen verfügbar sind.


1. Diagnose

Führen Sie die folgenden Befehle aus, um den aktuellen Status Ihrer Display-Konfiguration zu ermitteln.

code
# Zeigt verfügbare Ausgänge und Modi an
xrandr --query

# Listet erkannte Monitore auf
xrandr --listmonitors

Wenn in der Ausgabe nur ein Monitor namens default ohne spezifische Auflösungen erscheint, ist eine manuelle Konfiguration erforderlich.


2. Monitor manuell definieren mit setmonitor

Der Befehl xrandr --setmonitor ermöglicht es, ein virtuelles Monitorprofil mit korrekten physischen Abmessungen zu erstellen. Dies hilft dem System, die Pixeldichte (DPI) korrekt zu berechnen.

Syntax:

code
xrandr --setmonitor "<Name>" <Breite_px>/<Breite_mm>x<Höhe_px>/<Höhe_mm>+<X_Pos>+<Y_Pos> <Ausgang>

Beispiel für einen 24-Zoll WQHD-Monitor (Asus VX24AH):

  • Auflösung: 2560x1440 Pixel
  • Physische Größe: 526mm x 296mm
code
xrandr --setmonitor "Asus-VX24AH" 2560/526x1440/296+0+0 default

3. Benutzerdefinierte Auflösung hinzufügen (falls erforderlich)

Wenn die gewünschte Auflösung nicht verfügbar ist, müssen Sie sie manuell über eine Modeline hinzufügen.

  1. Modeline generieren: Verwenden Sie cvt, um die Timing-Parameter zu berechnen.

    code
    cvt 2560 1440 60
    

    Kopieren Sie die Ausgabezeile, die mit Modeline beginnt.

  2. Modus mit xrandr hinzufügen und aktivieren:

    code
    # Erstellt den neuen Modus (fügen Sie hier die kopierte Modeline ein)
    xrandr --newmode "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync
    
    # Fügt den Modus dem Display-Ausgang hinzu
    xrandr --addmode default "2560x1440_60.00"
    
    # Aktiviert den neuen Modus
    xrandr --output default --mode "2560x1440_60.00"
    

4. Fehlerbehebung

  • Failed to get size of gamma for output default: Dieser Fehler tritt häufig auf, wenn der Treiber keine Gamma-Informationen bereitstellt. Setzen Sie den Gamma-Wert manuell, um das Problem zu umgehen:

    code
    xrandr --output default --gamma 1.0:1.0:1.0
    
  • Configure crtc 0 failed: Dies deutet darauf hin, dass die Hardware die angeforderte Modeline nicht unterstützt. Versuchen Sie eine niedrigere Auflösung oder eine geringere Wiederholfrequenz (z.B. 30 Hz statt 60 Hz).


5. Konfiguration dauerhaft speichern (Xorg)

Um die Einstellungen nach einem Neustart beizubehalten, können Sie eine Xorg-Konfigurationsdatei erstellen.

Datei erstellen:

code
sudo nano /etc/X11/xorg.conf.d/10-monitor.conf

Beispielinhalt: Passen Sie die Identifier und Modeline an Ihre Konfiguration an.

code
Section "Monitor"
    Identifier "default"
    Modeline "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync
    Option "PreferredMode" "2560x1440_60.00"
EndSection

Diese Konfiguration wird beim Start des X-Servers automatisch geladen.