# Sixaxis via bluetooth

## ttouch

Hello,

I want to make my PS3 Controller via bt (usb works).

I've been googling for days and most (if not all) posts were talking about bluez 4.xx, while I have 5.22, which has the famous hidd tool. old-daemons use flag did not help.

Also, I found that there is an "--enable-sixaxis" flag since bluez 5.12, but don't know how to "pass" that to emerge. Is compiling on my own the right "gentoo way"?

I'm not familiar with ebuilds, so I can't do a lot...

Thanks!  :Smile: 

----------

## Ant P.

 *ttouch wrote:*   

> Also, I found that there is an "--enable-sixaxis" flag since bluez 5.12, but don't know how to "pass" that to emerge. Is compiling on my own the right "gentoo way"?

 

If it's a sufficiently well-written ebuild you should be able to use EXTRA_ECONF="--enable-sixaxis" in package.env.

----------

## BT

 *ttouch wrote:*   

> Also, I found that there is an "--enable-sixaxis" flag since bluez 5.12, but don't know how to "pass" that to emerge. Is compiling on my own the right "gentoo way"?

 

You don't need to pass "--enable-sixaxis", the bluez-5 ebuilds in Portage already do that. Furthermore since BlueZ 5.14 both DualShock 3 and 4 controllers are fully supported.

I used the following setup to get a DualShock 3 working via Bluetooth. I have also successfully tested a DualShock 4 via Bluetooth. The DualShock 4 requires Linux >=3.15 and has a slightly different pairing procedure.

Hardware

I'm using a Broadcom BCM20702A0 based Bluetooth 4.0 USB adapter.

Kernel

I'm using gentoo-sources-3.16.5.

```
    Device Drivers --->

          Input device support --->

            <*>   Joystick interface

            <*>   Event interface

          HID support --->

            <*>   Generic HID driver

                  Special HID drivers --->

                    <*> Sony PS2/3/4 accessories

                    [*]   Sony PS2/3/4 accessories force feedback support

                USB HID support --->

                  <*> USB HID transport layer

      [*] LED Support --->

            <*>   LED Class Support
```

BlueZ

I'm using bluez-5.21-r1.

 Start bluetoothctl.

```
$ bluetoothctl
```

 Enable the agent and set it as default.

```
[bluetooth]# agent on

[bluetooth]# default-agent
```

 Power on the Bluetooth adapter, and set it as discoverable and pairable.

```
[bluetooth]# power on

[bluetooth]# discoverable on

[bluetooth]# pairable on
```

 Connect the DualShock 3 to the system using a USB cable and press the PlayStation button.

 Discover the DualShock 3 MAC address.

```
[bluetooth]# devices
```

 Disconnect the USB cable from the DualShock 3.

 Allow the service authorization request.

 Trust the DualShock 3.

```
[bluetooth]# trust <mac address>
```

 The DualShock 3 is now paired.

```
[bluetooth]# quit
```

 Turn the DualShock 3 off when it's no longer in use by pressing and holding the PlayStation button for 10 seconds.

 Press the PlayStation button to use the DualShock 3 again.

Update: I have added an article to the Gentoo Wiki covering DualShock 3 and DualShock 4 use via USB and Bluetooth.Last edited by BT on Sun Jan 04, 2015 12:03 am; edited 7 times in total

----------

## ttouch

Yes, it shows connected!  :Smile: 

The LEDs keep blinking (I think that this is normal), but I can't find it in /dev and kernel does not report say anything.

Where is supposed the device to be? /dev/input?

----------

## BT

The LED blinking issue when connected via Bluetooth was fixed in Linux 3.15. I'm using Linux 3.16 so the LEDs on my DualShock 3 don't blink. The device nodes should be /dev/hidraw[0-9] and /dev/input/js[0-9].

dmesg:

```
usb 3-4: new full-speed USB device number 16 using xhci_hcd

sony 0003:054C:0268.0008: Fixing up Sony Sixaxis report descriptor

input: Sony PLAYSTATION(R)3 Controller as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0/0003:054C:0268.0008/input/input11

sony 0003:054C:0268.0008: input,hiddev0,hidraw3: USB HID v1.11 Joystick [Sony PLAYSTATION(R)3 Controller] on usb-0000:00:14.0-4/input0

usb 3-4: USB disconnect, device number 16

sony 0005:054C:0268.0009: Fixing up Sony Sixaxis report descriptor

sony 0005:054C:0268.0009: unknown main item tag 0x0

input: PLAYSTATION(R)3 Controller as /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3:1.0/bluetooth/hci0/hci0:11/0005:054C:0268.0009/input/input12

sony 0005:054C:0268.0009: input,hidraw3: BLUETOOTH HID v1.00 Joystick [PLAYSTATION(R)3 Controller] on 00:19:0e:16:01:4c
```

Last edited by BT on Mon Oct 06, 2014 10:40 pm; edited 1 time in total

----------

## ttouch

Thank you, after a reboot, it's all working  :Smile: 

I'm on 3.14, so I got the LED blinking problem, but I don't care...

----------

## DjMadness

sorry for ressurecting the thread, but this seamed like the right place to go.

I've got 2 ps3 controllers that i want to connect over bluetooth, but i seam to be running into a brick wall.

```

[ 2241.639971] usb 3-2.3: new full-speed USB device number 7 using ohci-pci

[ 2241.766075] usb 3-2.3: New USB device found, idVendor=054c, idProduct=0268

[ 2241.766079] usb 3-2.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0

[ 2241.766081] usb 3-2.3: Product: PLAYSTATION(R)3Conteroller

[ 2241.766082] usb 3-2.3: Manufacturer: SHENGHIC 2009/0708ZXW-V1Inc.

[ 2241.778198] input: SHENGHIC 2009/0708ZXW-V1Inc. PLAYSTATION(R)3Conteroller as /devices/pci0000:00/0000:00:12.0/usb3/3-2/3-2.3/3-2.3:1.0/0003:054C:0268.0005/input/input13

[ 2241.778369] sony 0003:054C:0268.0005: input,hiddev0,hidraw0: USB HID v1.11 Joystick [SHENGHIC 2009/0708ZXW-V1Inc. PLAYSTATION(R)3Conteroller] on usb-0000:00:12.0-2.3/input0

```

