Hi. I don’t know if I’m just hitting performance limits on the pi or if there could be a software solution to this.
I currently run EOS on a Pi4 as sort of a homebrew media box for my TV. It’s just a normal Xfce desktop, and I use a bluetooth gamepad along with AntiMicroX to control the mouse, and an on-screen keyboard for typing.
When I’m doing something CPU intensive, like watching a video in Firefox or MPV, my gamepad lags really bad. For example, I’ll quickly tap the thumb stick to nudge the mouse cursor to the right, and it takes 3-5 seconds before the Pi realizes that I let go of the thumbstick while the cursor continues to drift off to the right.
At first, I thought this was just an issue with AntiMicroX… until I tried also connecting a bluetooth speaker to my Pi.
I’m unable to use any high-fidelity audio presets with my speaker in the bluetooth device manager… or the system performance tanks and my audio crackles really bad… along with my gamepad doing the annoying drifty thing. There’s a low fidelity audio setting that kinda works but it sounds awful (tinny, low bitrate, and I think mono). Even that one seems to bog down performance a bit.
Currently, it is not possible for me to do the following three things simultaneously: 1) Watch a 720p mp4 in MPV 2) Use my bluetooth gamepad and 3) Use a bluetooth speaker
Since both of these issues are happening, it seems to me like bluetooth itself is putting a big load on the Pi. Is there anything I can do to improve this?
I know a lot of people use RPIs for things like Kodi, and I’m sure I’m not the only one who uses bluetooth devices in this manner.
First try running htop in a terminal emulator that has transparency to see what is actually causing the CPU/MEM bottleneck. Then set the priority of that process to a higher priority. This is just a bandaid on a sucking chest wound though. Also I wholeheartedly agree with @ivanhoe about using a dedicated TV-Box (preferably one with a Amlogic S905X3 as you can put Manjaro on it).
Android is a big no for me. The reason I built my own homebrew box in the first place was because Android TV (at least my Nvidia Shield) didn’t allow me to connect my VPN, and had irritating volume stepping issues that didn’t give me enough control over volume on my speaker… and has a terrible selection of web browsers. So I decided to build my own little linux media center to replace it. So far it’s working great for me, other than the bluetooth issues.
I think this may be related to Xfce being resource hungry (xfwm likely cluprit). I’m testing LXDE on my Pi and so far it seems to be running much smoother overall, and bluetooth isn’t tanking performance or crackling. Need to do more testing but I think that might have been my issue.
Pi 400 has audio through the HDMI or Bluetooth speaker. It doesn’t have the onboard audio port. I ordered a USB audio adapter just in case I needed it. So far audio is working but I haven’t used it enough to know what issues it might have.