RPI4 bluetooth bogged down and not performing smoothly. Can anything be done?

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.

You’ve better luck than me, I can’t get audio through either 3.5 mm jack or Bluetooth

Oof … I guess I shouldn’t complain too much then :grin:

Other than BT quirkiness, EOS Arm is working great for me. Thanks for your contributions

1 Like

Figuring out the sound on both Odroid and RPi is next on our list, maybe after that Bluetooth.

Is there anything you’d like me to test for you/log files/etc since it’s working on my end?

Edit:

2 Likes

(Get an Android-TV ‘China Box’ for your tv-set for less than 50 bucks. That’s the way I keep doing it.)

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.

1 Like

If you like LXDE, you would like LXQt too.

1 Like

I will try that next for sure. I assumed LXDE would probably be the leanest of the bunch, it’s my first go around with any of the LX* environments

FYI as I understand it, a modified version of LXDE is what Raspberry Pi OS uses for a Desktop Environment.

Pudge

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.

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.

1 Like