Dear Volumionauts,
The latest arrival from Raspberry Pi yielding 1280×720px resolution is making its way to our ecosystem. Details of the screen are available on Raspberry Pi website:
https://www.raspberrypi.com/documentation/accessories/touch-display-2.html
Based on Ilitec ili9881c DRM driver is not free from its own quirks.
Rotate screen without a desktop
Official documentation references appending to the /boot/cmdline.txt:
video=DSI-1:1280x720@60,rotate=<rotation-value>
Since native panel’s orientation is portrait, using above settings will divide screen into two parts and result into the artefacts burn. The parameters need to be reverted:
video=DSI-1:720x1280@60,rotate=<rotation-value>
DSI port enumeration from the overlay itself is shifted hence:
Physical connector | Parameter |
---|---|
CAM/DISP 0 | video=DSI-1:720x1280@60 |
CAM/DISP 1 | video=DSI-2:720x1280@60 |
NOTICE:
None of the above changes are needed with Volumio-OS. Added for reference only.
Panel litec ili9881c DRM kernel driver
Crafted by Raspbery overlay does not have rotation attribute. As a matter of fact, all screens based on ili9881c follows orientation:
I have reported issue and raised pull request to:
Resource | Link | Status |
---|---|---|
Raspberry Pi Documentation | Touch Display 2 Rotate screen without a desktop · Issue #3922 · raspberrypi/documentation · GitHub | Merged (Closed) |
Raspberry Pi Documentation | Touch Display 2 overlay · Issue #3923 · raspberrypi/documentation · GitHub | Merged (Closed) |
PR Kernel | Enable Raspberry Touch 2 rotation with overlay by foonerd · Pull Request #6480 · raspberrypi/linux · GitHub | Merged (Closed) |
Reported issues and raised PR are progressing nicely.
Using Official Raspberry Touch Display 2 with Volumio-OS
Until updated pi-kernel is released, Volumio team produces own version of the vc4-kms-dsi-ili9881-7inch
overlay.
DT parameter | Action |
---|---|
sizex |
Sets X resolution (default 720) |
sizey |
Sets Y resolution (default 1280) |
invx |
Invert X coordinates |
invy |
Invert Y coordinates |
swapxy |
Swap X and Y coordinates |
disable_touch |
Disables the touch overlay totally |
rotation |
Set rotation ccw: 0, 90, 180, 270 |
Volumio Configuration
The download and replace steps below are deprecated with Volumio-OS 3.781 or newer.
Until Volumio prepare stable update release containing corrected overlay, follow these steps.
1. Download vc4-kms-dsi-ili9881-7inch.zip (1.3 KB)
2. Unzip vc4-kms-dsi-ili9881-7inch.zip
3. Replace /boot/overlays/vc4-kms-dsi-ili9881-7inch.dtbo
with downloaded vc4-kms-dsi-ili9881-7inch.dtbo
WARNING - Do not replace /boot/overlays/vc4-kms-dsi-ili9881-7inch.dtbo
with downloaded vc4-kms-dsi-ili9881-7inch .zip! Unzip the file first.
Current release based on Debian Buster:
Edit /boot/userconfig.txt
and add:
[all]
display_auto_detect=1
# Match your rotation counter clockwise 0, 90, 180, 270 degree
dtoverlay=vc4-kms-dsi-ili9881-7inch,rotation=270
Upcoming release based on Debian Bookworm:
Edit /boot/userconfig.txt
and add:
[all]
# Match your rotation counter clockwise 0, 90, 180, 270 degree
dtoverlay=vc4-kms-dsi-ili9881-7inch,rotation=270
Touch Panel plugin
X11 session uses xrand to rotate and this function is already implemented in the plugin. Simply set your rotation within plugin parameters.
NOTICE
The plymouth theme will not rotate and will remain in portrait mode. This is related to fairly outdated plymouth libraries prior rotation being introduced to kernels. There is no point in fixing this. Upcoming Volumio-OS based on Bookworm has currently maintained libraries and plymouth “understands” rotation.
This post will be updated as new changes or discoveries take place.
Kind Regards,