Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

Difference between revisions of "Rock/display"

m (Set HDMI console font)
(display: Set full color depth)
Line 1: Line 1:
 
{{Languages|rock/display}}
 
{{Languages|rock/display}}
 +
 +
__TOC__
  
 
The cpu of Radxa Rock - RK3188 has two LCD controllers, LCD0 and LCD1. On RR, LCD1 is connected to HDMI and LCD0 is connect to AV out and the LCD0 signal are also exported on the extension header.
 
The cpu of Radxa Rock - RK3188 has two LCD controllers, LCD0 and LCD1. On RR, LCD1 is connected to HDMI and LCD0 is connect to AV out and the LCD0 signal are also exported on the extension header.
Line 6: Line 8:
  
 
      
 
      
=== set display scale ===
+
=== Set display scale ===
 
      
 
      
 
     root@radxa:# cat /sys/devices/platform/rk-fb/graphics/fb0/scale
 
     root@radxa:# cat /sys/devices/platform/rk-fb/graphics/fb0/scale
Line 15: Line 17:
 
     xscale=100 yscale=100
 
     xscale=100 yscale=100
  
=== set HDMI output mode ===
+
=== Set HDMI output mode ===
 
you can see supported output modes by the following commands:
 
you can see supported output modes by the following commands:
 
     root@radxa:# cat /sys/class/display/display0.HDMI/modes  
 
     root@radxa:# cat /sys/class/display/display0.HDMI/modes  
Line 51: Line 53:
 
  root@radxa:~# setupcon
 
  root@radxa:~# setupcon
 
Find the best solution by repeating the console-setup...
 
Find the best solution by repeating the console-setup...
 +
 +
=== Set full color depth ===
 +
 +
To use full 24/32 bits color depth on the radxa rock linux image:
 +
 +
apt-get install fbset
 +
 +
cat <<eof>> /etc/init/fbset.conf
 +
# fbset - run fbset to set truecolor fbmode
 +
description "run fbset ASAP"
 +
start on startup and started udev or starting lightdm
 +
task
 +
script
 +
    [ -x /bin/fbset ] && /bin/fbset -a -nonstd 1 -depth 32 -rgba "8/0,8/8,8/16,8/24"
 +
end script
 +
eof
 +
 +
cat <<eof>> /etc/X11/xorg.conf
 +
Section "Screen"
 +
    Identifier "Default Screen"
 +
    DefaultDepth 24
 +
EndSection
 +
eof
 +
 +
After rebooting you should ''not'' see green/purple screen. If you do, something went wrong. You can then use serial console or SSH from another machine and manually submit these commands:
 +
 +
service lightdm stop
 +
fbset -a -nonstd 1 -depth 32 -rgba 8/0,8/8,8/16,8/24
 +
service lightdm start
 +
 +
To make this change permanent, timing is critical during bootup. fbset will need to be called before X / lightdm starts. In Linaro/Ubuntu an upstart script is needed - '''fbset.conf''' - see above. The condition "startup and started udev" will try to run fbset as early as possible. On my rk3188 this works reliably, but if you have issues, your best bet is to tinker with these "start on" conditions. Do not use '''/etc/rc.local''' for this - this script is run long ''after'' lightdm has been started by upstart.

Revision as of 15:04, 8 April 2014

The cpu of Radxa Rock - RK3188 has two LCD controllers, LCD0 and LCD1. On RR, LCD1 is connected to HDMI and LCD0 is connect to AV out and the LCD0 signal are also exported on the extension header.

There is some sysfs interface exported to control the display related stuff. The following should work on both Android and Linux.


Set display scale

   root@radxa:# cat /sys/devices/platform/rk-fb/graphics/fb0/scale
   xscale=95 yscale=95
   root@radxa:# echo xscale=100 >  /sys/devices/platform/rk-fb/graphics/fb0/scale
   root@radxa:# echo yscale=100 >  /sys/devices/platform/rk-fb/graphics/fb0/scale     
   root@radxa:# cat /sys/devices/platform/rk-fb/graphics/fb0/scale
   xscale=100 yscale=100

Set HDMI output mode

you can see supported output modes by the following commands:

   root@radxa:# cat /sys/class/display/display0.HDMI/modes 
   1920x1080p-60
   1920x1080p-50
   1280x720p-60
   1280x720p-50
   720x576p-50
   720x480p-60

check out the current display mode

   root@radxa:# cat /sys/class/display/display0.HDMI/mode
   1280x720p-60

It's 720p@60hz

change the mode to 1080p@60hz

   root@radxa:# echo 1920x1080p-60 > /sys/class/display/display0.HDMI/mode

Set font size of X and console

Change DPI to increase the font size in X

rock@radxa:~$ sudo nano ~/.Xresources

add the following lines:

! Xft settings 
Xft.dpi: 120
Xft.antialias: true
Xft.rgba: rgb
Xft.hinting: true
Xft.hintstyle: hintslight

Change the console settings:

rock@radxa:~$ sudo dpkg-reconfigure console-setup

Go through the setup: hit enter, hit enter, choose the font and hit enter, hit enter, choose size and hit enter

Switch to console via ctrl+alt+f1 and verify your settings:

root@radxa:~# setupcon

Find the best solution by repeating the console-setup...

Set full color depth

To use full 24/32 bits color depth on the radxa rock linux image:

apt-get install fbset
cat <<eof>> /etc/init/fbset.conf
# fbset - run fbset to set truecolor fbmode
description "run fbset ASAP"
start on startup and started udev or starting lightdm
task
script
    [ -x /bin/fbset ] && /bin/fbset -a -nonstd 1 -depth 32 -rgba "8/0,8/8,8/16,8/24"
end script
eof
cat <<eof>> /etc/X11/xorg.conf
Section "Screen"
    Identifier "Default Screen"
    DefaultDepth 24
EndSection
eof

After rebooting you should not see green/purple screen. If you do, something went wrong. You can then use serial console or SSH from another machine and manually submit these commands:

service lightdm stop
fbset -a -nonstd 1 -depth 32 -rgba 8/0,8/8,8/16,8/24
service lightdm start

To make this change permanent, timing is critical during bootup. fbset will need to be called before X / lightdm starts. In Linaro/Ubuntu an upstart script is needed - fbset.conf - see above. The condition "startup and started udev" will try to run fbset as early as possible. On my rk3188 this works reliably, but if you have issues, your best bet is to tinker with these "start on" conditions. Do not use /etc/rc.local for this - this script is run long after lightdm has been started by upstart.