Thank you for your donation!


Local HDMI Display DPI settings?
#1
I've just set up Moode for the first time on a Pi4B with a HifiBerry Amp2 and it's working great. I imagine I'll be sprinkling a few of these around the house.

I have the local HDMI display working great, with touch, but my choice of screen has created a bit of an issue. The screen is the Waveshare OLED, it's basically a phone screen: 5.5" 1920x1080.

Per the docs in Waveshare's wiki, I have the entries in /boot/config.txt to set up the screen (including rotating the display, it's a phone screen, after all), and the xorg config to rotate the touch digitizer input.

That's all great, and the screen is gorgeous, especially in the Pure Black theme. The problem is that since the display DPI is so high, all the UI features are tiny. Text is too small to read, UI widgets are too small to reliably hit with normal human fingers.

As the Year of Linux on the Desktop has been postponed again (as is traditional), I've simply never learned how any of the display driver stuff works. Linux has always been a headless OS to me. Smile

There's a .xinitrc but that looks a lot like it might get rewritten by the GUI if I change the screen saver timeout. Fixing the digitizer meant creating an xorg.conf snippet, but I don't know the right incantations to tell the UI to draw bigger widgets. I'll paste in an Xorg log so you can see how the display presents itself now.

Any pointers would be greatly appreciated!

Xorg.0.log below:
Code:
[    50.971]
X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
[    50.971] Build Operating System: Linux 4.15.0-48-generic armv8l Raspbian
[    50.971] Current Operating System: Linux moode 4.19.97-v7l+ #1293 SMP Wed Jan 22 17:16:14 GMT 2020 armv7l
[    50.971] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 cma=64M bcm2708_fb.fbwidth=1920 bcm2708_fb.fbheight=1080 bcm2708_fb.fbswap=1 smsc95xx.macaddr=DC:A6:32:67:50:A2 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  net.ifnames=0 console=ttyS0,115200 console=tty1 root=PARTUUID=6c586e13-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
[    50.971] Build Date: 05 June 2019  12:49:54PM
[    50.971] xorg-server 2:1.20.4-1+rpt1 (https://www.debian.org/support)
[    50.971] Current version of pixman: 0.36.0
[    50.971]     Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[    50.971] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    50.971] (==) Log file: "/var/log/Xorg.0.log", Time: Sun Apr  5 11:41:37 2020
[    50.979] (==) Using config directory: "/etc/X11/xorg.conf.d"
[    50.979] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[    50.998] (==) No Layout section.  Using the first Screen section.
[    50.998] (==) No screen section available. Using defaults.
[    50.998] (**) |-->Screen "Default Screen Section" (0)
[    50.998] (**) |   |-->Monitor "<default monitor>"
[    51.004] (==) No monitor specified for screen "Default Screen Section".
    Using a default monitor configuration.
[    51.004] (==) Automatically adding devices
[    51.004] (==) Automatically enabling devices
[    51.004] (==) Automatically adding GPU devices
[    51.009] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    51.019] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[    51.019]     Entry deleted from font path.
[    51.023] (==) FontPath set to:
    /usr/share/fonts/X11/misc,
    /usr/share/fonts/X11/100dpi/:unscaled,
    /usr/share/fonts/X11/75dpi/:unscaled,
    /usr/share/fonts/X11/Type1,
    /usr/share/fonts/X11/100dpi,
    /usr/share/fonts/X11/75dpi,
    built-ins
[    51.023] (==) ModulePath set to "/usr/lib/xorg/modules"
[    51.023] (II) The server relies on udev to provide the list of input devices.
    If no devices become available, reconfigure udev or disable AutoAddDevices.
[    51.023] (II) Loader magic: 0x1fcf80
[    51.023] (II) Module ABI versions:
[    51.023]     X.Org ANSI C Emulation: 0.4
[    51.023]     X.Org Video Driver: 24.0
[    51.023]     X.Org XInput driver : 24.1
[    51.023]     X.Org Server Extension : 10.0
[    51.025] (--) using VT number 2