I'm running BlueZ 5.25 and all the kernel options in the first post are enabled. and it works over USB (the /dev/input/js0 etc exists)

but this is where my problems start, i disconnect the USB cable and reconnect to the bluetooth service. 

```

Eve djmadness # bluetoothctl

[NEW] Controller 5C:F3:70:13:DD:57 BlueZ 5.25 [default]

[NEW] Device 00:1E:3D:DE:7E:08 RDA bt

[NEW] Device 00:32:00:45:00:A1 PLAYSTATION(R)3 Controller

[bluetooth]#

[bluetooth]# info 00:1E:3D:DE:7E:08

Device 00:1E:3D:DE:7E:08

        Name: RDA bt

        Alias: RDA bt

        Class: 0x001f00

        Paired: no

        Trusted: no

        Blocked: no

        Connected: yes

        LegacyPairing: no

```

there is no devices in /dev/input/js* or /dev/hidraw* just no way to actually use it, am i doing something wrong or misunderstanding something ?

i've been fighting with this problem for days, resetting bluetooth settings and starting over and over again.

Could someone help me in the right direction ?

----------

## BT

It appears that you don't have an official Sony DualShock controller. I believe these devices aren't supported by BlueZ.

----------

## DjMadness

 *BT wrote:*   

> It appears that you don't have an official Sony DualShock controller. I believe these devices aren't supported by BlueZ.

 

brutal, is there any other options ? 

i really feel like i've thrown alot of money out of the window now  :Sad: 

----------

## BT

You might be able to pair manually with sixpair. You only need the sixpair.c file and not the other patches listed on the site. The instructions are mostly outdated, but the section on pairing (3.2. Operation, third bullet point) should still be correct.

If that doesn't work, borrow (if possible) an official DualShock controller to ensure that the issue isn't with the Bluetooth adapter.

----------

## DjMadness

update, i gave up and returned it to the store, i found out that they did not follow the protocol, and there even was spelling mistakes in the product name in lsusb.

replaced them with original controllers and its working without issues, thanks for the guide and thanks for the help  :Smile: 

----------

## loz85

1. Is there a command to run that can tell me what the battery status is? 

2. for those struggling with poorly behaving clones (most of them are made by ShanWan) there is a patch that can be applied to BlueZ to make them work

http://article.gmane.org/gmane.linux.bluez.kernel/61352/match=sixaxis

Works great for me with a dodgy ShanWan copy dualshock controller. not sure what the status is with it being merged into the BlueZ main, last I heard they were waiting for testing on some of the other controller type (eg Navigation Controller)

----------

## BT

 *loz85 wrote:*   

> 1. Is there a command to run that can tell me what the battery status is?

 

You can check the battery charge level via sysfs:

```
cat "/sys/class/power_supply/sony_controller_battery_04:76:6e:9a:98:fc/capacity"
```

You can also use UPower if it's installed.

1. Enumerate objects paths:

```
$ upower -e

/org/freedesktop/UPower/devices/battery_sony_controller_battery_04o76o6eo9ao98ofc
```

2. Display information about object path:

```
$ upower -i /org/freedesktop/UPower/devices/battery_sony_controller_battery_04o76o6eo9ao98ofc
```

If you have a desktop environment that supports UPower, you should be able to check the battery charge level via the power manager.

----------

## Kossa

I'm trying to connect my Sony PLAYSTATION(R)3 Controller via bluetooth using wiki instructions but with no luck:

 ~ $ bluetoothctl 

Agent registered

[bluetooth]# agent on

Agent is already registered

[bluetooth]# default-agent

Default agent request successful

[bluetooth]# power on

Changing power on succeeded

[bluetooth]# discoverable on

Changing discoverable on succeeded

[bluetooth]# pairable on

Changing pairable on succeeded

[NEW] Device 04:98:F3:C4:D0:EE Sony PLAYSTATION(R)3 Controller

Authorize service

[agent] Authorize service 00001124-0000-1000-8000-00805f9b34fb (yes/no): yes

[CHG] Device 04:98:F3:C4:D0:EE Trusted: yes

[CHG] Device 04:98:F3:C4:D0:EE UUIDs: 00001124-0000-1000-8000-00805f9b34fb

[bluetooth]# devices

Device 04:98:F3:C4:D0:EE Sony PLAYSTATION(R)3 Controller

[CHG] Device 04:98:F3:C4:D0:EE Class: 0x00000508

[CHG] Device 04:98:F3:C4:D0:EE Icon: input-gaming

[CHG] Device 04:98:F3:C4:D0:EE Connected: yes

[CHG] Device 04:98:F3:C4:D0:EE ServicesResolved: no

[CHG] Device 04:98:F3:C4:D0:EE Connected: no

[CHG] Device 04:98:F3:C4:D0:EE Connected: yes

[CHG] Device 04:98:F3:C4:D0:EE Connected: no

[CHG] Device 04:98:F3:C4:D0:EE Connected: yes

[CHG] Device 04:98:F3:C4:D0:EE Connected: no

[bluetooth]#

After unplugging USB cable diodes on the controller start to blink but after few seconds they stop. 

When I pres PlayStation button on the controller I see this message:

[CHG] Device 04:98:F3:C4:D0:EE Connected: yes

and diodes are blinking, but after few seconds there is this message:

