Support for Raspberry Pi 4

Could you pastebin the mir-kiosk log? That will likely point at the issue.

my suspicion is that the mesa version is not new enough … (though thats just a wild guess)

  1. I’ve done a clean installation of the Ogra’s Rpi4 image.

  2. Did $ snap refresh and stuff refreshed from the edge channel.

  3. Device automatically rebooted.

  4. Installed mir-kiosk from edge $ snap install --edge mir-kiosk

  5. Screen changed from ssh instructions to a black screen with blinking underscore cursor (afaik, that’s normal edit: Not normal!).

  6. I did $ snap install --edge chromium-mir-kiosk but from the installation feedback it said it first installed a stable and then an edge version. Is that normal?

  7. Nothing changed on the screen.

  8. I tried $ snap set chromium-mir-kiosk url='["http://www.canonical.com","https://www.ubuntu.com"]'

  9. Nothing changed on the screen

  10. I executed $ snap set chromium-mir-kiosk url='["http://www.canonical.com","https://www.ubuntu.com"]'

  11. Nothing changed on the screen.

  12. I $ sudo reboot the machine but still nothing changed after boot, just a black screen with blinking underscore cursor.

  13. I ssh again and try $ snap start chromium-mir-kiosk, the terminal responds with Started. but no changes on the screen.

LOGS
I tried getting the logs as described here:

  1. I execute $ snap log mir-kiosk and it throws me an error error: unknown command "log", see 'snap help'.

But I failed ofc. You might wanna update that to say logs since that’s the first thing that popped up on Google.

Anyway.
$ snap logs mir-kiosk

Gave these:
2019-07-24T17:03:11Z mir-kiosk.mir-kiosk[1945]: std::exception::what: Failed to open DRM device node: Permission denied 2019-07-24T17:03:11Z mir-kiosk.mir-kiosk[1945]: [boost::errinfo_file_name_*] = /dev/dri/card1 2019-07-24T17:03:11Z systemd[1]: snap.mir-kiosk.mir-kiosk.service: Main process exited, code=exited, status=1/FAILURE 2019-07-24T17:03:11Z systemd[1]: snap.mir-kiosk.mir-kiosk.service: Failed with result 'exit-code'. 2019-07-24T17:03:11Z systemd[1]: snap.mir-kiosk.mir-kiosk.service: Service hold-off time over, scheduling restart. 2019-07-24T17:03:11Z systemd[1]: snap.mir-kiosk.mir-kiosk.service: Scheduled restart job, restart counter is at 7. 2019-07-24T17:03:11Z systemd[1]: Stopped Service for snap application mir-kiosk.mir-kiosk. 2019-07-24T17:03:11Z systemd[1]: snap.mir-kiosk.mir-kiosk.service: Start request repeated too quickly. 2019-07-24T17:03:11Z systemd[1]: snap.mir-kiosk.mir-kiosk.service: Failed with result 'exit-code'. 2019-07-24T17:03:11Z systemd[1]: Failed to start Service for snap application mir-kiosk.mir-kiosk.

nope, that is not normal … it should quickly flash orange, then turn black and show a mouse pointer. if you see a blinking cursor mir did not start.

1 Like

There may be other, earlier, errors but here Mir is failing to get access to the graphics DRM device. That explains why Mir doesn’t start.

You can get a longer listing with snap logs -n 100 mir-kiosk, but there is an incompatibility with kernel graphics module(s) in the image.

Have you tried ogra’s suggestion:

So I’ve done another clean Ubuntu Core install, did snap refresh and snap install --edge mir-kiosk and got the black screen with a blinking underscore cursor.
This time tho, here are the logs you’ve asked:

Changing the dtoverlay from dtoverlay=vc4-fkms-v3d to dtoverlay=vc4-kms-v3d makes Rpi4 unable to output any signal to the monitor. It’s black with my monitors no hdmi signal message.

