Aaron Watts Dev KDE Plasma Bigscreen
Back to home
RSS feed

KDE Plasma Bigscreen

A Rspberry Pi 4b in an Argon One M.2. Sata case, powered
        on and plugged into a TV that is on the KDE Plasma Bigscreen
        home screen, with a Debian logo wallpaper.

I built this media centre at the start of 2024. There may be easier methods of installation by now. When I built this project, existing guides mentioned an installation image on KDE's bigscreen page, however, it doesn't seem to exist currently, except for a manjaro image, and I prefer to stick to Raspberry Pi's own debian OS when I can, especially that it ensures the best compatibility with things like cases and accessories.

Feel free to change and tweak what you like to what suits you, however, things you will need are:

I used a pi 4b 4GB RAM model myself for this project, as it was the unit that my pi 5 replaced on my work desk. While testing the system, I never pushed the RAM much past 1.7GB, so I think anything 2GB or higher will run okay. Anything lower than a pi 4 is going to struggle rendering KDE - the pi 4 needs an overclock to get everything running smoothly, hence the required cooling system. I used the Argon One case with the sata M.2. drive expansion, however I got similar results with preformance running from a USB 3.0 thumb drive. Plasma bigscreen, while offering limited support for remote controls, doesn't come with apps, so we will be using web-apps through the chromium browser, so some kind of keyboard is advised - KDE Connect on an android phone works great here, or you can get mini wireless keyboards with built in track pads on amazon.

Getting Started

Start by flashing the latest 64-bit Raspberry Pi OS Lite to a usb device. You may need to update the EEPROM if you haven't already in order to boot from USB. Take advantage of rpi imager settings here to enable SSH and change hostname so you can tell it apart from the 6 other pi's you have running around your house. If using a different imaer then don't forget to include the SSH file as you may need it on the next step.

After initial boot, the screen may black out, using the same image I had this happen with the USB SSB, but not the USB thumb drive - your guess is as good as mine.. If it blacks out then ssh in and vi or nano into /boot/firmware/config.txt and comment out and add the following lines:

#dtoverlay=vc4-kms-v3d
dtoverlay=vc4-fkms-v3d

Now that the screen is working you can log into the session, and make the usual prayer sudo apt update && sudo apt upgrade -y followed by a sudo reboot for luck.

Installing KDE Plasma

Next we need to istall KDE Plasma; I ooriginally went for kde-plasma-desktop as its the lighter install, but it kept hanging at boot, you ight have more luck, but expect to start again if it fails.

sudo apt install kde-standard

After that, another reboot for luck. Then we need to activate the sddm login manager service, and tell raspi OS that we want to boot into GUI on the next boot:

sudo systemctl enable sddm
sudo systemctl set-default graphical.target

And reboot again. It should now boot into Plasma, and the first thing you should do is disable all the destkop effects; older pi KDE Plasma guides suggest to disable the compositor, but the session defaults to wayland unless you tell it not, and wayland can't run without the compositor - I've noticed no major differences between X11 and wayland myself in this use case (don't believe the hype).

Note: disabling compositor in X causes screen tearing on video playback, so even if you choose to use X, leave the compositor on and just disable effects.

If you're also using an Argon One case, now is the time to open up konsole and install the power and fan control:

curl https://download.argon40.com/argon1.sh | bash

Setting Up Plasma Bigscreen

Now the effects are disabled, and if you have your cooling set up, now is a good time to overclock, so back into /boot/firmware/config.txt. I just went with the following:

# Overclock
over_voltage=6
arm_freq=2000
gpu_freq=700

Next we can install the other bits we need:

sudo apt install chromium-browser rpi-chromium-mods plasma-bigscreen

If you want to watch DRM services like netflix you need another package that's not included in lite:

sudo apt install libwidevinecdm0

KDE connect and an android phone make the perfect remote control, connect should already be included in the KDE install. But firewall suggested, with KDE connect and SSH rules:

sudo apt install ufw
sudo ufw allow 1714:1764/upd
sudo ufw allow 1714:1764/tcp
sudo ufw allow 22/tcp
sudo ufw enable

Next open chromium, add the extensions you want, and "install" your "web apps".

Note: skip the splash screen - instead of installing web app when your on questionable.com, go to questionable.com/home and install from there.

Note: uBlock Origin and Privacy Badger highly recommended!

Now open up KDE settings again, select Startup and Shutdown > Login Screen (SDDM), and then click the behaviour button at the bottom and set plasma to log in automatically and change the session to bigscreen, enter your password to confirm, and it should prompt you to set a password for the keychain. I set a blank password because I want other people to be able to use the TV. Also disbale power saving, or at least getting sent back to the login screen after sleep.

Done! Reboot and enjoy!

Controls

KDE Connect

By far the best option if you have an android phone or tablet lying around. KDE Connect for android is available in the standard F-Droid repository. The app includes a big screen feature, but you can get most of what you need done using the remote input feature.

As a side, Unexpected Keyboard is a configurable keyboard for android that includes all the keys you might need to use the terminal.

Mini Wireless Keyboard with Touchpad

The Rii K01X1 2.4GHz Mini Wireless Keyboard with Touchpad Remote Control is the perfect companion for interacting with Plasma Bigscreen. However the range doesn't appear to be very long, especially on the Argon One case where the receiver plugged in at the back due to the Argon remote interacting with the front of the case. However this can be easily remedied with a short USB extension cable to point the receiver in the correct direction.

Argon IR Remote

As I previously mentioned, I am using an Argon One case, which is great as I get to use the Argon IR remote control. However, the debian version of Plasma Bigscreen doesn't have a working option to configure remotes as yet, so the remote is somewhat useless for now - except for the power button that is. And I love being able to power my pi on and off without leaving my sofa and walking the few feet required to do it manually. If you are using an Argon One case, the setup script should get everything installed for you, and then you simply need to type argonone-ir into the terminal to get it set up.

Some Optional Polish

Window Decorations

Plasma Bigscreen is designed to work one window at a time, so if you minus a window without a keyboard, then you've essentially lost it for good. In settings you can remove the titlebar buttons for max/min and hide, and just leave the one to close the window with.

Splashscreen

In KDE settings change the splash screen from the default KDE one to the Plasma Bigscreen one, so that while you wait for your smart TV to boot up, you can relish in your accomplishment of having the most obscure smart TV out of everyone you know.

XScreensaver

Note: It looks like this version of Bigscreen doesn't cooperate with XScreensaver very well. I've encountered 2 issues so far: firstly: the login scripts don't load up, and secondly: if the login scripts load up, then XScreensaver gets called after "inactivity" when watching content in fullscreen mode, which shouldn't happen. This, however, worked fine when using an X86 device with arch linux and the newer version of Bigscreen.

XScreensaver has a pretty cool analog tv effect screensaver that will cycle through images in a folder and display them with various tv static effects:

sudo apt install xscreensaver xscreensaver-data-extra

Not Quite Full Screen

KDE's window management isn't quite perfect, and full screen often falls short by 1 pixel on the right and bottom borders (despite any window rules you might add). This can be an irritant when a bright wallpaper sits behind whatever you're watching. The easiest fix is to set a dark-edged wallpaper. The newer bigscreen lets you use kde settings which is nice as you can set the wallpaper to plain colour black, but in the debian version you have to use the built in wallpaper settings app found in the bigscreen settings menu on the home screen. It will only show you the wallpapers that are installed, so download your dark wallpaper, then move it to the wallpaper folder and then it will show up in the wallpaper changer application:

sudo mv ~/Downloads/<wallpaper> /usr/share/wallpaper/
Back to Top

Comments Section