any1 / wayvnc

A VNC server for wlroots based Wayland compositors
ISC License
1.05k stars 65 forks source link

Doesn't work correctly under Labwc on older models of Raspberry Pi #318

Open lurch opened 1 month ago

lurch commented 1 month ago

Useful information:

Please, try to gather as much of useful information as possible and follow these instructions:

Write the latest version of Raspberry Pi OS Bookworm (either 32-bit or 64-bit) from https://www.raspberrypi.com/software/operating-systems/ onto a microSD card. For 32-bit, you can reproduce this bug on a Pi 1B, a Pi 2B, a Pi 3B or a Pi 3B+. For 64-bit, you can only reproduce this bug on a Pi 3B or a Pi 3B+. Connect an HDMI monitor, USB mouse and USB keyboard to the Pi. Boot up the OS by connecting power to the Pi and run through the initial first-boot wizard. Once the OS has fully loaded, open a Terminal window, run sudo raspi-config, navigate to "Advanced Options" -> "Wayland" and select "Labwc", then select "Finish" and reboot as prompted. Once the OS has loaded again, run sudo raspi-config in a Terminal again, navigate to "Interface Options" -> "VNC" and choose "Yes" to enable it, select "Finish".

The Pi has now been configured to use the Labwc compositor, and running WayVNC. See https://www.raspberrypi.com/documentation/computers/remote-access.html#ip-address for various ways of determining the Pi's IP address. Attempt to connect to the WayVNC server on the Pi from another computer (I'm using TigerVNC Viewer v1.13.1 on a Linux laptop), and after authenticating the client appears to have connected to the Pi, but TigerVNC just displays a solid grey window! If you wiggle the laptop's mouse-cursor about inside this grey window, then the mouse-cursor also moves on the HDMI monitor attached to the Pi.

If you repeat the above test with the same microSD card on either a Raspberry Pi 4B or a Raspberry Pi 5, then TigerVNC displays the Pi's desktop totally fine, so this appears to be isolated to Pis older than a Pi 4.

any1 commented 1 month ago

Does it work with Wayfire or do those older devices require software rendering?

lurch commented 1 month ago

I'm now going on holiday for a week, so pinging @spl237 and @cillian64 in case they'd like to reply to this whilst I'm away :slightly_smiling_face:

any1 commented 1 month ago

I'm sure I have a raspberry pi 3 somewhere, but I'm not sure into which box I packed it.

Anyhow, mouse movement tells us that the wayvnc is attached to the compositor and the grey screen tells us that it has not been able to capture a single frame.

Running with the environment variable WL_DEBUG=1 would be useful to see get a trace of the communication with the compositor. It might also be interesting to run without the -g/--gpu flag to see if it has anything to do with dmabufs.