We have moved to a new Sailfish OS Forum. Please start new discussions there.
15

Bluetooth pairing between car and Jolla 1 (and between car & Xperia X) fails

asked 2017-10-03 20:30:22 +0300

Heikki gravatar image

updated 2020-07-14 09:18:30 +0300

My car is Volvo S80 MY 2007. When I try to pair my car's integrated phone with Jolla 1 (2.1.1.26), it happens that car finds my J1, but right after car's display is asking me to enter 4 digit code in phone, error occurs and bluetooth pairing is cancelled. My 2nd phone Samsung Galaxy J5 is working fine with my car.

Edit: 15.10.2017, problem still exists with version 2.1.2.3 Kiiminkijoki

Edit: 21.10.2017: was working in Sony Xperia X while phone was running Android, but is no longer working after changing OS to SailfishX 2.1.3.5 Kymijoki

Edit: 9.12.2017: problem still exists with version 2.1.3.7

Edit: 7.3.2018: problem still exists with version 2.1.4.14

Edit: 15.6.2018: problem still exists with version 2.2.0.29

Edit: 11.10.2018: problem still exists with version 2.2.1.18

Edit: 15.12.2018: problem still exists with version 3.0.0.8

Edit: 21.2.2019: problem still exists with version 3.0.1.11

Edit: 15.7.2019: problem still exists with version 3.0.3.10

Edit: 26.7.2019: problem still exists with version 3.1.0.11

Edit: 17.11.2019: problem still exists with version 3.2.0.12

Edit: 14.7.2020: problem still exists with version 3.3.0.16

edit retag flag offensive close delete

Comments

Hi, has this issue started after updating to 2.1.1.26? Did pairing work ok with the previous OS version? Which version was that?

Do you start the pairing process at the car console? You wrote that the car console is requesting you to enter a 4-digit code on the phone - is Jolla displaying the dialog for entering the code? I mean, usually each device should prompt for a code on the device itself. In the modern BT implementations there is no need to enter any code but simply compare that each device is showing the same code and then accept the codes.

Have you tried starting it on Jolla, seeking for the car?

jovirkku ( 2017-10-03 22:36:09 +0300 )edit

Problem did exist with previous version 2.1.0 as well. I bought car recently, so I haven't been able to test with older Sailfish versions than 2.1.0.

I did start pairing from car console as instructed in user manual in step when connecting phone for the first time. Please see following; http://new.volvocars.com/ownersdocs/2007/2007_S80/07S80_04b.htm#pg162

Jolla did not show any dialog for entering code, when car console was asking it.

Heikki ( 2017-10-04 16:54:50 +0300 )edit

Ive also reported this ... it worked in 2.0, stopped working in 2.1 for me on Jolla C. There are also other problems, like when it does get paired, no phonebook is transferred (tho, i havnt tested this in so long as I cant actually get it to pair!) (this is with a parrot CK3100...requiring a pin to be entered, there is no prompt for the pin on the jolla)

pigg ( 2017-10-21 18:15:51 +0300 )edit
1

Hello,

did you try to pair via command line as described here: Pairing the Bluetooth?

This was written for Sailfish OS on a Raspberry Pi but did work on my Jolla 1, too (where the standard pairing dialog was auto-closed within less than a second making it impossible for me to enter the pin).

Greetings

nop ( 2017-10-22 16:26:01 +0300 )edit

@jovirkku : In my experience, some device doesn't seem to agree which style to trigger, either old style (type a 4 digit PIN) or new style (compare two 5-digit random numbers).

The firmware on Volvo, the UE Boom speakers, some buggy implementation of Android Lollipop and the Sailfish X on Xperia X seem to be among implementations suffering with this problem.

If you have such devices on both ends of a pairing, it's gonna be difficult.

Usually falling back to manual commands on the command line seem to circumvent the problem.

(If command line is possible. On Sailfish, it's trivial. On non-unlocked/non-rooted Android smartphones, it's a bit more hairy)

DrYak ( 2017-12-10 00:54:49 +0300 )edit

8 Answers

Sort by » oldest newest most voted
0

answered 2019-07-28 11:29:43 +0300

