Got to imagine someone else has had this problem so I'm posting my simple workaround.
The problem is the realvnc client for iPadOS [and iOS] won't properly scale the VNC screen resolution to correctly fit the iPadOS screen when connecting to Raspberry Pi OS (Debian Bookworm), causing the realvnc client to only show part of the RP screen.
Running this bash script will quickly reset the screen resolution to a usable resolution thus negating the need to "bump scroll" to see the previously hidden parts of the screen. The odd resolution on the third line is to match the iPad screen ratio. Tested on an iPad 9th generation but should work for other models.
"NOOP-1" is the default for headless machines. If in doubt about your output display ID run "wlr-randr" and your display ID will be on the first line [of the output]. If you mostly use your RP with a connected display you should create a second, one line script that will set your monitor to your preferred resolution,
Hope this helps someone and I'm happy to answer any questions concerning this.
Thanks.
The problem is the realvnc client for iPadOS [and iOS] won't properly scale the VNC screen resolution to correctly fit the iPadOS screen when connecting to Raspberry Pi OS (Debian Bookworm), causing the realvnc client to only show part of the RP screen.
Running this bash script will quickly reset the screen resolution to a usable resolution thus negating the need to "bump scroll" to see the previously hidden parts of the screen. The odd resolution on the third line is to match the iPad screen ratio. Tested on an iPad 9th generation but should work for other models.
"NOOP-1" is the default for headless machines. If in doubt about your output display ID run "wlr-randr" and your display ID will be on the first line [of the output]. If you mostly use your RP with a connected display you should create a second, one line script that will set your monitor to your preferred resolution,
Code:
#!/bin/bash# required to temporarily set the screen to dimensions not currently being usedwlr-randr --output NOOP-1 --on --custom-mode 1024x768@30Hz# without the 1 second sleep the script won't fix the problemsleep 1# 1350x1024@30Hz chosen to match the iPad screen ratio and having the screen at a usable resolutionwlr-randr --output NOOP-1 --on --custom-mode 1350x1024@30HzThanks.
Statistics: Posted by tango_103 — Tue Jun 17, 2025 6:17 pm