Rozdzielczość monitora na Raspberry Pi



To była mordęga. Przez kilka lat uważałem sprawę ustawiania rozdzielczości na RPi za przegraną. RPi ma to do siebie, że w uniwersalnym ustawieniu sam definiuje rozdzielczość ekranu i niestety zdarza się że jest to bardzo niska rozdzielczość, bardzo utrudniająca pracę na malince. Na szczęście udało mi się dowiedzieć jak to zmienić i postanowiłem się tym podzielić...

W odróżnieniu do klasycznego PC'ta Raspberry Pi nie posiada BIOS'u. Jego podstawowe ustawienia są zawarte w pliku tekstowym "config.txt"

Jak się do niego dostać?? Należy wpisać nstępującą komendę.

sudo nano /boot/config.txt


Następnie musimy odnaleźć dwie linie tekstu o następującej treści.

hdmi_group=0
hdmi_mode=0
Zanim zaczniemy ustawiać rozdzielczość należy sprawdzić co możemy wybrać biorąc pod uwagę urządzenie (telewizor lub monitor) jaki aktualnie użytkujemy.
W tym celu musimy ustawić (jeżeli tak nie jest)

hdmi_group=1
hdmi_mode=1
Następnie zapisujemy zmiany w pliku Ctrl + X i restartujemy malinę.

sudo shutdown -r now

TEORIA

hdmi_group=0 odpowiada za automatyczną detekcję możliwych do wyświetlenia rozdielczności.

Dostępne są jeszcze tryby CEA (Consumer Electronics Association) standrdowa dla telewizorów i DMT (Display Monitor Trimming) standardowa dla monitorów.

Aby wybrać standard CEA hdmi_group=1, a dla DMT hdmi_group=2.

Jeżeli już wiemy czy mamy podpięty telewizor (CEA) czy monitor (DMT), możemy sprawdzić na malinie jakie są dostepne rozdzielczości. W tym celu wpisujemy w terminalnu odpowiednio komendy:

/opt/vc/bin/tvservice -m CEA
W ten sposób dowiadujemy się jakie sa dostępne rozdzielczości dla podłączonego telewizora.

/opt/vc/bin/tvservice -m DMT
W ten sposób dowiadujemy się jakie sa dostępne rozdzielczości dla podłączonego monitora.

Istnieje też możliwość sprawdzenia z jaką aktualnie rozdzielczością pracuje nasza malina. W tym celu wpisujemy następującą kommendę.

/opt/vc/bin/tvservice -s
Efektem wpisania trzech powyższych komend przy podłączeniu monitora Samsung, otrzymałem następującą odpowiedź.

pi@raspberrypi:~ $ /opt/vc/bin/tvservice -m CEA
Group CEA has 4 modes:
           mode 2: 720x480 @ 60Hz 4:3, clock:27MHz progressive 
           mode 17: 720x576 @ 50Hz 4:3, clock:27MHz progressive 
           mode 19: 1280x720 @ 50Hz 16:9, clock:74MHz progressive 
  (prefer) mode 31: 1920x1080 @ 50Hz 16:9, clock:148MHz progressive 
pi@raspberrypi:~ $ /opt/vc/bin/tvservice -m DMT
Group DMT has 19 modes:
           mode 4: 640x480 @ 60Hz 4:3, clock:25MHz progressive 
           mode 5: 640x480 @ 72Hz 4:3, clock:31MHz progressive 
           mode 6: 640x480 @ 75Hz 4:3, clock:31MHz progressive 
           mode 8: 800x600 @ 56Hz 4:3, clock:36MHz progressive 
           mode 9: 800x600 @ 60Hz 4:3, clock:40MHz progressive 
           mode 10: 800x600 @ 72Hz 4:3, clock:50MHz progressive 
           mode 11: 800x600 @ 75Hz 4:3, clock:49MHz progressive 
           mode 16: 1024x768 @ 60Hz 4:3, clock:65MHz progressive 
           mode 17: 1024x768 @ 70Hz 4:3, clock:75MHz progressive 
           mode 18: 1024x768 @ 75Hz 4:3, clock:78MHz progressive 
           mode 21: 1152x864 @ 75Hz 4:3, clock:108MHz progressive 
           mode 28: 1280x800 @ 60Hz 16:10, clock:83MHz progressive 
           mode 35: 1280x1024 @ 60Hz 5:4, clock:108MHz progressive 
           mode 36: 1280x1024 @ 75Hz 5:4, clock:135MHz progressive 
           mode 47: 1440x900 @ 60Hz 16:10, clock:106MHz progressive 
           mode 58: 1680x1050 @ 60Hz 16:10, clock:146MHz progressive 
           mode 82: 1920x1080 @ 60Hz 16:9, clock:148MHz progressive 
           mode 83: 1600x900 @ 60Hz 16:9, clock:108MHz progressive 
           mode 85: 1280x720 @ 60Hz 16:9, clock:74MHz progressive 
pi@raspberrypi:~ $ /opt/vc/bin/tvservice -s
state 0x120006 [DVI CEA (31) RGB lim 16:9], 1920x1080 @ 50.00Hz, progressive
pi@raspberrypi:~ $ ^C
pi@raspberrypi:~ $ 
Aby wykorzystać powyższą informację, możemy teraz ustawić sobie dowolnie pożądaną rozdzielczość, np. dla standardu DMT wybrać mode 85.
W tym celu musimy wejść raz jeszcze do pliku config.txt, wpisując poniższą komendę.

sudo nano /boot/config.txt
Następnie zmieniamy wartości parametrów hdmi_group i hdmi_mode a poniższe wartości.

hdmi_group=2
hdmi_mode=85
Zapisujemy zmiany w pliku i restartujemy malinkę komendą...

sudo shutdown -r now
Działa??

Dla ułatwienia poniżej link do strony organizacja Raspberry Pi, gdzie opisany jest cały plik config.txt w tym możliwe rozdzielczości. link

:)