-
Notifications
You must be signed in to change notification settings - Fork 36
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
bullseye: Fresh install not working on Pi Zero 2 or Pi 3B #195
Comments
I just tried it on a Pi 3 following my usual instructions: Same error message Using Raspbian GNU/Linux 11 (bullseye) and the latest version of Pi3D PictureFrame. picframe -v Checking required packages...... Checking optional packages...... |
Hi, I'm away this week so can't test of RPi, but that does look odd. I think the previous versions when the RPi was not v4 defaulted to using the broadcom driver but as of Bullseye they default to using KMS (or Fake KMS maybe?). Hopefully there is an option in raspi-config to set the driver back to legacy, otherwise the older versions will have to start using x11 which will slow them down quite a bit. If you get a chance to see which driver is being used, and if it can be set back to legacy, I'd be interested to know. Paddy |
Hi @paddywwoof: In the raspi config menu there is still the option to choose legacy. |
Hi @sapnho
Maybe this helps |
Thanks for your suggestion @vinyli85. I just tried that on the Pi 3 but that didn't make it work. But I am glad that it works on the Pi 4. |
Did you do a reboot After the change? Otherwise there is no effect of the change. |
Yes, I did. And I also tried it on the Pi Zero. The Pi 4 and the Pi 3 apparently have different graphics engines. |
Previously the rpi4 had to have that line uncommented but previous versions had to have the hash in front. As I understand it the default in bullseye, ie for the last few days, is that this has changed. It might be that the driver detection as done in DisplayOpenGL or elsewhere now needs to be modified |
I installed bullesye today on a spare pi 3B. I found only one setup, that was working without any issue.
|
Thanks, @helgeerbe, that works indeed. (You also have to change to console login instead of desktop.) |
@sapnho yes, indeed performance is very poor. Can you try this:
|
Back now so I will try and find a Pi I can use. As the hardware hasn't changed I'm not sure that the KMS driver will run anything but sluggishly. Hopefully it's just an issue with pi3d not being able to verify that it's running on a Pi 0,1,2 or 3. If you have a pre-4 RPi you should be able to open a terminal then $ python3
>>> import pi3d
>>> pi3d.constants.PLATFORM
0 0 is the value of PLATFORM_PI, 3 is the value of PLATFORM_LINUX. So if bullseye is giving a 3 instead of a 0 that means that the code that's trying to find the platform is failing because something has changed in bullseye. As you can see in the code I had to make a few hacks for stretch! I would be interested to hear what you find. Probably won't do much tomorrow I'm afraid but I will get onto this as soon as possible. Paddy |
pi@raspberrypi:~ $ python3
Python 3.9.2 (default, Mar 12 2021, 04:06:34)
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pi3d
>>> pi3d.constants.PLATFORM
3 |
@helgeerbe, thanks. I forgot to say that 3 will result from having the KMS driver specified, even on an older Pi. To get 0 you need legacy GLES driver. |
@paddywwoof, you are right. Then it's
The call of
seems to fail. |
If I run |
Yes. Me too. The libGLESv2.so and libEGL.so have moved, names changed and no sign of old ones apart from in /use/lib/chromium-browser/swiftshader/ I will try that if I get the chance |
That should be usr. But that gives illegal instruction. I will check out files from buster. |
I installed bullseye desktop pi@raspberrypi:~ $ find / -name libGLES* 2>/dev/null
/usr/lib/chromium-browser/swiftshader/libGLESv2.so
/usr/lib/arm-linux-gnueabihf/libGLESv2.so
/usr/lib/arm-linux-gnueabihf/libGLESv1_CM.so.1.2.0
/usr/lib/arm-linux-gnueabihf/libGLESv1_CM.so.1
/usr/lib/arm-linux-gnueabihf/libGLESv2.so.2
/usr/lib/arm-linux-gnueabihf/libGLESv2.so.2.1.0
pi@raspberrypi:~ $ find / -name libEGL* 2>/dev/null
/usr/lib/chromium-browser/swiftshader/libEGL.so
/usr/lib/arm-linux-gnueabihf/libEGL.so
/usr/lib/arm-linux-gnueabihf/libEGL_mesa.so.0
/usr/lib/arm-linux-gnueabihf/libEGL.so.1.1.0
/usr/lib/arm-linux-gnueabihf/libEGL_mesa.so.0.0.0
/usr/lib/arm-linux-gnueabihf/libEGL.so.1 But I linked manually:
|
Yes, also trying bullseye desktop SD but at command line without X. I copied the GLESv2, EGL and bcm_host libraries from buster but ctypes won't load the first two as missing symbols. Annoying thing all round. |
You could run |
This is the only configuration that works for me with good performance. #195 (comment)
|
I've not managed to get pi3d running without X11 on bullseye. With xinit performance is pretty dire on anything other than RPi4 My conclusion is that the Raspberry Pi Foundation aren't really interested in developing the OS for the older versions or without X11 and we should advise users to use the old version of the OS available here There are 20 pages of issues and reports of non-functioning stuff on the RPi forum so this might be something that gets fixed but I somehow doubt it. It's a pity in many ways. I will carry on searching through the forum to see if anyone has any tips on running OpenGL without X11 |
@paddywwoof this is exactly what I observed. So I cross my fingers, hoping that there will be significant improvements. How do you measure the performance? With glamor enabled, I had the impression, that the performance is not so bad at all. |
@helgeerbe, When the RPi 4 first came out and the foundation started pushing the new KMS driver I did some test (see here) using bcm with and without desktop and with X11 with and without desktop. I test Pi4, 3 and zero but I can only find a Pi B v 2 so I tested on that and assume it's near or should be better than the zero. The three demos I used were
On top of this each program takes 40s or so to load which seems a long time, don't have figures from before to hand but the RunTests program leaves 5 to 20s for each program to load and run enough frames to determine if there are any bugs and it was previously fine. |
My tests with Billboard on a pi3 B+
|
pi3d having the same problem on pi4 with PiOS 10 and PiOS 11. Fresh install, can't start the picframe.
|
Hi, that looks like a different error. The loading of libGLESv2.so didn't happen during constants init so the symbol GLES is None. Did you have pi3d working fine before and just upgraded the OS to the buster legacy? Or might anything else be different in setup? On pi4 you must have Kms graphics driver and be running with X11 up. i.e your listing is from terminal window not cmd line. |
Brand new setup, I was following the - https://www.thedigitalpictureframe.com/how-to-set-up-your-raspberry-pi-for-your-digital-picture-frame/ |
Sadly the old dispmanx Broadcom display manger, that used to provide a display surface OpenGLES could use doesn't work with the new, improved KMS drivers. You can get the minimal X11 required by pi3d by
Or for picframe using the listing by Helge above #195 (comment) |
There is a new legacy (based on buster) image. https://www.raspberrypi.com/news/new-old-functionality-with-raspberry-pi-os-legacy/ This has long term support. |
Thanks, @helgeerbe This is great that they integrate it into the Raspberry Pi Installer. Will make the changes to the blog post soon. |
Well done, that seems clear. At some point I might have a go at making the DRM/KMS C code usable from python. It's never a very smooth process so I just keep off looking into it! |
That would be interesting to see. Maybe it does even bring some advantages like even smoother fading for large frames? But anyway, we are safe with Buster, that is good to know. |
I haven't tested bullseye with a pi4. How good/bad is the performance compared to buster? |
I don't have a spare Pi 4 at the moment (they are really hard to get these days!), so I can't run a test, unfortunately. |
Just to chime in because I just got picframe working on my Raspberry Zero 2W with the solution provided by @helgeerbe - crossfading seems to take more or less the time it is configured (10s) - I haven't tried anything faster than that, though. Smooth fading no jerking or jumping. |
Thanks @OliverJennrich I think, with |
I just did a fresh install on the latest Raspberry Pi Zero 2 and received the same error message from another user on a Pi 3.
Following the usual instructions, I get this error message:
Did anything change with the latest Raspberry Pi operating system release?
The text was updated successfully, but these errors were encountered: