• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Help Game controller compatibility

rt_david

Lurker
Hi all,

I have a Samsung Galaxy Tab S 10.5, running on android 5.0.2 (not rooted), and I'm having a real hard time finding a game controller that works with my tablet.

I am able to use only those three game controllers:
- one cheap USB controller from ebay
- one cheap BlueTooth controller from ebay
- one logitech dual action (P/N 863747-0010)

However, I don't like them because the analog joystick doesn't work good enough to play shooter game.

I tried the following remote controller and none of them works:
- Logitech F310 (looks very close to the dual action)
- XBOX Afterglow (made by PDP)

On the funny site, all of them works on my PC, except the first two cheap controller from ebay.

Bottom line, I would really love to know why some controllers work and some don't ? Both logitech looks very similar and only one of them works. My preference is to use a good quality controller, and if possible, an XBOX 360 wired controller).

Also, I would prefer to not ROOT my tablet as I know nothing about this process and I'm afraid to screw anything up or void my warranty.

Thanks
 
Software drivers probably. Don't think an Xbox controller is going to work at all, because Microsoft doesn't make drivers or support for anything but an actual Xbox or Windows. Might be same with Logitech, only officially makes drivers and supports Windows.
 
Well, my logitech Dual action works, but not my logitech F310. I also googled this topic and found some tutorial saying that it's a simple plug and play for an XBox controller to work, which doesn't work for me.

So what is making a specific controller to work and another one to not work ? This is total mistery for me.

Beside this, if I look in /system/usr/keylayout, I found a file named Vendor_046b_Product_c21d.kl.
I opened the file with a text reader and found the following :




# Copyright (C) 2014 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Logitech F310

key 304 BUTTON_A
key 305 BUTTON_B
key 307 BUTTON_X
key 308 BUTTON_Y
key 310 BUTTON_L1
key 311 BUTTON_R1
key 315 BUTTON_START
key 314 BACK
key 316 HOME
key 317 BUTTON_THUMBL
key 318 BUTTON_THUMBR

axis 0x00 X
axis 0x01 Y
axis 0x03 Z
axis 0x04 RZ
axis 0x05 GAS
axis 0x02 BRAKE
axis 0x10 HAT_X
axis 0x11 HAT_Y
 
I also found another file related to an xbox controller:

# Copyright (C) 2011 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#
# XBox 360 USB Controller
#

key 304 BUTTON_A
key 305 BUTTON_B
key 307 BUTTON_X
key 308 BUTTON_Y
key 310 BUTTON_L1
key 311 BUTTON_R1
key 314 BACK
key 315 BUTTON_START
key 316 HOME
key 317 BUTTON_THUMBL
key 318 BUTTON_THUMBR

# Left and right stick.
# The reported value for flat is 128 out of a range from -32767 to 32768, which is absurd.
# This confuses applications that rely on the flat value because the joystick actually
# settles in a flat range of +/- 4096 or so.
axis 0x00 X flat 4096
axis 0x01 Y flat 4096
axis 0x03 Z flat 4096
axis 0x04 RZ flat 4096

# Triggers.
axis 0x02 LTRIGGER
axis 0x05 RTRIGGER

# Hat.
axis 0x10 HAT_X
axis 0x11 HAT_Y
 
And also, I found this one:

# Copyright (C) 2011 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#
# Logitech Dual Action Controller
#

key 0x120 BUTTON_A
key 0x123 BUTTON_B
key 0x121 BUTTON_X
key 0x122 BUTTON_Y
key 0x124 BUTTON_L1
key 0x125 BUTTON_R1
key 0x126 BUTTON_L2
key 0x127 BUTTON_R2
key 0x128 BUTTON_SELECT
key 0x129 BUTTON_START
key 0x12a BUTTON_THUMBL
key 0x12b BUTTON_THUMBR

axis 0x00 X
axis 0x01 Y
axis 0x02 Z
axis 0x05 RZ
axis 0x10 HAT_X
axis 0x11 HAT_Y
 
These file are currently located in the system/usr/keylayouts folder. So I'm sure something can be done somehow, but I just don't know what...
 
Back
Top Bottom