Odroid C2 LCD does not show autostarted Kiosk-Chromium

Hello!
I recently installed the Odroid C2 LCD using dietpi-config and set Chromium kiosk as autostart.

Then I edited

/dietpi/dietpi.txt

to change Chromium’s resolution to

SOFTWARE_CHROMIUM_RES_X=480
SOFTWARE_CHROMIUM_RES_Y=320

But, the LCD-screen does not show Chromium, whereas messages during booting are displayed by the LCD. Backlight is activated.

Do you have any idea, what further has to be edited?

Many thanks
Holger

Hmm could you check:

systemctl status odroid-lcd35
con2fbmap 1
fbset -fb /dev/fb2 -i

These are the results:

root@DietPi:~# systemctl status odroid-lcd35
● odroid-lcd35.service - Odroid LCD 3.5
   Loaded: loaded (/etc/systemd/system/odroid-lcd35.service; enabled; vendor preset: enabled)
   Active: active (exited) since Tue 2019-03-19 18:20:14 CET; 2min 46s ago
  Process: 378 ExecStart=/bin/con2fbmap 1 2 (code=exited, status=0/SUCCESS)
  Process: 372 ExecStart=/usr/bin/setterm -blank 0 -powersave off (code=exited, status=0/SUCCESS)
  Process: 367 ExecStart=/bin/bash -c echo 1023 > /sys/devices/pwm-ctrl/duty0 (code=exited, status=0/SUCCESS)
  Process: 362 ExecStart=/bin/bash -c echo 1 > /sys/devices/pwm-ctrl/enable0 (code=exited, status=0/SUCCESS)
  Process: 355 ExecStart=/bin/bash -c echo 500000 > /sys/devices/pwm-ctrl/freq0 (code=exited, status=0/SUCCESS)
 Main PID: 378 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/odroid-lcd35.service

Mär 19 18:20:14 DietPi systemd[1]: Starting Odroid LCD 3.5...
Mär 19 18:20:14 DietPi systemd[1]: Started Odroid LCD 3.5.



root@DietPi:~# con2fbmap 1
console 1 is mapped to framebuffer 2



root@DietPi:~# fbset -fb /dev/fb2 -i

mode "480x320"
    geometry 480 320 480 320 16
    timings 0 0 0 0 0 0 0
    nonstd 1
    rgba 5/11,6/5,5/0,0/0
endmode

Frame buffer device information:
    Name        : flexfb
    Address     : 0
    Size        : 307200
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 0
    YPanStep    : 0
    YWrapStep   : 0
    LineLength  : 960
    Accelerator : No

Hmm that looks all fine.

Does starting Chromium manually from console work: /var/lib/dietpi/dietpi-software/installed/chromium-autostart.sh

Or starting it from desktop?

The LXDE Desktop is shown on the LC. Firefox can be started, but Chromium crashes X server!

When I manually start the Chromium autostart.sh script the following error appears:

X.Org X Server 1.19.2
Release Date: 2017-03-02
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.9.0-8-arm64 aarch64 Debian
Current Operating System: Linux DietPi 3.16.57+ #1 SMP PREEMPT Sun Aug 19 15:27:                                                             56 CEST 2018 aarch64
Kernel command line: root=/dev/mmcblk0p2 rootwait ro console=tty0 no_console_sus                                                             pend hdmimode=480p60hz m_bpp=32 vout= fsck.repair=yes net.ifnames=0 elevator=noo                                                             p disablehpd=true
Build Date: 03 November 2018  03:03:37AM
xorg-server 2:1.19.2-1+deb9u5 (https://www.debian.org/support)
Current version of pixman: 0.34.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Mar 22 21:41:30 2019
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Multiple definitions of the FOUR_LEVEL_KEYPAD key type
>                   Earlier definition ignored
Errors from xkbcomp are not fatal to the X server
Xorg: ../../../../../../include/privates.h:122: dixGetPrivateAddr: Assertion `ke                                                             y->initialized' failed.
[1571:1571:0322/214136.502538:ERROR:x11_util.cc(110)] X IO error received (X ser                                                             ver probably went away)
[1537:1537:0322/214136.851562:ERROR:chrome_browser_main_extra_parts_x11.cc(62)]                                                              X IO error received (X server probably went away)
xinit: connection to X server lost

Note that AFAIK the autostart script cannot be executed while a desktop is running. So you need to logout the desktop and run the autostart script from there (if this was not already what you did).

Does starting Chromium via desktop icon (there should be a Chromium icon in start menu e.g., at least when logging in as root or dietpi user) work? Because it’s two different binaries when starting Chromium from desktop or via autostart as desktop “replacement”. In either way only one instance of Xserver is up.

Hi MichaIng.

In case I try to start Chromium via desktop icon the X server crashes and the console is displayed on LCD.

Above I executed the Chromium autostart script without using parallelly LXDE.

If someone else also want to use the 3.5" LCD with kiosk mode of Chromium I suggest to follow instructions of following link.
https://willhaley.com/blog/debian-fullscreen-gui-kiosk/

It works great for me.
Cheers

scarico
Thanks for your solution.

You simply followed the guide on top of the existing (not working) Chromium?
Possibly the install of xorg refreshed some xorg configuration that made things working. On Odroid XU4 e.g. some video driver update required changes in xorg.conf, although in that case it was required for Kodi.

Running Chromium desktop icon or our script (from console, outside of desktop) does still not work?

The Chromium options provided by the guide (and our script) cannot be the reason since desktop icon without any options fails/failed as well. Also the options (should) have nothing to do with the X server.

The method is mostly comparable with starting Chromium from desktop. Openbox is a X server session as well, lightdm the classic desktop login UI which we also use for desktop login (if chosen).

MichaIng

I followed the steps using a fresh dietpi and activated 3.5" LCD.

I guess the crashes (activated LCD & Chromium) are caused in any way by the video driver.