Announcing Pi Presents GTK

In October 2023 Raspberry Pi Ltd announced the Raspberry Pi Model 5 and the Bookworm based RPi OS having Wayland instead of X11 as the Desktop environment, both broke Pi Presents. pipresents-gtk is a major rewrite of the internals of Pi Presents to make it compatible with RPi5 and Wayland.

Other changes have been made to remove unsupported software and I have also tidied up some of the profile fields that have grown like topsy over the 10 years of Pi Presents development.

. X11 replaced by Wayland

. Tkinter and PIL replaced by GTK4

. RPI.GPIO replaced by GPIOZero

. Chrome web browser replaced by Webkit browser engine

. mplayer based audio player removed. MPV video player now plays audio

GTK runs only on a RPi4 or RPi5 and only under Bookworm. Full support is available only for the Wayland Desktop Environment however GTK appears to run under the X11 Desktop environment enabling it to run on earlier models of RPi.

The previous version on Pi Presents, KMS, requires RPI OS Bullseye which is already legacy and is likely to become end of life in 2025 so it is important that you use GTK for new projects or upgrades.

GTK is currently Beta Test as I am the only person to have used it. However it has been tested thoroughly with every example exercised so it should be very useable for your projects. Full instructions for upgrading Pi Presents and your profiles is in Readme.md

If you find bugs please report them by contacting me on this site or on the Github Issues form.

This entry was posted in Uncategorized. Bookmark the permalink.

2 Responses to Announcing Pi Presents GTK

  1. centapos says:

    Hi

    Just out of curiosity sake, is there any way to use a Bluetooth button on Pi Presents instead of physical pushbuttons connected to the GPIO? I have a couple of Shelly BLU Button1 buttons lying around, and was wondering if that would work?

    Thanks
    Henk

    [cid:image001.jpg@01DA9489.AB2E2750]

    • KenT says:

      Yes there is but it will require you to write an I/O plugin in Python. You might be able to interface to the button directly but it might be better to run a MQTT Server. The button can be set up to send messages to this and you can write an I/O plugin to interface with the server. I have written such a plugin for my own purposes.

Leave a comment