[CHG] Device 04:98:F3:C4:D0:EE Connected: no

and diodes are no longer blinking, all are off.

Bluetoothctr info shows this:

[bluetooth]# info 04:98:F3:C4:D0:EE

Device 04:98:F3:C4:D0:EE (public)

        Name: Sony PLAYSTATION(R)3 Controller

        Alias: Sony PLAYSTATION(R)3 Controller

        Class: 0x00000508

        Icon: input-gaming

        Paired: no

        Trusted: yes

        Blocked: no

        Connected: no

        LegacyPairing: no

        UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)

        Modalias: usb:v054Cp0268d0000

Any idea what could be the problem?

----------

## Kossa

output from dmesg:

[197853.415010] usb 9-2: new full-speed USB device number 69 using ohci-pci

[197853.598109] usb 9-2: New USB device found, idVendor=054c, idProduct=0268, bcdDevice= 1.00

[197853.598114] usb 9-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0

[197853.598118] usb 9-2: Product: PLAYSTATION(R)3 Controller

[197853.598121] usb 9-2: Manufacturer: Sony

[197853.630185] input: Sony PLAYSTATION(R)3 Controller Motion Sensors as /devices/pci0000:00/0000:00:13.0/usb9/9-2/9-2:1.0/0003:054C:0268.0021/input/input116

[197853.682109] input: Sony PLAYSTATION(R)3 Controller as /devices/pci0000:00/0000:00:13.0/usb9/9-2/9-2:1.0/0003:054C:0268.0021/input/input115

[197853.682419] sony 0003:054C:0268.0021: input,hiddev1,hidraw3: USB HID v81.11 Joystick [Sony PLAYSTATION(R)3 Controller] on usb-0000:00:13.0-2/input0

[197875.268989] usb 9-2: USB disconnect, device number 69

----------

## Ant P.

 *Quote:*   

> Paired: no 

 

Try pairing it?

----------

## Kossa

 *Ant P. wrote:*   

>  *Quote:*   Paired: no  
> 
> Try pairing it?

 

How?

----------

## Kossa

Btmon output after clicking PlayStation button:

# btmon 

Bluetooth monitor ver 5.50

= Note: Linux version 4.20.13-gentoo (x86_64)                                                                                                                                                                                         0.655283

= Note: Bluetooth subsystem version 2.22                                                                                                                                                                                              0.655287

= New Index: 11:11:11:11:11:11 (Primary,USB,hci0)                                                                                                                                                                              [hci0] 0.655289

= Open Index: 11:11:11:11:11:11                                                                                                                                                                                                [hci0] 0.655289

= Index Info: 11:11:11:11:11:11 (Integrated System Solution Corp.)                                                                                                                                                             [hci0] 0.655290

@ MGMT Open: bluetoothd (privileged) version 1.14                                                                                                                                                                            {0x0001} 0.655292

@ MGMT Open: btmon (privileged) version 1.14                                                                                                                                                                                 {0x0002} 0.655320

> HCI Event: Connect Request (0x04) plen 10                                                                                                                                                                                #1 [hci0] 11.369467

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Class: 0x000508

          Major class: Peripheral (mouse, joystick, keyboards)

          Minor class: 0x02

        Link type: ACL (0x01)

< HCI Command: Accept Connection Request (0x01|0x0009) plen 7                                                                                                                                                              #2 [hci0] 11.369582

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Role: Master (0x00)

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                  #3 [hci0] 11.372459

      Accept Connection Request (0x01|0x0009) ncmd 1

        Status: Success (0x00)

> HCI Event: Role Change (0x12) plen 8                                                                                                                                                                                     #4 [hci0] 11.541466

        Status: Success (0x00)

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Role: Master (0x00)

> HCI Event: Connect Complete (0x03) plen 11                                                                                                                                                                               #5 [hci0] 11.544461

        Status: Success (0x00)

        Handle: 1

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Link type: ACL (0x01)

        Encryption: Disabled (0x00)

< HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2                                                                                                                                                         #6 [hci0] 11.544646

        Handle: 1

> HCI Event: Connection Packet Type Changed (0x1d) plen 5                                                                                                                                                                  #7 [hci0] 11.546462

        Status: Success (0x00)

        Handle: 1

        Packet type: 0x0018

          DM1 may be used

          DH1 may be used

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                  #8 [hci0] 11.547461

      Read Remote Supported Features (0x01|0x001b) ncmd 1

        Status: Success (0x00)

< HCI Command: Change Connection Packet Type (0x01|0x000f) plen 4                                                                                                                                                          #9 [hci0] 11.547491

        Handle: 1

        Packet type: 0xcc18

          DM1 may be used

          DH1 may be used

          DM3 may be used

          DH3 may be used

          DM5 may be used

          DH5 may be used

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #10 [hci0] 11.548462

      L2CAP: Connection Request (0x02) ident 2 len 4

        PSM: 17 (0x0011)

        Source CID: 106

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                 #11 [hci0] 11.550481

      Change Connection Packet Type (0x01|0x000f) ncmd 1

        Status: Success (0x00)

> HCI Event: Connection Packet Type Changed (0x1d) plen 5                                                                                                                                                                 #12 [hci0] 11.551460

        Status: Success (0x00)

        Handle: 1

        Packet type: 0x0018

          DM1 may be used

          DH1 may be used

> HCI Event: Read Remote Supported Features (0x0b) plen 11                                                                                                                                                                #13 [hci0] 11.558462

        Status: Success (0x00)

        Handle: 1

        Features: 0xfc 0x07 0x82 0x7e 0x08 0x18 0x00 0x80

          Encryption

          Slot offset

          Timing accuracy

          Role switch

          Hold mode

          Sniff mode

          Park state

          Power control requests

          Channel quality driven data rate (CQDDR)

          Paging parameter negotiation

          Broadcast Encryption

          Enhanced Data Rate ACL 2 Mbps mode

          Enhanced Data Rate ACL 3 Mbps mode

          Enhanced inquiry scan

          Interlaced inquiry scan

          Interlaced page scan

          RSSI with inquiry results

          AFH capable slave

          AFH capable master

          AFH classification master

          Extended features