ds1979 gravatar image

Hello Heikki,

in one of my the comments, I have asked you to check, whether your car communicates through HPF or through rSAP (remote SIM access profile). The rSAP profile is a development of Nokia and it did not succeed in the market.

If you have the rSAP profile in your car, no Sailfish OS powered phone will work, unfortunately.

I hope that this is not the case, but one of the possibilities, why you can not connect.

Cheers, Dejan

edit flag offensive delete publish link more

Comments

@ds1979 unfortunately I have no idea how to check whether it's HPF or rSAP.

Heikki ( 2019-10-30 20:48:28 +0300 )edit

Scan with hcitool to get the BT adress

hcitool scan

Then use sdpbrowse to get a list of service profiles

sdptool browse <BT adress>
deloptes ( 2019-11-17 21:02:07 +0300 )edit
1

answered 2019-02-21 12:05:52 +0300

SagaciousT gravatar image

updated 2019-10-30 15:22:55 +0300

I just paired my XA2 to my 2013 Volvo by enabling Blutooth visibility on the car and searching it in the phone. The car will ask for a PIN, but Sailfish does not display one. Just enter 0000. Usual pairing the other way round was not possible. By the way, it works much better with the XA2 than the Xperia X. Only flaw is that volume needs to be turned to nearly maximum to be able to hear the caller.

Update: I can confirm that auto-pairing works now with 3.2.0

edit flag offensive delete publish link more

Comments

Where did you enter the pin GUI- command line? I am interested in this type of pairing and I am thinking of buying XA2.

About the volume you may need to look in what pulseaudio is doing. I can not find at the moment, but there was a thread how to route the output of PA (speaker vs. headphones or line out). It might be similar to headphones and line out - thus you could change the setting in PA on the command line.

deloptes ( 2019-02-23 12:06:37 +0300 )edit

I've entered the PIN in the car audio system. A dialog will be displayed that requests a PIN, but the XA will not show a PIN. However, 0000 is the correct PIN.

By the way, I've paired an XPERIA X with a 2008 Audi A4 this weekend with this method successfully.

The note regardng PA is interesting. I'll keep it in mind.

SagaciousT ( 2019-02-26 14:20:13 +0300 )edit

Same method as described by SagaciousT today for a XA2 and a citroën C4 with bluetoothctl.

legranblon ( 2019-05-18 14:01:09 +0300 )edit

Worked for me also XA2 and Volvo V60. In Volvo: 1) Go to "Paired phones" menu 2) Press "exit" button on steering wheel, to display "phone menu" 3) Select "Phone settings" and "Discoverable", this makes car discoverable for 3 minutes In Sony Xperia XA2: 4) Search for Bluetooth devices, you should find "My Volvo Car" 5) Volvo asks for keypair, choose 0000 (others might work?) 6) Press the same keypair in the Jolla (might not be necessary?)

ssheikki ( 2019-09-22 15:23:47 +0300 )edit
0

answered 2018-03-10 15:00:53 +0300

deloptes gravatar image

There is problem with HFT (HFP) in Sailfish X and it does not work with older cars (I guess BT <= 2.0), while older version of Sailfish (Intex AquaFish) was shipped with bluez4 and same car (2007 model) worked fine.

Some patches were introduced and I was at least able to pair with cmd line bluetoothctl (I used PIN other than 0000), but still HFT is not working with this car. With newer car it works perfect.

I was waiting for the 2.1.4 release to investigate further and probably find a solution. This is a big no-go for me ATM, so that I can not use the phone as desired.

Some more explanations:

In bluez5 a lot of things were moved out to other applications like pulseaudio (A2DP) and ofono (HFP), so at the end those 3 must match together to get it working, but I am even not sure if bluez5 works with BT <= 2.0 on those older cars. To test this I must probably try connecting my notebook with the car

Regarding pulseaudio there is another thread here and it was mentioned someone was able to build pulseaudio 11.1. I was told for building this for Sailfish X I would need additional files and this is where I am now.

My plan is to get latest PA 11.1, latest ofono and latest BT stack and test, so that at least debugging makes sense for developers. The only problem is time, I do not have.

regards

