054c:0268 Sony Playstation 2 controller PC adaptator : buttons are not mapped correctly

Bug #836335 reported by Corentin SCHREIBER
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
Low
Unassigned

Bug Description

I just received an adaptator that allows one to plug a PlayStation 2 controller into an USB port to use it as a joystick in ubuntu.
The adpatator is from Gameron, but there is no clear product name (in french : "Adaptateur Manette PS2 > PS3, Compatible Sony PS3 / PC", so it seems to emulate a Playstation 3 controller). It has a "Gamepad / Wheel" switch on its side.

Using the "Wheel" mode, the controller is recognized as a "Logitech Logitech Driving Force" (output from jstest) and works correctly but is missing some features (half working analog sticks). I think this is working as intended.

Using the "Gamepad" mode, some buttons are missing.
The controller was set in that mode for all that follows.
Note that I've made the following tests with two different official Playstation 2 gamepads and the result was the same.

Here is the result of lsusb :

Bus 002 Device 012: ID 054c:0268 Sony Corp. Batoh Device

And here is the initial output of jstest :

Joystick (Sony PLAYSTATION(R)3 Controller) has 30 axes (X, Y, Z, Rz, Hat0X, Hat0Y, (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null), (null))
and 13 buttons (Trigger, ThumbBtn, ThumbBtn2, TopBtn, TopBtn2, PinkieBtn, BaseBtn, BaseBtn2, BaseBtn3, BaseBtn4, BaseBtn5, BaseBtn6, BtnDead).

All axes are working correctly (they correspond to button pressure levels).
The 13 button IDs correspond to the following :

0 : select
1 : analog left
2 : analog right
3 : start
4 : directional pad top
5 : directional pad right
6 : directional pad bottom
7 : directional pad left
8 : L2
9 : R2
10 : L1
11 : R1
12 : triangle

As you can see, "circle", "cross" and "square" are missing from the button list.

I've plugged the adaptator on a Windows XP machine, and it was recognized out of the box (no additional driver required), and all buttons were working correctly. It also reported 13 buttons, which were mapped to the corresponding actions :

0 : triangle
1 : circle
2 : cross
3 : square
4 : L1
5 : R1
6 : L2
7 : R2
8 : select
9 : start
10 : analog left
11 : analog right
12 : ? (analog on/off button ?)

The directional pad was mapped to a joystick hat as far as I can tell, and the two analog sticks were working properly.

See the corresponding forum post : http://ubuntuforums.org/showthread.php?p=11193828#post11193828