< HCI Command: Remote Name Request (0x01|0x0019) plen 10                                                                                                                                                                  #14 [hci0] 11.558568

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Page scan repetition mode: R2 (0x02)

        Page scan mode: Mandatory (0x00)

        Clock offset: 0x0000

< ACL Data TX: Handle 1 flags 0x02 dlen 10                                                                                                                                                                                #15 [hci0] 11.558582

      L2CAP: Information Request (0x0a) ident 1 len 2

        Type: Extended features supported (0x0002)

@ MGMT Event: Device Connected (0x000b) plen 18                                                                                                                                                                      {0x0002} [hci0] 11.558590

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Flags: 0x00000000

        Data length: 5

        Class: 0x000508

          Major class: Peripheral (mouse, joystick, keyboards)

          Minor class: 0x02

@ MGMT Event: Device Connected (0x000b) plen 18                                                                                                                                                                      {0x0001} [hci0] 11.558590

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Flags: 0x00000000

        Data length: 5

        Class: 0x000508

          Major class: Peripheral (mouse, joystick, keyboards)

          Minor class: 0x02

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                                #16 [hci0] 11.558617

      L2CAP: Connection Response (0x03) ident 2 len 8

        Destination CID: 64

        Source CID: 106

        Result: Connection pending (0x0001)

        Status: No further information available (0x0000)

< ACL Data TX: Handle 1 flags 0x02 dlen 10                                                                                                                                                                                #17 [hci0] 11.558623

      L2CAP: Information Request (0x0a) ident 2 len 2

        Type: Extended features supported (0x0002)

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                 #18 [hci0] 11.561461

      Remote Name Request (0x01|0x0019) ncmd 1

        Status: Success (0x00)

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #19 [hci0] 11.563460

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #20 [hci0] 11.566460

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #21 [hci0] 11.568460

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                                #22 [hci0] 11.569462

      L2CAP: Information Response (0x0b) ident 1 len 8

        Type: Extended features supported (0x0002)

        Result: Success (0x0000)

        Features: 0x00000000

> HCI Event: Remote Name Req Complete (0x07) plen 255                                                                                                                                                                     #23 [hci0] 11.592459

        Status: Success (0x00)

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Name: PLAYSTATION(R)3 Controller

> ACL Data RX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                                #24 [hci0] 11.593460

      L2CAP: Information Response (0x0b) ident 2 len 8

        Type: Extended features supported (0x0002)

        Result: Success (0x0000)

        Features: 0x00000000

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                                #25 [hci0] 11.593555

      L2CAP: Connection Response (0x03) ident 2 len 8

        Destination CID: 64

        Source CID: 106

        Result: Connection successful (0x0000)

        Status: No further information available (0x0000)

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #26 [hci0] 11.593567

      L2CAP: Configure Request (0x04) ident 3 len 4

        Destination CID: 106

        Flags: 0x0000

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #27 [hci0] 11.597461

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #28 [hci0] 11.598460

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #29 [hci0] 11.603462

      L2CAP: Configure Request (0x04) ident 3 len 4

        Destination CID: 64

        Flags: 0x0000

< ACL Data TX: Handle 1 flags 0x02 dlen 18                                                                                                                                                                                #30 [hci0] 11.603491

      L2CAP: Configure Response (0x05) ident 3 len 10

        Source CID: 106

        Flags: 0x0000

        Result: Success (0x0000)

        Option: Maximum Transmission Unit (0x01) [mandatory]

          MTU: 672

> ACL Data RX: Handle 1 flags 0x02 dlen 14                                                                                                                                                                                #31 [hci0] 11.606460

      L2CAP: Configure Response (0x05) ident 3 len 6

        Source CID: 64

        Flags: 0x0000

        Result: Success (0x0000)

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #32 [hci0] 11.607461

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #33 [hci0] 11.642466

      L2CAP: Connection Request (0x02) ident 4 len 4

        PSM: 19 (0x0013)

        Source CID: 107

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                                #34 [hci0] 11.642512

      L2CAP: Connection Response (0x03) ident 4 len 8

        Destination CID: 65

        Source CID: 107

        Result: Connection pending (0x0001)

        Status: Authorization pending (0x0002)

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                                #35 [hci0] 11.642674

      L2CAP: Connection Response (0x03) ident 4 len 8

        Destination CID: 65

        Source CID: 107

        Result: Connection successful (0x0000)

        Status: No further information available (0x0000)

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #36 [hci0] 11.642698

      L2CAP: Configure Request (0x04) ident 4 len 4

        Destination CID: 107

        Flags: 0x0000

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #37 [hci0] 11.647460

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #38 [hci0] 11.648461

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #39 [hci0] 11.650460

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 36                                                                                                                                                                                #40 [hci0] 11.661463

      L2CAP: Configure Request (0x04) ident 5 len 28

        Destination CID: 65

        Flags: 0x0000

        Option: Quality of Service (0x03) [mandatory]

          Flags: 0x00

          Service type: Guaranteed (0x02)

          Token rate: 0x00000000

          Token bucket size: 0x00000000

          Peak bandwidth: 0x00000000

          Latency: 0x00002bf2

          Delay variation: 0xffffffff

< ACL Data TX: Handle 1 flags 0x02 dlen 18                                                                                                                                                                                #41 [hci0] 11.661492

      L2CAP: Configure Response (0x05) ident 5 len 10

        Source CID: 107

        Flags: 0x0000

        Result: Success (0x0000)

        Option: Maximum Transmission Unit (0x01) [mandatory]

          MTU: 672

