Hi,
I know the recommendation is to use the Pi-Top OS, but I’m quite fond of Raspbian. I normally follow the article on the Pi-Top KB to get the drivers to work. https://knowledgebase.pi-top.com/knowledge/pi-top-and-raspberry-pi-os
I recently attempted to reconfigure my PiTop from Buster to Bullseye and it seems there is a problem with pt-sys-oled and pt-firmware-updater. I tried two times with a fresh image and the result is the same. As far as I can tell, it needs python 3.7, but Bullseye comes with python 3.9. I tried to uninstall python and reinstall 3.7 but it won’t install. Downgrading python also seems to break the Raspbian desktop.
Please see the result below:
pi@raspberrypi:~ $ echo "deb http://apt.pi-top.com/pi-top-os sirius main contrib non-free" | sudo tee /etc/apt/sources.list.d/pi-top.list &> /dev/null
curl https://apt.pi-top.com/pt-apt.asc | sudo apt-key add
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
100 3358 100 3358 0 0 5643 0 --:--:-- --:--:-- --:--:-- 5643
OK
pi@raspberrypi:~ $ sudo apt update
Hit:2 http://raspbian.raspberrypi.org/raspbian bullseye InRelease
Hit:3 http://archive.raspberrypi.org/debian bullseye InRelease
Get:1 https://apt.pi-top.com/pi-top-os sirius InRelease [7,813 B]
Get:4 https://apt.pi-top.com/pi-top-os sirius/main armhf Packages [103 kB]
Fetched 111 kB in 2s (54.8 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
1 package can be upgraded. Run 'apt list --upgradable' to see it.
pi@raspberrypi:~ $ sudo apt install --no-install-recommends -y pt-device-manager pt-sys-oled pt-firmware-updater
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
python3-pitop : Depends: python3-dlib (< 19.23.0) but it is not going to be installed
Depends: python3-dlib (>= 19.22.0) but it is not going to be installed
Depends: python3-flask (< 1.1) but 1.1.2-2 is to be installed
Depends: python3-gevent (< 1.4) but 20.9.0-2 is to be installed
Depends: python3-imutils (< 0.6.0) but it is not going to be installed
Depends: python3-imutils (>= 0.5.4) but it is not going to be installed
Depends: python3-matplotlib (< 3.1) but 3.3.4-1 is to be installed
Depends: python3-opencv (< 3.3) but 4.5.1+dfsg-5 is to be installed
Depends: python3-scipy (< 1.2) but 1.6.0-2 is to be installed
Depends: python3-zmq (< 17.2.0) but 20.0.0-1 is to be installed
python3-pycrc : Depends: python3.7 but it is not installable
python3-pyftdi : Depends: python3-pyserial (>= 3.0) but it is not going to be installed
Depends: python3-pyusb (>= 1.0.0) but it is not going to be installed
Depends: python3.7 but it is not installable
python3-smbus2 : Depends: python3.7 but it is not installable
E: Unable to correct problems, you have held broken packages.
It seems that sudo apt install --no-install-recommends -y pt-device-manager works without errors and after reboot the battery monitor works, but nothing else. If I try cd /usr/lib/pt-device-manager sudo ./pt-device-manager then I get the following:
[17:30:55.106033 I] Idletime retrieved from config: 300
[17:30:55.196881 I] Starting device manager...
[17:30:55.199193 E] Error starting the publish server: Address already in use
[17:30:55.207220 I] Traceback (most recent call last):
File "/usr/lib/pt-device-manager/ptdm_publish_server.py", line 28, in start_listening
self._zmq_socket.bind("tcp://*:3781")
File "/usr/lib/python3/dist-packages/zmq/sugar/socket.py", line 173, in bind
super().bind(addr)
File "zmq/backend/cython/socket.pyx", line 542, in zmq.backend.cython.socket.Socket.bind
File "zmq/backend/cython/checkrc.pxd", line 28, in zmq.backend.cython.checkrc._check_rc
zmq.error.ZMQError: Address already in use
[17:30:55.209787 E] Unable to start listening on publish server
[17:30:55.210228 E] Unable to start pi-top device manager's central controller
[17:30:55.210520 I] Stopping device manager...
[17:30:55.210812 I] Closing responder socket...
[17:30:55.211863 I] Stopping idle time monitor...
[17:30:55.212363 I] Stopping peripheral manager...
[17:30:55.212705 I] Stopping hub manager...
[17:30:55.213001 I] Closing publisher socket...
Are there any known compatibility issues with Python3.9 or Raspbian Bullseye, or does anyone know how to fix this?
Thanks in advance!