Controller input limit/lag/delay - 2.4Ghz wireless vs bluetooth
-
Pi Model or other hardware: 3B
Power Supply used:2.5 amp
RetroPie Version Used (3.6, 3.8.1, 4.01 etc.. - do not write latest): 4.1 + updates
Built From: Pre made SD Image on RetroPie website
USB Devices connected: wireless keyboard dongle, Tenda W311MI
Controller used: 8Bitdo FC30 Pro
Error messages received: n/a
Log found in /dev/shm/runcommand.log (if relevant): n/a
Guide used: Retropie first install
File: (n/a
Emulator: all / retropie-setup
Attachment of config files:
How to replicate the problem: Requires one wireless and one bluetooth control device. Go into any retropie setup menu. Configedit, configure basic libretto options, is a good place because it's a long list.Issue:
I am playing over 8bitDo FC 30 Pro controllers connected via bluetooth. When I'm playing games I need to perform quick consecutive control inputs and am unable to do so because the system isn't registering the fast consecutive inputs - even though these old gaming thumbs can still crank out the moves. It's as if there is a governor or processing delay (input lag).Testing:
TV is set to gaming mode. To eliminate the emulator as an issue, I performed my testing inside Retropie-Setup. I observe that in the menu system inside Retropie-Setup (Configedit, configure basic libretto options) when I rapidly press the down arrow on my wireless keyboard the menu selection moves down in accordance with each button press. If I rapidly press down on the Dpad of my controller, the menu selection moves down at about half the rate (or less) of the keyboard. This indicates back end hardware, or bluetooth input configuration as the problem. Keep in mind that controls in game are functioning, just...slower. You can feel the lack of responsiveness.My question:
I'd like to see if someone else out there can corroborate what I'm observing on their side with emulator independent wireless vs BT input delays.Unfortunately wired controllers are not an option for me, so cord free is the way I have to go. I'd also like to know if there is something I can do about this. If not, I'm going to return these 8bitdo controllers and get wireless RF controllers instead.
-
Delete the original post please. I think the menu system is just not optimized for control pad input so my test isn't really valid.
I still can't determine if RF or BT controllers will be faster, but my instinct is telling me to go with RF.
-
I've found that input lag can vary, depending on what emulator core you are using (like pocketsnes vs snes9x). I have an old pi 1 B+ that I set up today, and there is hardly any lag at all on NES and SNES games, including super mario bros and super mario world ( Lag can be very obvious in these games when things aren't set up properly). It has taken me weeks to fully figure out how to make retroarch run with lowest lag possible(I also have retroarch on my Mac). Hopefully this will help-
-
Set max swapchain to as low as possible, I think 1 and 2 run pretty similarly.
-
Turn on hard gpu sync and set it to 0
-
Set frame delay as high as you can go before you get stuttering. On the pi 1, I can go to about 8 with NES core and 4 with SNES. On Pi 3 you can probably go higher, but systems with higher graphics like N64 and PSX won't let you go as high before you run into problems.
Max swapchain and frame delay can make a HUGE difference in input latency. Higher frame delay= lower latency. Lower max swapchain = lower latency. You can also overclock that shit if you want higher frame delay with less stuttering.
-
-
@actnash Also, I was worried BT could cause noticeable lag but from the research I've done, we shouldn't be able to tell the difference. I have a NES classic edition, which is wired and is widely known to have very low input latency, but using my pi 1 with PS3 controller and USB Bluetooth receiver, I can't tell any difference from my NES classic. If anything, the pi has maybe lower latency, or at least it seems that way to me. And I'm very picky when in comes to lag!
-
@actnash said in Controller input limit/lag/delay - 2.4Ghz wireless vs bluetooth:
I've found that input lag can vary, depending on what emulator core you are using (like pocketsnes vs snes9x). I have an old pi 1 B+ that I set up today, and there is hardly any lag at all on NES and SNES games, including super mario bros and super mario world ( Lag can be very obvious in these games when things aren't set up properly). It has taken me weeks to fully figure out how to make retroarch run with lowest lag possible(I also have retroarch on my Mac). Hopefully this will help-
-
Set max swapchain to as low as possible, I think 1 and 2 run pretty similarly.
-
Turn on hard gpu sync and set it to 0
-
Set frame delay as high as you can go before you get stuttering. On the pi 1, I can go to about 8 with NES core and 4 with SNES. On Pi 3 you can probably go higher, but systems with higher graphics like N64 and PSX won't let you go as high before you run into problems.
Max swapchain and frame delay can make a HUGE difference in input latency. Higher frame delay= lower latency. Lower max swapchain = lower latency. You can also overclock that shit if you want higher frame delay with less stuttering.
Thanks for the input! Where are these settings located? I assume you set them globally so retroarch.cfg or config editor?
-
-
@batesman You need to access the retroarch rgui menu while you are in a game. You can do this by pressing X button and select at the same time. Once you get to the rgui menu, you want to click on settings, then video. Then scroll down and you will see the settings I mentioned. Keep in mind, A button goes forward and B button goes back. When you go out of video settings after making changes, go to config under settings and set it to save your configuration upon exiting. Then just keep pressing B to go back as far as you can, go to quick menu, then resume game and the settings should be automatically saved for that core. Is everything running good without stuttering, it's just the input lag that is bothering you? If the games aren't running at full speed, you can also tweak your video resolution settings by pressing "a" on your keyboard while starting up a game. But if your games are running at full fps and look smooth, you may not need to fool with resolution settings. Pressing "a" on keyboard while starting a game is how you can also try out different cores and see which one works better for you.
-
@actnash said in Controller input limit/lag/delay - 2.4Ghz wireless vs bluetooth:
@batesman You need to access the retroarch rgui menu while you are in a game. You can do this by pressing X button and select at the same time. Once you get to the rgui menu, you want to click on settings, then video. Then scroll down and you will see the settings I mentioned. Keep in mind, A button goes forward and B button goes back. When you go out of video settings after making changes, go to config under settings and set it to save your configuration upon exiting. Then just keep pressing B to go back as far as you can, go to quick menu, then resume game and the settings should be automatically saved for that core. Is everything running good without stuttering, it's just the input lag that is bothering you? If the games aren't running at full speed, you can also tweak your video resolution settings by pressing "a" on your keyboard while starting up a game. But if your games are running at full fps and look smooth, you may not need to fool with resolution settings. Pressing "a" on keyboard while starting a game is how you can also try out different cores and see which one works better for you.
Yes, I think the games are running at full speed. I haven't pulled up the FPS counter but I haven't noticed any distinct sluggishness in the game performance. Although, if memory serves, some of the old games had periods of slowdown even when played on the original consoles.
I'm going to take a look at the settings you suggested and see if I can fine tune my setup.
Thanks again!
-
I am having this difficulty, within 4 feet / 1 metre on a Pi4.
My BT Keyboard is lagging quite bad, things like lettttttttttttttttttttttttttttters holding on and so on.
Would I have better luck with a USB dongle? I do have a pretty decent Asus BT400 I think somewhere, but I'd have thought by the year 2020 the Pi4 might have a reasonable enough chip??
Note the Pi4 is on wifi but it's on 5ghz Wifi
Any tips? -
-
@GoshGeeGolly Please don't bump old topics. Open a separate topic describing your issue and provide the info requested in https://retropie.org.uk/forum/topic/3/read-this-first
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.