> ACL Data RX: Handle 1 flags 0x02 dlen 14                                                                                                                                                                                #42 [hci0] 11.665466

      L2CAP: Configure Response (0x05) ident 4 len 6

        Source CID: 65

        Flags: 0x0000

        Result: Success (0x0000)

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #43 [hci0] 11.666466

        Num handles: 1

        Handle: 1

        Count: 1

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #44 [hci0] 11.667305

      L2CAP: Disconnection Request (0x06) ident 5 len 4

        Destination CID: 106

        Source CID: 64

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #45 [hci0] 11.667323

      L2CAP: Disconnection Request (0x06) ident 6 len 4

        Destination CID: 107

        Source CID: 65

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #46 [hci0] 11.671459

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                    #47 [hci0] 11.672458

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #48 [hci0] 11.711466

      L2CAP: Disconnection Response (0x07) ident 5 len 4

        Destination CID: 106

        Source CID: 64

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                                #49 [hci0] 11.736467

      L2CAP: Disconnection Response (0x07) ident 6 len 4

        Destination CID: 107

        Source CID: 65

< HCI Command: Disconnect (0x01|0x0006) plen 3                                                                                                                                                                            #50 [hci0] 15.778256

        Handle: 1

        Reason: Remote User Terminated Connection (0x13)

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                 #51 [hci0] 15.780525

      Disconnect (0x01|0x0006) ncmd 1

        Status: Success (0x00)

> HCI Event: Disconnect Complete (0x05) plen 4                                                                                                                                                                            #52 [hci0] 15.858489

        Status: Success (0x00)

        Handle: 1

        Reason: Connection Terminated By Local Host (0x16)

@ MGMT Event: Device Disconnected (0x000c) plen 8                                                                                                                                                                    {0x0002} [hci0] 15.858529

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Reason: Connection terminated by local host (0x02)

@ MGMT Event: Device Disconnected (0x000c) plen 8                                                                                                                                                                    {0x0001} [hci0] 15.858529

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Reason: Connection terminated by local host (0x02)

----------

## Kossa

After clicking PlayStation button and trying to pair with PIN 0000:

~ $ bluetoothctl 

Agent registered

[bluetooth]# devices 

Device 04:98:F3:C4:D0:EE Sony PLAYSTATION(R)3 Controller

[CHG] Device 04:98:F3:C4:D0:EE Connected: yes

[Sony PLAYSTATION(R)3 Controller]# pair 04:98:F3:C4:D0:EE

Attempting to pair with 04:98:F3:C4:D0:EE

Request PIN code

[agent] Enter PIN code: 0000

[CHG] Device 04:98:F3:C4:D0:EE Connected: no

Failed to pair: org.bluez.Error.AuthenticationCanceled

[bluetooth]# 

and btmon:

> HCI Event: Connect Request (0x04) plen 10                                                                                                                                                                              #53 [hci0] 602.372655

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Class: 0x000508

          Major class: Peripheral (mouse, joystick, keyboards)

          Minor class: 0x02

        Link type: ACL (0x01)

< HCI Command: Accept Connection Request (0x01|0x0009) plen 7                                                                                                                                                            #54 [hci0] 602.372766

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Role: Master (0x00)

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                #55 [hci0] 602.375649

      Accept Connection Request (0x01|0x0009) ncmd 1

        Status: Success (0x00)

> HCI Event: Role Change (0x12) plen 8                                                                                                                                                                                   #56 [hci0] 602.544653

        Status: Success (0x00)

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Role: Master (0x00)

> HCI Event: Connect Complete (0x03) plen 11                                                                                                                                                                             #57 [hci0] 602.547648

        Status: Success (0x00)

        Handle: 1

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Link type: ACL (0x01)

        Encryption: Disabled (0x00)

< HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2                                                                                                                                                       #58 [hci0] 602.547823

        Handle: 1

> HCI Event: Connection Packet Type Changed (0x1d) plen 5                                                                                                                                                                #59 [hci0] 602.548612

        Status: Success (0x00)

        Handle: 1

        Packet type: 0x0018

          DM1 may be used

          DH1 may be used

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                #60 [hci0] 602.550607

      Read Remote Supported Features (0x01|0x001b) ncmd 1

        Status: Success (0x00)

< HCI Command: Change Connection Packet Type (0x01|0x000f) plen 4                                                                                                                                                        #61 [hci0] 602.550650

        Handle: 1

        Packet type: 0xcc18

          DM1 may be used

          DH1 may be used

          DM3 may be used

          DH3 may be used

          DM5 may be used

          DH5 may be used

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #62 [hci0] 602.551604

      L2CAP: Connection Request (0x02) ident 2 len 4

        PSM: 17 (0x0011)

        Source CID: 108

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                #63 [hci0] 602.553610

      Change Connection Packet Type (0x01|0x000f) ncmd 1

        Status: Success (0x00)

> HCI Event: Connection Packet Type Changed (0x1d) plen 5                                                                                                                                                                #64 [hci0] 602.554604

        Status: Success (0x00)

        Handle: 1

        Packet type: 0x0018

          DM1 may be used

          DH1 may be used

> HCI Event: Read Remote Supported Features (0x0b) plen 11                                                                                                                                                               #65 [hci0] 602.561651

        Status: Success (0x00)

        Handle: 1

        Features: 0xfc 0x07 0x82 0x7e 0x08 0x18 0x00 0x80

          Encryption

          Slot offset

          Timing accuracy

          Role switch

          Hold mode

          Sniff mode

          Park state

          Power control requests

          Channel quality driven data rate (CQDDR)

          Paging parameter negotiation

          Broadcast Encryption

          Enhanced Data Rate ACL 2 Mbps mode

          Enhanced Data Rate ACL 3 Mbps mode

          Enhanced inquiry scan

          Interlaced inquiry scan

          Interlaced page scan

          RSSI with inquiry results

          AFH capable slave

          AFH capable master

          AFH classification master

          Extended features

