Display Rotate with Rpi3 and current RetroPie Image [solved]
-
What options exist to rotate the framebuffer in RetroPie by 180 degrees in 2024? I have a setup where a desktop TFT is mounted upside-down.
Details:
Rpi3 3b+ with latest RetroPie Image
Updated packages and latest RetroPie-Setup (94b131a6
)
Monitor connected via HDMI
Kernel: Linux retropie 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l GNU/LinuxI tried to add
video=HDMI:<xres>x<yres>@60,rotate=180
to/boot/cmdline.txt
, as suggested on the Raspberry page, but it does not make a difference. (However, this extra option works well on a Rpi4).If all else fails I go back to a firmware/kernel combo where
display_rotate=2
in/boot/config.txt
is still supported and apt mark/hold this combo. Another workaround I see is to use the rotation option for ES and for the libretro/RA based emulators. However, for non libretro emulators this still might be a hit/miss situation. -
Found it. I was misled by the official Rpi documentation.
The solutions below only refer to the display rotation, see notes.
Solution 1: Legacy video driver
config.txt
: Neitherdtoverlay=vc4-fkms-v3d
nordtoverlay=vc4-kms-v3d
enabled, butdisplay_hdmi_rotate=2
cmdline.txt
: Novideo=...
option
Note: The RetroPie Image for a Rpi3 ships with the legacy driver enabled. The EmulationStation binary is compiled against that driver and works out-of-the-box. This should also not affect any precompiled emulators.
Solution 2: (fake) KMS and Kernel option
config.txt
: Eitherdtoverlay=vc4-fkms-v3d
ordtoverlay=vc4-kms-v3d
cmdline.txt
: Addvideo=HDMI-A-1:1280x1024@60,rotate=180
. Note the use of HDMI-A-1 and not HDMI as the documentation (see above) states currently. (I have a PR filed for that.)
Note: You will have to source build emulationstation with that config to make it use the video driver. I did not testdrive any emulators with this solution.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.