Other people having the exact same problem with unofficial Playstation 3 controllers :
http://ubuntuforums.org/showthread.php?t=920636

ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: linux-image-2.6.38-11-generic 2.6.38-11.48
ProcVersionSignature: Ubuntu 2.6.38-11.48-generic 2.6.38.8
Uname: Linux 2.6.38-11-generic i686
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: i386
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: ALC269 Analog [ALC269 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: kalith 1639 F.... pulseaudio
 /dev/snd/pcmC0D0p: kalith 1639 F...m pulseaudio
CRDA: Error: [Errno 2] Aucun fichier ou dossier de ce type
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xf0700000 irq 43'
   Mixer name : 'Intel IbexPeak HDMI'
   Components : 'HDA:10ec0269,10cf0200,00100004 HDA:80862804,80860101,00100000'
   Controls : 16
   Simple ctrls : 8
Date: Mon Aug 29 00:13:44 2011
HibernationDevice: RESUME=UUID=961ec798-a386-4b00-8827-f15196d5a77e
InstallationMedia: Ubuntu 10.10 "Maverick Meerkat" - Release i386 (20101007)
MachineType: FUJITSU LIFEBOOK A530
ProcEnviron:
 LANGUAGE=fr_FR:en
 LANG=fr_FR.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.38-11-generic root=UUID=e8424bc6-ca68-4a71-982b-a2456bb7abd8 ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-2.6.38-11-generic N/A
 linux-backports-modules-2.6.38-11-generic N/A
 linux-firmware 1.52
SourcePackage: linux
UpgradeStatus: Upgraded to natty on 2011-06-30 (59 days ago)
dmi.bios.date: 08/19/2010
dmi.bios.vendor: FUJITSU // Phoenix Technologies Ltd.
dmi.bios.version: Version 1.16
dmi.board.name: FJNBB06
dmi.board.vendor: FUJITSU
dmi.chassis.type: 10
dmi.chassis.vendor: FUJITSU
dmi.modalias: dmi:bvnFUJITSU//PhoenixTechnologiesLtd.:bvrVersion1.16:bd08/19/2010:svnFUJITSU:pnLIFEBOOKA530:pvr:rvnFUJITSU:rnFJNBB06:rvr:cvnFUJITSU:ct10:cvr:
dmi.product.name: LIFEBOOK A530
dmi.sys.vendor: FUJITSU
---
ApportVersion: 2.4-0ubuntu5
Architecture: i386
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: ubuntu 4556 F.... pulseaudio
CRDA:
 country FR:
  (2402 - 2482 @ 40), (N/A, 20)
  (5170 - 5250 @ 40), (N/A, 20)
  (5250 - 5330 @ 40), (N/A, 20), DFS
  (5490 - 5710 @ 40), (N/A, 27), DFS
CasperVersion: 1.320
DistroRelease: Ubuntu 12.10
LiveMediaBuild: Ubuntu 12.10 "Quantal Quetzal" - Alpha i386 (20120724.2)
MachineType: FUJITSU LIFEBOOK A530
Package: linux (not installed)
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: initrd=/casper/initrd.lz file=/cdrom/preseed/username.seed boot=casper quiet splash -- persistent BOOT_IMAGE=/casper/vmlinuz
ProcVersionSignature: Ubuntu 3.5.0-6.6-generic 3.5.0
RelatedPackageVersions:
 linux-restricted-modules-3.5.0-6-generic N/A
 linux-backports-modules-3.5.0-6-generic N/A
 linux-firmware 1.85
Tags: quantal running-unity
Uname: Linux 3.5.0-6-generic i686
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
dmi.bios.date: 08/19/2010
dmi.bios.vendor: FUJITSU // Phoenix Technologies Ltd.
dmi.bios.version: Version 1.16
dmi.board.name: FJNBB06
dmi.board.vendor: FUJITSU
dmi.chassis.type: 10
dmi.chassis.vendor: FUJITSU
dmi.modalias: dmi:bvnFUJITSU//PhoenixTechnologiesLtd.:bvrVersion1.16:bd08/19/2010:svnFUJITSU:pnLIFEBOOKA530:pvr:rvnFUJITSU:rnFJNBB06:rvr:cvnFUJITSU:ct10:cvr:
dmi.product.name: LIFEBOOK A530
dmi.sys.vendor: FUJITSU

Revision history for this message
Corentin SCHREIBER (cschreib) wrote :
Brad Figg (brad-figg)
Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

Corentin SCHREIBER, this bug was reported a while ago and there hasn't been any activity in it recently. We were wondering if this is still an issue? If so, could you please plug the USB device in that demonstrates this problem, unplug all other USB devices, execute the following via a terminal, and post the results to this report:
lsusb

As well, could you please test for this with the latest development release of Ubuntu? ISO CD images are available from http://cdimage.ubuntu.com/releases/ .

If it remains an issue, could you please run the following command in the development release from a Terminal (Applications->Accessories->Terminal), as it will automatically gather and attach updated debug information to this report:

apport-collect -p linux <replace-with-bug-number>

Also, could you please test the latest upstream kernel available? It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please do not test the kernel in the daily folder, but the one all the way at the bottom. Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. As well, please comment on which kernel version specifically you tested.

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

If you are unable to test the mainline kernel, for example it will not boot, please add the tag: 'kernel-unable-to-test-upstream', and comment as to why specifically you were unable to test it.

Please let us know your results. Thanks in advance.

Helpful Bug Reporting Links:
https://help.ubuntu.com/community/ReportingBugs#Bug_Reporting_Etiquette
https://help.ubuntu.com/community/ReportingBugs#A3._Make_sure_the_bug_hasn.27t_already_been_reported
https://help.ubuntu.com/community/ReportingBugs#Adding_Apport_Debug_Information_to_an_Existing_Launchpad_Bug
https://help.ubuntu.com/community/ReportingBugs#Adding_Additional_Attachments_to_an_Existing_Launchpad_Bug

Changed in linux (Ubuntu):
importance: Undecided → Low
status: Confirmed → Incomplete
tags: added: needs-upstream-testing
tags: added: kernel-bug-exists-upstream
removed: needs-upstream-testing
Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

Hi, and thank you for your interest in the matter.

The observed behavior (with lsusb and jstest) is exactly the same :
1) with my current Ubuntu release (12.04, kernel 3.2.0-29),
2) with the latest quantal build (alpha-3),
3) and with the latest kernel (3.6-rc3-quantal).
All of these configurations show the exact same behavior as the one detailed in the bug description.