< HCI Command: Remote Name Request (0x01|0x0019) plen 10                                                                                                                                                                 #66 [hci0] 602.561715

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Page scan repetition mode: R2 (0x02)

        Page scan mode: Mandatory (0x00)

        Clock offset: 0x0000

< ACL Data TX: Handle 1 flags 0x02 dlen 10                                                                                                                                                                               #67 [hci0] 602.561730

      L2CAP: Information Request (0x0a) ident 1 len 2

        Type: Extended features supported (0x0002)

@ MGMT Event: Device Connected (0x000b) plen 18                                                                                                                                                                     {0x0002} [hci0] 602.561738

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Flags: 0x00000000

        Data length: 5

        Class: 0x000508

          Major class: Peripheral (mouse, joystick, keyboards)

          Minor class: 0x02

@ MGMT Event: Device Connected (0x000b) plen 18                                                                                                                                                                     {0x0001} [hci0] 602.561738

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Flags: 0x00000000

        Data length: 5

        Class: 0x000508

          Major class: Peripheral (mouse, joystick, keyboards)

          Minor class: 0x02

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                               #68 [hci0] 602.561773

      L2CAP: Connection Response (0x03) ident 2 len 8

        Destination CID: 64

        Source CID: 108

        Result: Connection pending (0x0001)

        Status: No further information available (0x0000)

< ACL Data TX: Handle 1 flags 0x02 dlen 10                                                                                                                                                                               #69 [hci0] 602.561780

      L2CAP: Information Request (0x0a) ident 2 len 2

        Type: Extended features supported (0x0002)

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                                #70 [hci0] 602.564603

      Remote Name Request (0x01|0x0019) ncmd 1

        Status: Success (0x00)

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #71 [hci0] 602.566648

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #72 [hci0] 602.569648

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #73 [hci0] 602.571619

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                               #74 [hci0] 602.572606

      L2CAP: Information Response (0x0b) ident 1 len 8

        Type: Extended features supported (0x0002)

        Result: Success (0x0000)

        Features: 0x00000000

> HCI Event: Remote Name Req Complete (0x07) plen 255                                                                                                                                                                    #75 [hci0] 602.594615

        Status: Success (0x00)

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Name: PLAYSTATION(R)3 Controller

> ACL Data RX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                               #76 [hci0] 602.596612

      L2CAP: Information Response (0x0b) ident 2 len 8

        Type: Extended features supported (0x0002)

        Result: Success (0x0000)

        Features: 0x00000000

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                               #77 [hci0] 602.596705

      L2CAP: Connection Response (0x03) ident 2 len 8

        Destination CID: 64

        Source CID: 108

        Result: Connection successful (0x0000)

        Status: No further information available (0x0000)

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #78 [hci0] 602.596718

      L2CAP: Configure Request (0x04) ident 3 len 4

        Destination CID: 108

        Flags: 0x0000

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #79 [hci0] 602.601608

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #80 [hci0] 602.603602

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #81 [hci0] 602.608604

      L2CAP: Configure Request (0x04) ident 3 len 4

        Destination CID: 64

        Flags: 0x0000

< ACL Data TX: Handle 1 flags 0x02 dlen 18                                                                                                                                                                               #82 [hci0] 602.608706

      L2CAP: Configure Response (0x05) ident 3 len 10

        Source CID: 108

        Flags: 0x0000

        Result: Success (0x0000)

        Option: Maximum Transmission Unit (0x01) [mandatory]

          MTU: 672

> ACL Data RX: Handle 1 flags 0x02 dlen 14                                                                                                                                                                               #83 [hci0] 602.612608

      L2CAP: Configure Response (0x05) ident 3 len 6

        Source CID: 64

        Flags: 0x0000

        Result: Success (0x0000)

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #84 [hci0] 602.613610

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #85 [hci0] 602.647659

      L2CAP: Connection Request (0x02) ident 4 len 4

        PSM: 19 (0x0013)

        Source CID: 109

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                               #86 [hci0] 602.647782

      L2CAP: Connection Response (0x03) ident 4 len 8

        Destination CID: 65

        Source CID: 109

        Result: Connection pending (0x0001)

        Status: Authorization pending (0x0002)

< ACL Data TX: Handle 1 flags 0x02 dlen 16                                                                                                                                                                               #87 [hci0] 602.647950

      L2CAP: Connection Response (0x03) ident 4 len 8

        Destination CID: 65

        Source CID: 109

        Result: Connection successful (0x0000)

        Status: No further information available (0x0000)

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #88 [hci0] 602.647962

      L2CAP: Configure Request (0x04) ident 4 len 4

        Destination CID: 109

        Flags: 0x0000

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #89 [hci0] 602.651616

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #90 [hci0] 602.653613

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #91 [hci0] 602.654611

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 36                                                                                                                                                                               #92 [hci0] 602.660652

      L2CAP: Configure Request (0x04) ident 5 len 28

        Destination CID: 65

        Flags: 0x0000

        Option: Quality of Service (0x03) [mandatory]

          Flags: 0x00

          Service type: Guaranteed (0x02)

          Token rate: 0x00000000

          Token bucket size: 0x00000000

          Peak bandwidth: 0x00000000

          Latency: 0x00002bf2

          Delay variation: 0xffffffff

< ACL Data TX: Handle 1 flags 0x02 dlen 18                                                                                                                                                                               #93 [hci0] 602.660687

      L2CAP: Configure Response (0x05) ident 5 len 10

        Source CID: 109

        Flags: 0x0000

        Result: Success (0x0000)

        Option: Maximum Transmission Unit (0x01) [mandatory]

          MTU: 672