edit flag offensive delete publish link more
1

answered 2018-02-07 21:52:10 +0300

DarkTuring gravatar image

Cannot pair with car where pairing code is different from 0000.

Pairing Chrysler 300

edit flag offensive delete publish link more

Comments

Hi, I have the same issue with my cars handsfree. I think the main reason is that it's using the old style bluetooth connection and there is no GUI yet to enter a different pin than 0000 in SailfishOS.

Mat2ch ( 2018-03-07 19:37:19 +0300 )edit

I managed to pair with bluetoothctl from the terminal. Indeed it is because of the pairing method

deloptes ( 2018-03-10 21:00:35 +0300 )edit

I sometimes get that too, but then I have already connected the phone and I can hear whatever I'm listening. I just have to disconnect the autopaired connection and connect again. I get then that message sometimes but the audio is just fine.

Nrde ( 2018-12-15 16:15:23 +0300 )edit
1

answered 2017-12-11 11:57:31 +0300

Mat2ch gravatar image

Hi,

I have a similar problem with my in-car handsfree and my Xperia device (Build 2.1.3.7).

The first time I connected it to my car, I got asked by the cars infotainment system for a pin to enter. There seems to be the dialog missing in SailfishOS but 0000 worked. After that the device was connected as audio and handsfree. Even accessing the addressbook worked. But there was one problem: Only numbers were displayed, not the names (which is obviously not very useful. I have voice command control in the car and usually dial my contacts with it, so I don't have to take the fingers of the wheel).

I added and deleted some contacts then, but the list that got send to the car wasn't updated. I did some reading and I hope I understood correctly: There's somewhere a process that creates the contacts list for obexd to send. There seems to be an error in there.

Next problem: I tried to remove the bluetooth connection and add it again on both sides to see, if the contacts list gets updated. Now I have the problem that my car doesn't recognize my Xperia as handsfree capable anymore. SailfishX doesn't even automatically connect to the car anymore.

Since I'm not new to bluez, I did some testing with hcitool and bluetoothctl. I played around with default-agent on (which asks me to enter a pin then on the terminal, which worked like a charme to connect to my car), but I couldn't get the handsfree support working again. Or the autoconnect.

So I'm stuck here. I hope you can give me some advice. I'm able to test things on the shell, so go and throw commands at me.

edit flag offensive delete publish link more

Comments

After the update to 2.1.4.14 my cars handsfree and Sailfish X work together. I still have weird problems with the addressbook, but so far it's usable.

Mat2ch ( 2018-03-07 18:03:47 +0300 )edit
5

answered 2017-12-10 11:16:14 +0300

pigg gravatar image

If the car requires a PIN, then it is using legacy pairing from BT <= 2.0. If you are using bluez5 (which you would have actively had to change to on a Jolla 1 i think), then it comes with an autopair plugin, but only tries the code 0000, so if the code is something other than that, then the pairing will fail (i have this on my parrot ck3100).

The solution for me is to disable the autopair plugin. This involves editing /usr/lib/systemd/system/bluethoothd.service and adding the parameter "-P autopair" and rebooting.

If you dont want to edit the file, you can override it by copying it to /etc/systemd/system, and doing the mod there.

edit flag offensive delete publish link more
5

answered 2017-12-09 21:38:32 +0300

DrYak gravatar image

updated 2019-03-29 14:40:48 +0300

Update: 2019-03-29 version 3.0.2 - as mentionned in other posts, the hcitool and bluetoothctl CLI utils are now in a package which is not installed by default.

You need to first:

devel-su
pkcon install bluez5-tools

(Or use zypper install bluez5-tools if you prefer)

Update: 2019-02-15: version 3.0.1.11 - some parings (Logitech UE 9000 noise-cancelling headset) that used to require fall-back to command line in the past now work as-is in the GUI. Also hcitool command is still available as part of bluez55 package installed by default.


Had a similar problem (car is Volvo S60 2011, phone is Sony Xperia X with Sailfish X 2.1.3.7).

Looks like a problem on the Volvo's Infotainment OS. (According to our garage, it is known to have bluetooth problem. The first couple of year, if music was playing over bluetooth, the rest of bt functionnality would go south. Or vice-versa: very to get bluetooth audio working reliably when a smartphone is paired to the car's phone functionnality. A later firmware update from Volvo did at least fix these bluetooth conflicts)

Combine it with the "still beta, not yet officially stable" status of Bluetooth with Sailfish X on Xperia X, and you're in for a tough ride.

In this case, for some reason the Volvo is unable to trigger Sailfish OS's input for a BlueTooth PIN.


Partial solution :

When using the command line interface on the smartphone (e.g.: using FingerTerm, or using SSH over USB cable from a laptop), coupling seems to work a bit better. (Will use code check, instead of PIN input).

Put the car's bluetooth in discoverable mode (it's in the "phone" pane, settings menu).

On the smartphone's command line:

# get root:
devel-su

# scan for devices
hcitool scan

# you'll see the name of nearby devices in discoverable mode and corresponding MAC addresses. Note the address of your car.

# open a connection to your car.
hcitool cc 00:06:F7:B2:A0:2E

# authentify the connection with a password
hcitool auth 00:06:F7:B2:A0:2E

The last one will trigger the car and your phone to check each-others security. (Some message Is the other device also displaying 26785 ? will display both on a pop up on the car's interface, and as a full-screen alert on the smartphone screen).

The device are now correctly paired. (Though due to bug on the Sailfish X side, at that point I need to reboot the Xperia X for the auto-connect to work reliably)

It's not optimal (require manual typing of commands), but it works reliably (device then correctly appears in the list of paired device in Sailfish X, and correctly connects)


Alternative commands :

If using the more modern bluetoothctl interface trying to do the same work-around as above :

# enter the tool
bluetoothctl

# find the device:
scan on
# a list with all the visible devices will start to scroll

# look at a device (to check if that really the one you're looking for) :
info 00:0D:44:D0:AE:B4

# par it
pair 00:0D:44:D0:AE:B4

# optionnally mark it trusted (i.e.: allow automatic connections) :
trust 00:0D:44:D0:AE:B4

# test: try connecting to
connect 00:0D:44:D0:AE:B4

quit
edit flag offensive delete publish link more

Comments

Bluetooth unit in Volvo is in hidden mode, so hcitool commands do not help in my case as it can't find any device.

Heikki ( 2017-12-25 18:01:41 +0300 )edit
1

select "phone" tool, push "menu" button, select "phone settings", turn bluetooth visibility on.

(Surprisingly, bluetooth visibility isn't controlled in the pairing menu as in most device, but under a separate "settings of the phone" menu).

DrYak ( 2017-12-25 22:59:50 +0300 )edit

Thanks for the answer DrYak, but that didn't help as I couldn't find bluetooth visibility menu option which you are referring to. Under Phone menu, there is Bluetooth submenu, but it contains only option "Connect phone" which contains only "Add phone"

http://new.volvocars.com/ownersdocs/2007/2007_S80/07S80_04.htm#pg115

Heikki ( 2017-12-26 20:25:50 +0300 )edit

This usually makes the device visible. At least in my BMW system it does that. (Technically spoken: This option should make it visible, because otherwise any phone could never find your cars handsfree otherwise)

Mat2ch ( 2017-12-26 20:35:10 +0300 )edit

Those hci commands are not for Sailfish X - in Sailfish X you have bluez5 and all of this is done via bluetoothctl. However there is problem with HFT (HFP) in Sailfish X and it does not work with older cars (I guess BT <= 2.0), while older version of Sailfish (Intex AquaFish) was shipped with bluez4 and same car works fine. Some patches were introduced. Some patches were introduced

deloptes ( 2018-03-10 14:47:55 +0300 )edit
1

answered 2017-10-03 22:09:48 +0300

SaimenSays gravatar image

I know it is not a solution, but have a look at "kown issues" in release notes. Hopefully they fix it in next release for you, I'm waiting since years for RSAP support to get my car connected, but never got heared...

edit flag offensive delete publish link more
Login/Signup to Answer

Question tools

Follow
15 followers

Stats

Asked: 2017-10-03 20:30:22 +0300

Seen: 4,879 times

Last updated: Jul 19 '20