I will now come back to the latest development release and run the 'apport-collect' command shortly.

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : AcpiTables.txt

apport information

tags: added: apport-collected quantal running-unity
description: updated
Revision history for this message
Corentin SCHREIBER (cschreib) wrote : AlsaInfo.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : BootDmesg.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : IwConfig.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : Lspci.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : Lsusb.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : ProcModules.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : PulseList.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : RfKill.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : UdevDb.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : UdevLog.txt

apport information

Revision history for this message
Corentin SCHREIBER (cschreib) wrote : WifiSyslog.txt

apport information

penalvch (penalvch)
summary: - Sony Playstation 2 controller PC adaptator : buttons are not mapped
- correctly
+ 054c:0268 Sony Playstation 2 controller PC adaptator : buttons are not
+ mapped correctly
Revision history for this message
penalvch (penalvch) wrote :

Corentin SCHREIBER, thank you for making the tests.

Did this issue not occur in a prior Ubuntu release?

Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

I submitted the bug report just when I received the device, so the oldest Ubuntu release I tested was 11.04. I never saw it work properly on any release I tried (all > 11.04). If you suspect an older release in particular would work, I can always give it a try provided it can be ran live from a USB stick.

Also note that people have reported strangely similar issues with non official PS3 controllers (i.e. not from Sony) in 2008 (Ubuntu 8.04). So I guess that if it ever worked, it was even before that. Reference :
http://ubuntuforums.org/showthread.php?t=920636

Revision history for this message
penalvch (penalvch) wrote :

Corentin SCHREIBER, could you please test for this in http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.6-rc6-quantal/ ?

tags: added: kernel-bug-exists-upstream- v3.6-rc3-quantal
Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

Sorry for the late reply, I missed your comment somehow.
The problem persists with the kernel you linked (3.6-rc6).

Revision history for this message
penalvch (penalvch) wrote :

Corentin SCHREIBER, thank you for testing the mainline kernel. Could you please test http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.7-rc4-raring/ ?

Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

Nothing changed with this kernel (3.7-rc4) as well.

Revision history for this message
penalvch (penalvch) wrote :

Corentin SCHREIBER, thank you for testing the newest mainline kernel. Did this controller work in Lucid?

tags: added: kernel-bug-exists-upstream-v3.7-rc4
removed: kernel-bug-exists-upstream- v3.6-rc3-quantal
Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

I just tried a live USB : no.

penalvch (penalvch)
tags: added: lucid
penalvch (penalvch)
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Unsupported series, setting status to "Won't Fix".

This bug was filed against a series that is no longer supported and so is being marked as Won't Fix. If this issue still exists in a supported series, please file a new bug.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: Confirmed → Won't Fix
Revision history for this message
penalvch (penalvch) wrote :

Marking back to Confirmed as this was reproducible in Quantal and mainline kernel.

Changed in linux (Ubuntu):
status: Won't Fix → Confirmed
Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

I just switched from Windows XP to Windows 7, and strangely enough it behaves the same as linux there...
I guess I'll just buy myself a real USB controller, it's just a shame to throw away an otherwise perfectly working piece of hardware.

Revision history for this message
penalvch (penalvch) wrote :

Corentin SCHREIBER, as per http://support.ts.fujitsu.com/Download/ShowFiles.asp an update is available for your BIOS (1.19). If you update to this following https://help.ubuntu.com/community/BiosUpdate , does it change anything?

If not, could you please both specify what happened, and provide the output of the following terminal command:
sudo dmidecode -s bios-version && sudo dmidecode -s bios-release-date

Please note your current BIOS is already in the Bug Description, so posting this on the old BIOS would not be helpful.

For more on BIOS updates and linux, please see https://help.ubuntu.com/community/ReportingBugs#Bug_reporting_etiquette .

Thank you for your understanding.

tags: added: bios-outdated-1.19
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

I actually have had the chance to test the controller on 2 other different computers since I first submitted this bug report, but the problem has always been the same. So it cannot be a BIOS issue I suppose.

Thank you for your help so far.

Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

Out of curiosity, I decided to look at what was actually sent by the device using libusb.
I managed to reverse ingeneer the structure of the USB packet, and have attached it as a C header (my machine is little endian, if it matters), along with the C++ code I used.

I don't know how this compares to what the driver expects, nor who I should give these informations so that they get incorporated into the driver.

Revision history for this message
Corentin SCHREIBER (cschreib) wrote :

The C++ code using libusb.

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.