> ACL Data RX: Handle 1 flags 0x02 dlen 14                                                                                                                                                                               #94 [hci0] 602.664650

      L2CAP: Configure Response (0x05) ident 4 len 6

        Source CID: 65

        Flags: 0x0000

        Result: Success (0x0000)

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #95 [hci0] 602.665602

        Num handles: 1

        Handle: 1

        Count: 1

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #96 [hci0] 602.666496

      L2CAP: Disconnection Request (0x06) ident 5 len 4

        Destination CID: 108

        Source CID: 64

< ACL Data TX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                               #97 [hci0] 602.666518

      L2CAP: Disconnection Request (0x06) ident 6 len 4

        Destination CID: 109

        Source CID: 65

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #98 [hci0] 602.670649

        Num handles: 1

        Handle: 1

        Count: 1

> HCI Event: Number of Completed Packets (0x13) plen 5                                                                                                                                                                   #99 [hci0] 602.671611

        Num handles: 1

        Handle: 1

        Count: 1

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                              #100 [hci0] 602.710651

      L2CAP: Disconnection Response (0x07) ident 5 len 4

        Destination CID: 108

        Source CID: 64

> ACL Data RX: Handle 1 flags 0x02 dlen 12                                                                                                                                                                              #101 [hci0] 602.735657

      L2CAP: Disconnection Response (0x07) ident 6 len 4

        Destination CID: 109

        Source CID: 65

@ MGMT Command: Pair Device (0x0019) plen 8                                                                                                                                                                         {0x0001} [hci0] 603.257918

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Capability: KeyboardDisplay (0x04)

< HCI Command: Authentication Requested (0x01|0x0011) plen 2                                                                                                                                                            #102 [hci0] 603.257958

        Handle: 1

> HCI Event: Command Status (0x0f) plen 4                                                                                                                                                                               #103 [hci0] 603.260651

      Authentication Requested (0x01|0x0011) ncmd 1

        Status: Success (0x00)

> HCI Event: Link Key Request (0x17) plen 6                                                                                                                                                                             #104 [hci0] 603.261651

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

< HCI Command: Link Key Request Negative Reply (0x01|0x000c) plen 6                                                                                                                                                     #105 [hci0] 603.261756

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

> HCI Event: Command Complete (0x0e) plen 10                                                                                                                                                                            #106 [hci0] 603.264651

      Link Key Request Negative Reply (0x01|0x000c) ncmd 1

        Status: Success (0x00)

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

> HCI Event: PIN Code Request (0x16) plen 6                                                                                                                                                                             #107 [hci0] 603.265616

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

@ MGMT Event: PIN Code Request (0x000e) plen 8                                                                                                                                                                      {0x0002} [hci0] 603.265699

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Secure PIN: 0x00

@ MGMT Event: PIN Code Request (0x000e) plen 8                                                                                                                                                                      {0x0001} [hci0] 603.265699

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Secure PIN: 0x00

@ MGMT Command: PIN Code Reply (0x0016) plen 24                                                                                                                                                                     {0x0001} [hci0] 607.441742

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        PIN length: 4

        PIN code: 30303030000000000000000000000000

< HCI Command: PIN Code Request Reply (0x01|0x000d) plen 23                                                                                                                                                             #108 [hci0] 607.441769

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        PIN length: 4

        PIN code: 0000

> HCI Event: Command Complete (0x0e) plen 10                                                                                                                                                                            #109 [hci0] 607.444668

      PIN Code Request Reply (0x01|0x000d) ncmd 1

        Status: Success (0x00)

        Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

@ MGMT Event: Command Complete (0x0001) plen 10                                                                                                                                                                     {0x0001} [hci0] 607.444701

      PIN Code Reply (0x0016) plen 7

        Status: Success (0x00)

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

> HCI Event: Disconnect Complete (0x05) plen 4                                                                                                                                                                          #110 [hci0] 632.865718

        Status: Success (0x00)

        Handle: 1

        Reason: Remote User Terminated Connection (0x13)

@ MGMT Event: Device Disconnected (0x000c) plen 8                                                                                                                                                                   {0x0002} [hci0] 632.865804

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Reason: Connection terminated by remote host (0x03)

@ MGMT Event: Device Disconnected (0x000c) plen 8                                                                                                                                                                   {0x0001} [hci0] 632.865804

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

        Reason: Connection terminated by remote host (0x03)

@ MGMT Event: Command Complete (0x0001) plen 10                                                                                                                                                                     {0x0001} [hci0] 632.874186

      Pair Device (0x0019) plen 7

        Status: Disconnected (0x0e)

        BR/EDR Address: 04:98:F3:C4:D0:EE (ALPS ELECTRIC CO.,LTD.)

----------

## BT

I tested my DualShock 3 and it worked without any issues. One thing that changed was the service authorization request. It now takes places immediately after the DualShock 3 is connected via USB. Previously it was after the DualShock 3 was disconnected from USB. I have updated the Wiki instructions to reflect the new process.

With regards to pairing, the DualShock 3 doesn't require a PIN and bluetoothctl should report 'Paired: no'. Pairing is done automatically over USB by the sixaxis plugin (/usr/lib64/bluetooth/plugins/sixaxis.so) which is provided by BlueZ. Just ensure that you have Bluetooth correctly configured and the required kernel options set.

----------

## Kossa

It had to be something wrong with my kernel configuration because when I compile kernel with default config controller paired without problem

----------

## R0x0r

Hi

I have the exact same problem as Kossa (when I press the playstation button the message "Connected : yes" is displayed and a few second after "Connected : no") :

```
Agent registered

[CHG] Controller 00:1A:7D:DA:71:11 Pairable: yes

[bluetooth]# agent on

Agent is already registered

[bluetooth]# default-agent

Default agent request successful

[bluetooth]# power on

Changing power on succeeded

[bluetooth]# discoverable on

Changing discoverable on succeeded

[CHG] Controller 00:1A:7D:DA:71:11 Discoverable: yes

[bluetooth]# pairable on

Changing pairable on succeeded

[CHG] Device 33:22:28:00:CF:07 Trusted: no

Authorize service

[agent] Authorize service 00001124-0000-1000-8000-00805f9b34fb (yes/no): yes

[CHG] Device 33:22:28:00:CF:07 Trusted: yes

[CHG] Device 33:22:28:00:CF:07 UUIDs: 00001124-0000-1000-8000-00805f9b34fb

[bluetooth]# trust 33:22:28:00:CF:07

Changing 33:22:28:00:CF:07 trust succeeded

[CHG] Device 33:22:28:00:CF:07 Connected: yes

[CHG] Device 33:22:28:00:CF:07 ServicesResolved: no

[CHG] Device 33:22:28:00:CF:07 Connected: no

[CHG] Device 33:22:28:00:CF:07 Connected: yes

[CHG] Device 33:22:28:00:CF:07 Connected: no

[bluetooth]#

```

I have bluez 5.54 and my kernel is 5.4 .

I have set all the kernel options specified in bluetooth wiki and Sony DualShock wiki.

Is there any kernel option missing ?

Default kernel configuration does not include bluetooth drivers so Kossa's solution does not work for me.

----------

## R0x0r

After days of debugging I found that the problem is probably my dongle :

```
# lsusb

Bus 001 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
```

The Sony driver seems to work only with HID mode,

so I tried the following command to put it on HID mode :

```
/lib/udev/hid2hci --mode=hid --method=csr --devpath=/devices/pci0000\:00/0000\:00\:14.0/usb1/1-13/1-13\:1.0

Control transfer failed: Broken pipe (32)

error: switching device '/sys//devices/pci0000:00/0000:00:14.0/usb1/1-13/1-13:1.0' failed.
```

But unfortunately it didn't work. I found that udev has a rule (/lib/udev/rules.d/97-hid2hci.rules) that switch automatically some devices to HCI mode,

but my device does not match the rules. So my dongle is in HCI mode by default and seems to not handle HID mode, or maybe my hid2hci command is wrong ?

By enabling kernel debug messages I think I understand why my controller disconnect shortly after connecting.

After the bluetooth connection is established I have :

```

[   73.488561] [1019] debugfs: debugfs: creating file '71'

[   73.488572] [1019] bluetooth: conn 0000000084254315

[   73.488579] [1019] core: device: 'hci0:71': device_add

[   73.488584] [1019] kobject: kobject: 'hci0:71' (00000000f70ce9e3): kobject_add_internal: parent: 'hci0', set: 'devices'

[   73.488626] [1019] main: PM: Adding info for No Bus:hci0:71

[   73.488630] [1019]  [1019] kobject_uevent: kobject: 'hci0:71' (00000000f70ce9e3): kobject_uevent_env

[   73.488637] [1019] kobject: kobject: 'hci0:71' (00000000f70ce9e3): fill_kobj_path: path = '/devices/pci0000:00/0000:00:14.0/usb1/1-13/1-13:1.0/bluetooth/hci0/hci0:71'
```

A hci0:71 interface is created but after that no other driver handle this new interface (probably because sony driver expect a HID interface).

Then the controller close the connection (connection reset by peer 104)

```
[   74.409470] <intr> xhci_hcd: xhci_hcd 0000:00:14.0: ep 0x81 - asked for 16 bytes, 10 bytes untransferred

[   74.409478] <intr> btusb: hci0 urb 000000003793cba0 status 0 count 6

[   74.409536] [1691] bluetooth: hci0

[   74.409540] [1691] bluetooth: hci0 Event packet

[   74.409543] [1691] bluetooth: hci0 status 0x00

[   74.409549] [1691] bluetooth: channel 3 len 14

[   74.409560] [1691] bluetooth: channel 2 len 20

[   74.409569] [1691] bluetooth: hcon 0000000084254315 reason 19

[   74.409572] [1691] bluetooth: hcon 0000000084254315 conn 000000004f8bd33b, err 104
```

I suppose it's because the controller expect some information from the sony driver and did not get them so it reset the connection.

In conclusion, to make this work, I have to put my dongle in HID mode, but all attempt failed (with hid2hci and testing kernel options).

Maybe I do it wrong because I tried with an other bluetooth card from a laptop and I have the same problem (HCI mode by default, can't switch mode).

Or switching mode is really impossible and the only option is to rewrite the sony driver to make it work with HCI mode.

I never write a linux driver before but I'd like to, and before I try to do such a big task maybe someone can confirm my suppositions to be sure there is no other solutions.

----------

## R0x0r

No need to write a driver for this, in the bluetooth driver there is a protocol L2CAP which link HCI to HIDP (to create HID device).

The problem is not my dongle but my controller !!

After analyzing an bugging my kernel I have found that my controller does not respect the L2CAP standards and the connection failed.

I modified my kernel (very dirty!) to finally make my controller connect and send inputs, but the kernel does not interpret those inputs.

I think there is some missing L2CAP packet exchange between my controller and the kernel.

Can somebody with working sixaxis controller on bluetooth can make a dump of the bluetooth connection with wireshark (or other) and send me the .pcap?

----------

## R0x0r

I final made my controller fully connect by writing this module.

Leds are blinking indefinitely and the force feedback doesn't work but I can finally play without a cable !

My controller is not an official one (Under Control Dualshock3) and I don't really know what information it expect to receive so

it's very hard to make it fully work. The best solution to get those information would be to dump the connection between this

controller and an official PS3 console (But I don't have one). 

I hope all of this will be useful to someone !

----------

