OLED Display in Argon EON Case (Raspberry Pi 5) – Mirrored and Dim Output

sackboy

New elf
Joined
Jan 4, 2024
Messages
40
Hey everyone,


I'm running FPP on a Raspberry Pi 5 housed in an Argon EON case, and I'm using the built-in OLED display for system info.


The OLED is technically working, but two issues:


  1. The image is mirrored (flipped horizontally, as if viewed in a mirror).
  2. The brightness is extremely dim, making it hard to read.

I've poked around FPP settings and haven’t found any options to flip or brighten the OLED display.


Is there a fix or workaround for this via SSH, such as editing a config file or changing a boot setting? Maybe something like /boot/config.txt, /lib/systemd/system/fppoled.service, or somewhere else?


Would love to hear from anyone else using this case or setup.


Cheers,
Noel
 
In the System options there is a setting to control the OLED. One of them is "mirrored" which should fix the issue you're seeing.

1755251630765.png


I am not aware of any method to adjust the brightness as FPP is 'usually' hidden where the brightness of an OLED doesn't matter, and as such it's driven to 100% all the time. Happy to be corrected on this if there's an option I've missed.
 
Yep , already tried that. It flips the image upside down and it’s still reversed even from doing that.

From what I can figure out there is a command via ssh that will flip it, but there needs to be a way to put a “mirrored” option into the FPP software.

Not all OLED’s are created the same.

Is there a way to ask the perform who programmed this to add this “mirror” horizontally feature?
 
Have you tried rotating the OLED in the case? :D

Seriously, I think this is a more fundamental OS level issue than a FPP issue. You can set certain startup display options for different screens and such and remember doing it a long time ago. I just have poor memory and cannot remember what config file had to be adjusted to get the display to work correctly. This is also common when you add other screens to a PI.
 
I found the command that flips it Horizontally. I ran it in the SSH shell, and it works!

fpp@FPPMaster:~/fpp/src $ i2cset -y 1 0x3C 0x00 0xA0

No idea how to make it work on boot up though..

This is the cheat sheet -

GoalCommand
Flood screen (all pixels)i2cset -y 1 0x3C 0x00 0xA5
Restore normal displayi2cset -y 1 0x3C 0x00 0xA4
Flip screen verticallyi2cset -y 1 0x3C 0x00 0xC8 (flip) or 0xC0 (normal)
Flip screen horizontallyi2cset -y 1 0x3C 0x00 0xA1 (flip) or 0xA0 (normal)
 
Ok, we have a fix.


And what a painful journey that was!

Step-by-Step: Run the OLED Orientation Fix After SSH Login​


Step 1: Create the orientation fix script​



mkdir -p ~/oled-fix
cat > ~/oled-fix/fix-oled.sh << 'EOF'
#!/bin/bash
sleep 1
i2cset -y 1 0x3C 0x00 0xA0
EOF
chmod +x ~/oled-fix/fix-oled.sh


This script will rotate the OLED back to the correct orientation.




Step 2: Create a user-level systemd service​



mkdir -p ~/.config/systemd/user
cat > ~/.config/systemd/user/oled-fix.service << 'EOF'
[Unit]
Description=SSH-Triggered OLED Orientation Fix
After=default.target

[Service]
Type=oneshot
ExecStart=%h/oled-fix/fix-oled.sh

[Install]
WantedBy=default.target
EOF


This ensures your script only runs for the user (not system-wide) and only activates after login.




Step 3: Enable and start the user service​



systemctl --user daemon-reload
systemctl --user enable oled-fix.service
systemctl --user start oled-fix.service
 
Starting to get above my pay grade, it flips after boot and I’m happy enough with that.

My master and slave FPP pi’s are now reporting together, which is all I wanted.

If someone wants to modify it for a permanent fix that would be great.

IMG_6051.jpegimage.jpgimage.jpg
 
Last edited:
Back
Top