helgeerbe / picframe

Picture frame viewer for raspi, controlled via mqtt and automatticly integrated as mqtt device in homeassistant.
MIT License
113 stars 32 forks source link

Buster: AttributeError: 'DisplayOpenGL' object has no attribute 'context' #384

Closed bjornlinzer closed 7 months ago

bjornlinzer commented 7 months ago

On a fresh install on RPi 3B, following the instructions on thedigitalpictureframe.com, I get this error:

pi@pi:~ $ picframe ~/picframe_data/config/configuration.yaml INFO:start.py:starting ['/home/pi/.local/bin/picframe', '/home/pi/picframe_data/config/configuration.yaml'] INFO:model.Model:Open config file: /home/pi/picframe_data/config/configuration.yaml: Traceback (most recent call last): File "/home/pi/.local/bin/picframe", line 8, in sys.exit(main()) File "/home/pi/.local/lib/python3.7/site-packages/picframe/start.py", line 135, in main c.start() File "/home/pi/.local/lib/python3.7/site-packages/picframe/controller.py", line 338, in start self.viewer.slideshow_start() File "/home/pi/.local/lib/python3.7/site-packages/picframe/viewer_display.py", line 433, in slideshow_start background=self.__background, use_glx=self.use_glx) File "/home/pi/.local/lib/python3.7/site-packages/pi3d/Display.py", line 624, in create use_glx=use_glx, use_sdl2=use_sdl2) File "/home/pi/.local/lib/python3.7/site-packages/pi3d/util/DisplayOpenGL.py", line 116, in create_display assert self.context != EGL_NO_CONTEXT and self.context is not None AttributeError: 'DisplayOpenGL' object has no attribute 'context'

The install worked fine before, but my sd-card died, so I had to replace it. The problem seems to be the same as #195, but my RPi is running Buster.

I repeated every step and after that, the entire installation, to no avail. Can anybody help?

paddywwoof commented 7 months ago

Hi, Presumably you are using the same legacy OS from https://downloads.raspberrypi.org/raspios_arm64/images/raspios_arm64-2021-05-28/2021-05-07-raspios-buster-arm64.zip which you were using on your failed SD-card setup, so it does seem odd that pi3d isn't managing to generate an EGL context.

I've not tried following Wolfgang's instructions for a while but I have downloaded the OS image and I will git it a go later if I have time. With the RPi5 we've had to do various things to get it to run so maybe we've introduced something incompatible - but I'm pretty sure everything has been tested since.

bjornlinzer commented 7 months ago

Thank you, I'm courious what may come out of this. Do you think I should use another OS? Or a more recent model of RPi? Meanwhile, I recovered an old disk-image from the time when the system stil worked. Will flash it to the sd-card an see what happens.

bjornlinzer commented 7 months ago

hi, the old image appears to work. the bootscreen of the old system says "Raspberry Pi OS (32 bit), Release 3.6 - Janurary 2021" and the ssh-terminal greets with "Linux foto 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l". interestingly, the new install says "Raspberry Pi OS (64 bit), Release 3.6 - Janurary 2021" and greets with "Linux pi 5.10.103-v8+ #1529 SMP PREEMPT Tue Mar 8 12:26:46 GMT 2022 aarch64". apparently, I'm using the 64 bit version now. Could that be a problem for the picframe software? Is there any other useful information I could extract from the old install? I only have basic knowledge about Linux, no knowledge about python.

bjornlinzer commented 7 months ago

I solved the problem by installing the 32 bit version of Buster to my RPi 3B. Why, I don't know. But I'm happy. Thanks again, Paddy and Wolfgang!