Skip to content
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

Adds support for Raspberry Pi 5 #1868

Merged
merged 16 commits into from
Dec 20, 2024

Conversation

nicomiguelino
Copy link
Contributor

@nicomiguelino nicomiguelino commented Apr 2, 2024

Overview

Checklist

  • Add Pi 5 support for installing Anthias on Raspberry Pi OS Lite.
  • Add Pi 5 support for devices running balenaOS.
  • Update download link for Qt and WebView binaries.

How to test the changes?

cd && \
bash <(curl -sL https://raw.githubusercontent.com/nicomiguelino/Anthias/refs/heads/test-rpi5-support/bin/install.sh)

Copy link

sonarqubecloud bot commented Apr 2, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Copy link
Contributor

@vpetersson vpetersson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this will work as the GPU is different on the pi 5.

@nicomiguelino nicomiguelino changed the title workaround: Pull Pi 4 images when fetching Docker images for Pi 5. Adds support for Raspberry Pi 5 Apr 2, 2024
@nicomiguelino
Copy link
Contributor Author

nicomiguelino commented Apr 2, 2024

@vpetersson I'm getting a Segmentation fault when running docker commands, so I re-installed Docker using this guide.

The progress so far (right after running the installer, well at least some custom commands):

image

image

EDIT: Looks like I will take more work than expected because of the GPU differences, you're right.

@nstephens
Copy link

Install script completes successfully on a clean install. Docker containers appear to startup correctly. However, upon reboot I lose video output altogether. No longer see any boot/kernel messages, it never returns. System is pingable, anthias service is reachable over http.

CONTAINER ID   IMAGE                                        COMMAND                  CREATED       STATUS                          PORTS                               NAMES     
a5c525eb3022   nicomiguelino/anthias-nginx:latest-pi5       "/usr/bin/entry.sh n…"   2 hours ago   Up 2 hours                      0.0.0.0:80->80/tcp, :::80->80/tcp   screenly-anthias-nginx-1
dab27d30fd8b   nicomiguelino/anthias-websocket:latest-pi5   "/usr/bin/entry.sh p…"   2 hours ago   Up 2 hours                                                          screenly-anthias-websocket-1
e2186bc3dab1   nicomiguelino/anthias-celery:latest-pi5      "/usr/bin/entry.sh /…"   2 hours ago   Up 2 hours                                                          screenly-anthias-celery-1
8ffd14b39755   nicomiguelino/anthias-viewer:latest-pi5      "/usr/bin/entry.sh b…"   2 hours ago   Restarting (0) 32 seconds ago                                       screenly-anthias-viewer-1
b536b74087ef   nicomiguelino/anthias-server:latest-pi5      "/usr/bin/entry.sh b…"   2 hours ago   Up 2 hours                                                          screenly-anthias-server-1
61e1a415b766   nicomiguelino/anthias-redis:latest-pi5       "/usr/bin/entry.sh r…"   2 hours ago   Up 2 hours                      127.0.0.1:6379->6379/tcp            screenly-redis-1

@nicomiguelino
Copy link
Contributor Author

@nstephens, thanks for providing feedback. I'm still in the process of building a version of WebView compatible with Raspberry Pi 5.

@nicomiguelino
Copy link
Contributor Author

@nstephens, you can try running the install/update script again to see if it works on your Pi 5:

cd && \
bash <(curl -sL https://raw.githubusercontent.com/nicomiguelino/Anthias/refs/heads/test-rpi5-support/bin/install.sh)

@salmanfarisvp
Copy link
Contributor

Hi @nicomiguelino, I was able to install it successfully on Pi5.

image
image

Then, I can access the dashboard page and see the splash screen on the window.
image
image

I added a few test assets; only the audio is missing.

  • PNG and other Image formats are working fine.
  • Offline uploaded video working - no audio
  • Youtube link working - no audio

@nstephens
Copy link

@nstephens, you can try running the install/update script again to see if it works on your Pi 5:

cd && \
bash <(curl -sL https://raw.githubusercontent.com/nicomiguelino/Anthias/refs/heads/test-rpi5-support/bin/install.sh)

I just did a fresh install of RPi Lite OS, ran the install script, and failed quickly:

$ cd && \
bash <(curl -sL https://raw.githubusercontent.com/nicomiguelino/Anthias/refs/heads/test-rpi5-support/bin/install.sh)
Hit:1 http://deb.debian.org/debian bookworm InRelease
Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
Get:3 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Get:4 http://archive.raspberrypi.com/debian bookworm InRelease [39.3 kB]
Reading package lists... Done
E: Release file for http://deb.debian.org/debian-security/dists/bookworm-security/InRelease is not valid yet (invalid for another 28d 8h 35min 48s). Updates for this repository will not be applied.
E: Release file for http://deb.debian.org/debian/dists/bookworm-updates/InRelease is not valid yet (invalid for another 29d 0h 38min 9s). Updates for this repository will not be applied.
E: Release file for http://archive.raspberrypi.com/debian/dists/bookworm/InRelease is not valid yet (invalid for another 28d 19h 36min 39s). Updates for this repository will not be applied.
curl: (60) SSL certificate problem: certificate is not yet valid
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.
gpg: no valid OpenPGP data found.
deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ * *
Hit:1 http://deb.debian.org/debian bookworm InRelease
Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]        
Get:3 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Ign:4 https://repo.charm.sh/apt * InRelease
Get:5 http://archive.raspberrypi.com/debian bookworm InRelease [39.3 kB]
Ign:4 https://repo.charm.sh/apt * InRelease
Ign:4 https://repo.charm.sh/apt * InRelease
Err:4 https://repo.charm.sh/apt * InRelease
  Certificate verification failed: The certificate is NOT trusted. The certificate chain uses not yet valid certificate.  Could not handshake: Error in the certificate verification. [IP: 52.22.184.241 443]
Reading package lists... Done
E: Release file for http://deb.debian.org/debian-security/dists/bookworm-security/InRelease is not valid yet (invalid for another 28d 8h 35min 45s). Updates for this repository will not be applied.
E: Release file for http://deb.debian.org/debian/dists/bookworm-updates/InRelease is not valid yet (invalid for another 29d 0h 38min 6s). Updates for this repository will not be applied.
E: Release file for http://archive.raspberrypi.com/debian/dists/bookworm/InRelease is not valid yet (invalid for another 28d 19h 36min 36s). Updates for this repository will not be applied.
/dev/fd/63: line 80: gum: command not found

Manually ran sudo apt-get update and then retried the script and it worked as expected!

@nicomiguelino
Copy link
Contributor Author

@nstephens, glad to hear that.
About the installation issue that you encountered recently, does it happen all the time the first time you run the script (after you run a fresh install)?

@nstephens
Copy link

@nstephens, glad to hear that. About the installation issue that you encountered recently, does it happen all the time the first time you run the script (after you run a fresh install)?

I only tried the once, so unsure. Previously when I ran the install I recall it doing an apt update prior to pulling more of the script. It felt like maybe it didn't do that this time, which is why I thought to try an apt update and then re-run the script. After that it proceeded without error. I've rebooted several times and the display comes up as expected and appears operational.

I'm running on a monitor without speakers, so I can't speak to the audio section, but the display is correct. The only nit I have (which is likely out of scope here) is that I have the RPi configured to display in portrait mode and can verify that's working by swapping to console (ctrl alt f1), however Anthias is showing everything in default landscape.

@nicomiguelino
Copy link
Contributor Author

@nstephens, thanks for the detailed response. I'll be taking notes.
About the issues with installation and portrait mode, they will likely be addressed on separate pull requests.

Copy link

@nicomiguelino nicomiguelino marked this pull request as ready for review December 18, 2024 22:43
@nicomiguelino nicomiguelino requested a review from a team as a code owner December 18, 2024 22:43
@nicomiguelino nicomiguelino merged commit 4f0f8e5 into Screenly:master Dec 20, 2024
9 checks passed
@nicomiguelino nicomiguelino deleted the rpi5-support branch December 20, 2024 07:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Is Anthias on Raspberrypi 5 available
4 participants