Also snap command is not working for some reason after trying to install nano snap and rebooting.
$ snap logs -n 100 mir-kiosk
gives
error: cannot communicate with server: Get http://localhost/v2/logs?n=100&names=mir-kiosk: dial unix /run/snapd.socket: connect: connection refused

The rest of the snap commands just hang and show empty line.

Got my 4GB pi4 last week, and it’s happily running raspbian.
I’m interested in accelerated opengl support in ubuntu core,
but haven’t gotten up the courage to try ogra’s build yet.

accelerated opengl isnt there yet on the Pi4 … but accelerated video playback works fine using the omxplayer-pi package as well as on the other pi’s (or on classic ubuntu) … only 1080p though, omxplayer upstream does not support h265 yet.

Looks like https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=246766&p=1517854&hilit=rpi4+v3d#p1517854 is a nice thread re gpu and rpi4 status…

Well, the thread you point to is about 64bit support (and indeed also mentions V3D on 64bit) … I dont plan to work on any 64bit images. The ones I built are for initial developer use until an official Ubuntu image exists.

Wether or not @ppisati plans to work on a 64bit kernel for upcoming official Ubuntu Pi4 images and when the Ubuntu kernels will be ready at all, I dont even know though.

Im a strong opponent of supporting arm64 on unsuited hardware.

64bit ARM means you allocate nearly twice the ram for each running application without gaining any beneift, unless the app actually makes use of 64bit registers… so effectively you only waste memory. It is a hard requirement on systems with more than 4GB of ram and it surely makes sense for software that has been specifically written for 64bit register usage though.

What i plan to work on in the nearer future is a classic image to provide along with the Ubuntu Core image though (but under the same restrictions, only until an actual Ubuntu image exists).

Any progress on core 18 for raspberry pi 4 beyond ogra’s july test image?

1 Like

i think there is progress in the distro to target pi4 as an official device for 20.04 … if you require an updated kernel for my image i’m happy to take a look though (the rootfs will upgrade itself automatically on core)

Thanks. I’ll give it a try.

This might be helpful for some here (works on pi2 and 3 too indeed):

4 Likes

I’ve been trying my hand at getting OpenGL ES 2 graphics working using my RPI4 but have been running into some strange errors:

QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QOpenGLWidget: Failed to create context
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QOpenGLWidget: Failed to create context
composeAndFlush: makeCurrent() failed
composeAndFlush: makeCurrent() failed

The snap is working on amd64/i386 but I just can’t figure out what is missing to get it working on the RPI4 with the VC4 driver. Any help would be appreciated!

Source:

Uploaded for RPI4 to store on beta channel:
sudo snap install --beta mmapper

I’ve tested all the stables, betas and edges; the same thing happens. I’ve messed around with snap interfaces a bit too but didn’t get anywhere. :roll_eyes:

this is pretty cryptic … can you elaborate a little ?

Thanks a bunch for that core18 image, Oliver. It works on my side. Can you tell me if this snap will upgrade automatically once the official 20.04 release is available?

nope, sadly not, this image uses a differently named kernel snap that does not come from the store, once there are official core images you will have to re-flash to get the correct names in the model assertion of the image and to get kernel/gadget updates from the store.

with the ubuntu 19.10 kernel now fully supporting the pi4 (and thanks to the holidays :slight_smile: ), i invested a little time to switch the kernel snap of my core18 image over to it (the snap is still called “linux-raspberrypi-org” so there wont be any upgrade path to the official image, but it is now at least built from the same source the official kernel will use later)

note that there is no way to upgrade to that new image, you need to completely re-flash your SD card if you were using the older one (once using this image you will be able to “snap install --dangerous linux-raspberrypi-org_*_armhf.snap” later in case i provide an updated kernel snap though)

the new image is in the usual place at https://people.canonical.com/~ogra/snappy/raspberrypi4/core18/

the snaps it was built from are in the snaps/ subdir, the old image is still available under old/ for people that want to use the actual raspberrypi.org kernel.

note: this fixes mir-kiosk support !

6 Likes