Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues with Kiosk tutorial #3184

Open
lurch opened this issue Oct 16, 2023 · 29 comments
Open

Issues with Kiosk tutorial #3184

lurch opened this issue Oct 16, 2023 · 29 comments
Assignees

Comments

@lurch
Copy link
Contributor

lurch commented Oct 16, 2023

The power-supply section of https://www.raspberrypi.com/tutorials/how-to-use-a-raspberry-pi-in-kiosk-mode/ probably needs a bit of an update, as the "Shopping list" section says "Raspberry Pi (any model)" and "USB-C power supply unit (PSU)".

  • Models of Raspberry Pi before the Pi4 use a Micro-USB power supply
  • Pi5 is being launched with a more powerful USB-C power supply
@aallan aallan added the backlog We'll be getting to it eventually label Oct 16, 2023
@aallan aallan changed the title Kiosk tutorial power-supply Issues with Kiosk tutorial Oct 19, 2023
@aallan
Copy link
Contributor

aallan commented Oct 19, 2023

There is also a display issue being reported in #2925.

@nathan-contino
Copy link
Collaborator

Sorry for snatching this issue, @tobybroberts -- I've been doing some standardisation work on the tutorials and I've already handled this :)

@tobybroberts
Copy link
Contributor

Thank you @nathan-contino - much appreciated.

@aallan
Copy link
Contributor

aallan commented Oct 31, 2023

Seems to be folks still having issues with the tutorial. See #2925 for details.

@aallan aallan added bug and removed backlog We'll be getting to it eventually labels Oct 31, 2023
@markostamcar
Copy link

Regarding HDMI replug issue it seems that adding "--start-maximized" to chromium-browser parameter fixes it.
Source: https://forums.raspberrypi.com/viewtopic.php?t=358317

@nathan-contino
Copy link
Collaborator

Already added the --start-maximized option to the kiosk tutorial. Is anyone aware of an option that automatically reopens crashed kiosk windows? If not, we might have to wait for Chromium to improve Bookworm support. If there's anything special happening in Bookworm besides Wayland to contribute to the frequent crashes, we might want to communicate that to the Chromium devs.

@michaelsage
Copy link

michaelsage commented Nov 9, 2023

Already added the --start-maximized option to the kiosk tutorial. Is anyone aware of an option that automatically reopens crashed kiosk windows? If not, we might have to wait for Chromium to improve Bookworm support. If there's anything special happening in Bookworm besides Wayland to contribute to the frequent crashes, we might want to communicate that to the Chromium devs.

Or away to create a watcher to restart chromium if it's not running, alternatively now firefox is bundled does this work any better?

@seanosteen
Copy link

I wrote a bash script to check if chromium is still running. If it is not, the kiosk reboots. I run it under the root crontab every 15 minutes. Chromium crashes about every 3 hours and 50 minutes +/- 5 minutes on Raspberry Pi 4, 8GB, Bookworm 64 bit, Wayland:

#!/bin/bash
if [[ $(ps -afx | grep -c 'chromium-browser') -lt 2 ]]; then
        echo "$(date): Chrome Stopped. Rebooting Kiosk." >> /var/log/reboot.log
        /usr/sbin/reboot
fi

Already added the --start-maximized option to the kiosk tutorial. Is anyone aware of an option that automatically reopens crashed kiosk windows? If not, we might have to wait for Chromium to improve Bookworm support. If there's anything special happening in Bookworm besides Wayland to contribute to the frequent crashes, we might want to communicate that to the Chromium devs.

Or away to create a watcher to restart chromium if it's not running, alternatively now firefox is bundled does this work any better?

@jedahan
Copy link

jedahan commented Jan 7, 2024

Probably slightly better to use a systemd service like the one here https://raw.githubusercontent.com/arrizer/MagicMirror/487f2d1022c43ca1375ec42048f7bb0cec8db6fe/magicmirror-dashboard.service

@dansiviter
Copy link

dansiviter commented Feb 13, 2024

I've just attempted to use the kiosk tutorial, and I could not get it to work using Wayland. The issues I found were:

  • ~/.config/wayland.ini does not have a section with [autostart] and if I add it, it never gets called (using the 1 = touch /tmp/hello test method),
  • chrome won't start with --ozone-platform=wayland at all. Removing it helps.