[    51.025] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[    51.026] (II) no primary bus or device found
[    51.027] (II) LoadModule: "glx"
[    51.029] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    51.074] (II) Module glx: vendor="X.Org Foundation"
[    51.074]     compiled for 1.20.4, module version = 1.0.0
[    51.074]     ABI class: X.Org Server Extension, version 10.0
[    51.074] (==) Matched modesetting as autoconfigured driver 0
[    51.074] (==) Matched fbdev as autoconfigured driver 1
[    51.074] (==) Assigned the driver to the xf86ConfigLayout
[    51.074] (II) LoadModule: "modesetting"
[    51.075] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[    51.079] (II) Module modesetting: vendor="X.Org Foundation"
[    51.079]     compiled for 1.20.4, module version = 1.20.4
[    51.079]     Module class: X.Org Video Driver
[    51.079]     ABI class: X.Org Video Driver, version 24.0
[    51.079] (II) LoadModule: "fbdev"
[    51.079] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[    51.081] (II) Module fbdev: vendor="X.Org Foundation"
[    51.081]     compiled for 1.20.3, module version = 0.5.0
[    51.081]     Module class: X.Org Video Driver
[    51.081]     ABI class: X.Org Video Driver, version 24.0
[    51.081] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[    51.081] (II) FBDEV: driver for framebuffer: fbdev
[    51.112] (WW) Falling back to old probe method for modesetting
[    51.112] (EE) open /dev/dri/card0: No such file or directory
[    51.112] (WW) Falling back to old probe method for fbdev
[    51.112] (II) Loading sub module "fbdevhw"
[    51.112] (II) LoadModule: "fbdevhw"
[    51.112] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[    51.115] (II) Module fbdevhw: vendor="X.Org Foundation"
[    51.115]     compiled for 1.20.4, module version = 0.0.2
[    51.115]     ABI class: X.Org Video Driver, version 24.0
[    51.115] (II) FBDEV(0): using default device
[    51.116] (II) FBDEV(0): Creating default Display subsection in Screen section
    "Default Screen Section" for depth/fbbpp 24/32
[    51.116] (==) FBDEV(0): Depth 24, (==) framebuffer bpp 32
[    51.116] (==) FBDEV(0): RGB weight 888
[    51.116] (==) FBDEV(0): Default visual is TrueColor
[    51.116] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[    51.117] (II) FBDEV(0): hardware: BCM2708 FB (video memory: 8100kB)
[    51.117] (DB) xf86MergeOutputClassOptions unsupported bus type 0
[    51.117] (II) FBDEV(0): checking modes against framebuffer device...
[    51.117] (II) FBDEV(0): checking modes against monitor...
[    51.117] (II) FBDEV(0): Virtual size is 1920x1080 (pitch 1920)
[    51.117] (**) FBDEV(0):  Built-in mode "current"
[    51.117] (==) FBDEV(0): DPI set to (96, 96)
[    51.117] (II) Loading sub module "fb"
[    51.117] (II) LoadModule: "fb"
[    51.118] (II) Loading /usr/lib/xorg/modules/libfb.so
[    51.124] (II) Module fb: vendor="X.Org Foundation"
[    51.124]     compiled for 1.20.4, module version = 1.0.0
[    51.124]     ABI class: X.Org ANSI C Emulation, version 0.4
[    51.124] (**) FBDEV(0): using shadow framebuffer
[    51.124] (II) Loading sub module "shadow"
[    51.125] (II) LoadModule: "shadow"
[    51.125] (II) Loading /usr/lib/xorg/modules/libshadow.so
[    51.129] (II) Module shadow: vendor="X.Org Foundation"
[    51.129]     compiled for 1.20.4, module version = 1.1.0
[    51.129]     ABI class: X.Org ANSI C Emulation, version 0.4
[    51.129] (II) UnloadModule: "modesetting"
[    51.129] (II) Unloading modesetting
[    51.162] (==) FBDEV(0): Backing store enabled
[    51.167] (==) FBDEV(0): DPMS enabled
[    51.168] (II) Initializing extension Generic Event Extension
[    51.169] (II) Initializing extension SHAPE
[    51.171] (II) Initializing extension MIT-SHM
[    51.171] (II) Initializing extension XInputExtension
[    51.176] (II) Initializing extension XTEST
[    51.176] (II) Initializing extension BIG-REQUESTS
[    51.177] (II) Initializing extension SYNC
[    51.178] (II) Initializing extension XKEYBOARD
[    51.178] (II) Initializing extension XC-MISC
[    51.179] (II) Initializing extension SECURITY
[    51.179] (II) Initializing extension XFIXES
[    51.182] (II) Initializing extension RENDER
[    51.182] (II) Initializing extension RANDR
[    51.184] (II) Initializing extension COMPOSITE
[    51.184] (II) Initializing extension DAMAGE
[    51.185] (II) Initializing extension MIT-SCREEN-SAVER
[    51.186] (II) Initializing extension DOUBLE-BUFFER
[    51.186] (II) Initializing extension RECORD
[    51.187] (II) Initializing extension DPMS
[    51.188] (II) Initializing extension Present
[    51.188] (II) Initializing extension DRI3
[    51.189] (II) Initializing extension X-Resource
[    51.189] (II) Initializing extension XVideo
[    51.190] (II) Initializing extension XVideo-MotionCompensation
[    51.190] (II) Initializing extension SELinux
[    51.190] (II) SELinux: Disabled on system
[    51.190] (II) Initializing extension GLX
[    51.191] (II) AIGLX: Screen 0 is not DRI2 capable
[    52.101] (II) IGLX: Loaded and initialized swrast
[    52.101] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[    52.101] (II) Initializing extension XFree86-VidModeExtension
[    52.102] (II) Initializing extension XFree86-DGA
[    52.103] (II) Initializing extension XFree86-DRI
[    52.106] (II) Initializing extension DRI2
[    52.436] (II) config/udev: Adding input device WaveShare WaveShare (/dev/input/event0)
[    52.436] (**) WaveShare WaveShare: Applying InputClass "libinput touchscreen catchall"
[    52.436] (**) WaveShare WaveShare: Applying InputClass "libinput touchscreen catchall"
[    52.436] (II) LoadModule: "libinput"
[    52.437] (II) Loading /usr/lib/xorg/modules/input/libinput_drv.so
[    52.469] (II) Module libinput: vendor="X.Org Foundation"
[    52.469]     compiled for 1.20.3, module version = 0.28.2
[    52.469]     Module class: X.Org XInput Driver
[    52.469]     ABI class: X.Org XInput driver, version 24.1
[    52.469] (II) Using input driver 'libinput' for 'WaveShare WaveShare'
[    52.469] (**) WaveShare WaveShare: always reports core events
[    52.469] (**) Option "Device" "/dev/input/event0"
[    52.471] (**) Option "_source" "server/udev"
[    52.570] (II) event0  - WaveShare WaveShare: is tagged by udev as: Touchscreen
[    52.570] (II) event0  - WaveShare WaveShare: device is a touch device
[    52.570] (II) event0  - WaveShare WaveShare: device removed
[    52.660] (**) Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"
[    52.660] (**) Option "config_info" "udev:/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2:1.0/0003:0712:0009.0001/input/input1/event0"
[    52.660] (II) XINPUT: Adding extended input device "WaveShare WaveShare" (type: TOUCHSCREEN, id 6)
[    52.661] (**) Option "AccelerationScheme" "none"
[    52.661] (**) WaveShare WaveShare: (accel) selected scheme none/0
[    52.661] (**) WaveShare WaveShare: (accel) acceleration factor: 2.000
[    52.661] (**) WaveShare WaveShare: (accel) acceleration threshold: 4
[    52.738] (II) event0  - WaveShare WaveShare: is tagged by udev as: Touchscreen
[    52.739] (II) event0  - WaveShare WaveShare: device is a touch device
[    52.746] (II) config/udev: Adding input device WaveShare WaveShare (/dev/input/mouse0)
[    52.746] (II) No input driver specified, ignoring this device.
[    52.747] (II) This device may have been added with another device file.
Reply


Forum Jump: