Xbox One controller in bluetooth: test and feedback
-
Hello to Recalbox team and happy users
It is possible to find on the forum and the Net various information about the use of Xbox One controllers in bluetooth, but few feedbacks from users.
So i created this new topic to centralize feedback from Recalbox users/testers of Xbox One gamepad in bluetooth (which may help the recalbox team in the future).
First:
Bluetooth pairing of an Xbox one controller is possible if the "/sys/module/bluetooth/parameters/disable_ertm" parameter is active (ie ERTM off). This parameter must be set each time recalbox is started.
The problems / bugs frequently mentioned are:
- First pairing difficult (requires several attempts before the controllers can be recognized for the first time)
- Non-functional Select key
- L2 and R2 keys incorrectly recognized
Here is my feedback:
#Used material:
- Raspberry pi 3 (bluetooth 4.1)
- Recalbox 4.1 (v18.07.13)
- 2 Xbox One gamepads (model 1708 with bluetooth), updated with the latest firmware
- 1 8bitdo SF30 Pro bluetooth gamepad
-> ie https://en.m.wikipedia.org/wiki/Xbox_One_controller
#Experience with Xbox one controllers in bluetooth:
- The first pairing is a bit difficult and several attempts are necessary - X
- The select key is perfectly functional (recognized when assigning keys and functional under emulstation) - ✓
- The keys L2 and R2 are perfectly recognized but have two possibles states: Pressed and released (just be careful when assigning keys) - ✓
- The 3 bluetooth gamepad (2 XboxOne and 1 8bitdo) works simultaneously without problems
In addition, disabling the ERTM parameter should not be a problem :
ERTM (Enhanced Retransmission Mode) is a part of the L2CAP protocol.
Role of L2CAP in the Bluetooth stack is to provide logical channels for multiplexing various protocols and services over the same physical link. Two mode of L2CAP are possible: ERTM who provides a reliable L2CAP channel and SM (Streaming Mode) who provides an unreliable L2CAP channel.
On the other hand, this could be a problem if bluetooth is used for data transmission (for example audio transmission under recalbox). Streaming Mode (SM): This is a very simple mode, with no retransmission or flow control. This mode provides an unreliable L2CAP channel.
So in my case, apart from possible problems related to disabling the ERTM protocol (which does not seem to affect the other bluetooth controllers), the Xbox One gamepads are fully functional in bluetooth.
# Feel free to tell what works/does'nt works in your Xbox One controller's bluetooth setup