The only way I got autostart to work was via the ~/.config/autostart/* method (as suggested here).

My env:

  • Raspberry Pi 3 Model B Plus Rev 1.3
  • Linux 6.1.0-rpi8-rpi-v8
  • Debian GNU/Linux 12 (bookworm)

@michaelsage
Copy link

I don't think that used to be in the tutorial.

@dansiviter
Copy link

I think the tutorial is a little confused as it mentions both https://realtime.nationalrail.co.uk/... and the two URLs it's supposed to switch between https://raspberrypi.com and https://time.is/London. I think that's because something are lifted/shifted from the train timetable tutorial. Either way I think they need reviewing in light of latest Bookworm build.

@ivandolman
Copy link

Maybe it is a good idea to add to the tutorial how to hide your cursor? Because for what I can find it's a real pain in the ass with bookworm.

@1liminal1
Copy link

Any updates on this?

The Pi 5 does not have autostart either?

@aallan
Copy link
Contributor

aallan commented Feb 23, 2024

@nathan-contino When you're back from vacation can you take a look at this and try and sort it out once and for all?

@1liminal1
Copy link

Also, none of the old screen turn off methods seem to work with Wayland. Could we please get some direction on this? Its very frustrating not having a way to turn off the screen for those of us running kiosks as home calendar displays (not to mention just plane wasteful running the screen 24h per day)

Stuff like this, that was working last week for some people, is now just logging people off their Pis after the latest update.

wlr-randr --output HDMI-A-1 --off
wlr-randr --output HDMI-A-1 --on

Thanks

@aallan
Copy link
Contributor

aallan commented Mar 12, 2024

Probably some overlap with #3353.

Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@nathan-contino
Copy link
Collaborator

Not so fast!

@phieri
Copy link

phieri commented May 17, 2024

The kiosk tutorial states that

Kiosk mode works on all Raspberry Pi models.

This is confusing since the tutorial then relies on Wayfire which is (still) only available on Raspberry Pi 4 and newer.

To achieve this, we will edit .config/wayfire.ini. .config/wayfire.ini is a configuration file used to modify the behaviour and appearance of Wayfire, which is used to render the desktop in Raspberry Pi OS.

@raspberrypi raspberrypi deleted a comment from aallan May 18, 2024
@raspberrypi raspberrypi deleted a comment from aallan May 18, 2024
@raspberrypi raspberrypi deleted a comment from lurch May 18, 2024
@nathan-contino
Copy link
Collaborator

Great point. However, I believe we use Wayfire to render the desktop on any Raspberry Pi running the Wayland window server. It's just that Raspberry Pi 4, 400, and 5 run Wayland by default since Raspberry Pi OS Bookworm.

I've updated the tutorial to specifically call out the Wayland dependency, and added instructions on how to switch to Wayland on an older Raspberry Pi as well. I also updated our documentation with a cmdline.txt snippet required to switch to Wayland on those earlier models.

Hopefully these changes will make the current tutorial more accessible to folks running older models of Raspberry Pi.

Closing this issue as we've tracked down the stability issues in kiosk mode to Chrome/Wayland bugs that are both out of our control and should see improvements trickling through as more and more Linux users switch to Wayland.

I'll create a separate issue to document cursor hiding and screen turn off methods in Wayland when running Kiosk mode. Since we want the tutorials to remain short and sweet and general-purpose, I'll add that content to the documentation on Kiosk mode, which needs updating anyway.

Thanks all for the information here, everyone.

@I7T5
Copy link

I7T5 commented Jun 8, 2024

Does this work for DietPi?

@lurch
Copy link
Contributor Author

lurch commented Jun 10, 2024

Does this work for DietPi?

All of our documentation and tutorials are written for Raspberry Pi OS (with a few exceptions ).
So if it happens to also work with third-party OSes (that are also based on Debian) then great, but if our instructions don't work on your favourite OS, then you'll have to ask on the forums of that OS for additional help.

@samskiter
Copy link

Is this still busted? I can't get a freshly flashed bookworm image (64 bit) on 4B to boot and load chromium in kiosk mode - followed the tutorial but nothing happening on boot to desktop

@LukasMendez
Copy link

I'm on the same boat as @samskiter. Followed the tutorial on my 4B, and literally nothing is happening. It just goes straight to the desktop without launching the browser or anything

@mrtruebeliever
Copy link

Problem is that RPi OS now uses wayland/labwc as default en not wayland/wayfire. The tutorial is made with wayfire in mind.
labwc uses autostart file

# /etc/xdg/labwc/autostart
/usr/bin/lwrespawn /usr/bin/pcmanfm --desktop --profile LXDE-pi &
/usr/bin/lwrespawn /usr/bin/wf-panel-pi &
/usr/bin/lwrespawn /usr/bin/chromium-browser https://www.raspberrypi.com --kiosk --start-maximized --fast --fast-start --no-sandbox --no-first-run --noerrdialogs --disable-translate --disable-notifications --disable-infobars --disable-pinch --disable-features=TranslateUI --disk-cache-dir=/dev/null --ozone-platform=wayland --enable-features=OverlayScrollbar --overscroll-history-navigation=0 &
/usr/bin/kanshi &
/usr/bin/lxsession-xdg-autostart

@lurch
Copy link
Contributor Author

lurch commented Nov 25, 2024

Problem is that RPi OS now uses wayland/labwc as default en not wayland/wayfire.

Good point! I guess we need to check / update our tutorials to work with labwc instead of wayfire.
@nathan-contino perhaps this would be a good learning-task for @nllho ?

@lurch lurch reopened this Nov 25, 2024
@nathan-contino
Copy link
Collaborator

Agreed. This could use a new set of eyes to match our new Wayland stack 😈

@sarachoagustin
Copy link

sarachoagustin commented Dec 20, 2024

Just to add to this topic, in a clean install of Raspberry Pi OS with desktop 64bit on a Raspberry Pi 5 the file ~/.config/wayfire.ini was missing. Creating it and adding default content does nothing. So I do this (go to raspi-config > Advanced > Wayland > Wayfire > reboot) That creates the file and can successfully complete the tutorial

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests