You are not logged in.

#1 2013-09-29 20:42:29

gmacon
Member
Registered: 2010-10-04
Posts: 5

MacBookPro1,1 (Mid 2006) Bluetooth not working

I recently installed Arch on an old MacBook Pro (v1,1) from 2006, and I'm having problems getting bluetooth to work.  I'm using bluez4 because I'm using gnome-shell.

hciconfig produces no output.

lsusb shows the device in HID mode,

$ lsusb
Bus 001 Device 003: ID 05ac:8501 Apple, Inc. Built-in iSight [Micron]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 05ac:1000 Apple, Inc. Bluetooth HCI MacBookPro (HID mode)
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 05ac:8240 Apple, Inc. Built-in IR Receiver
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 05ac:0217 Apple, Inc. Internal Keyboard/Trackpad (ANSI)
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

so I tried running hid2hci (as suggested by the Bluetooth wiki page) with the path determined as described in this post.

# /lib/udev/hid2hci --devpath devices/pci0000:00/0000:00:1d.3/usb5/5-1 --method csr         
Can't open device: No such file or directory (2)
error: unable to handle '/sys/devices/pci0000:00/0000:00:1d.3/usb5/5-1'
$ stat /sys/devices/pci0000:00/0000:00:1d.3/usb5/5-1
  File: '/sys/devices/pci0000:00/0000:00:1d.3/usb5/5-1'
  Size: 0         	Blocks: 0          IO Block: 4096   directory
Device: dh/13d	Inode: 12166       Links: 6
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2013-09-29 16:07:26.268170146 -0400
Modify: 2013-09-29 15:39:37.720357106 -0400
Change: 2013-09-29 15:39:37.720357106 -0400
 Birth: -

Any ideas?

$ uname -a
Linux hydrogen 3.11.2-1-ARCH #1 SMP PREEMPT Fri Sep 27 08:03:21 CEST 2013 i686 GNU/Linux
$ lsmod
Module                  Size  Used by
fuse                   65847  3 
bnep                    8922  2 
bluetooth             271173  7 bnep
hid_appleir             2264  0 
hid_generic              749  0 
hid_apple               4205  0 
uvcvideo               63684  0 
videobuf2_vmalloc       2604  1 uvcvideo
videobuf2_memops        1683  1 videobuf2_vmalloc
videobuf2_core         24341  1 uvcvideo
usbhid                 36609  0 
lm63                   10557  0 
videodev               88107  2 uvcvideo,videobuf2_core
media                   9140  2 uvcvideo,videodev
hid                    70718  4 hid_generic,usbhid,hid_appleir,hid_apple
joydev                  7339  0 
iTCO_wdt                4471  0 
appletouch              8402  0 
iTCO_vendor_support     1545  1 iTCO_wdt
arc4                    1628  2 
evdev                   8208  13 
applesmc                9834  0 
coretemp                5278  0 
input_polldev           2142  1 applesmc
radeon               1117014  3 
kvm_intel             121535  0 
kvm                   321817  1 kvm_intel
ttm                    47394  1 radeon
drm_kms_helper         31934  1 radeon
microcode              10132  0 
drm                   191226  5 ttm,drm_kms_helper,radeon
ath5k                 125372  0 
pcspkr                  1487  0 
i2c_i801                9905  0 
acpi_cpufreq            9523  1 
i2c_algo_bit            4583  1 radeon
mperf                    991  1 acpi_cpufreq
ath                    12669  1 ath5k
of_i2c                  1774  1 i2c_i801
mac80211              389700  1 ath5k
lpc_ich                11460  0 
sky2                   43633  0 
tpm_infineon            7342  0 
intel_agp               8688  0 
intel_gtt              10172  1 intel_agp
agpgart                22047  4 drm,ttm,intel_agp,intel_gtt
cfg80211              336964  3 ath,ath5k,mac80211
rfkill                 12714  5 cfg80211,bluetooth
tpm                    13163  1 tpm_infineon
video                  10071  0 
processor              22169  3 acpi_cpufreq
i2c_core               19967  8 drm,lm63,i2c_i801,drm_kms_helper,i2c_algo_bit,of_i2c,radeon,videodev
apple_bl                2956  0 
tpm_bios                8381  1 tpm
snd_hda_codec_idt      32712  1 
snd_hda_intel          30903  3 
battery                 5589  0 
ac                      2668  0 
button                  3685  0 
snd_hda_codec         127562  2 snd_hda_codec_idt,snd_hda_intel
snd_hwdep               4746  1 snd_hda_codec
shpchp                 21973  0 
snd_pcm                63876  2 snd_hda_codec,snd_hda_intel
snd_page_alloc          5974  2 snd_pcm,snd_hda_intel
snd_timer              14942  1 snd_pcm
snd                    44566  12 snd_hwdep,snd_timer,snd_hda_codec_idt,snd_pcm,snd_hda_codec,snd_hda_intel
soundcore               4386  1 snd
ext4                  425604  2 
crc16                   1091  2 ext4,bluetooth
mbcache                 4290  1 ext4
jbd2                   70221  1 ext4
sd_mod                 28311  4 
sr_mod                 13055  0 
cdrom                  29900  1 sr_mod
ata_generic             2434  0 
pata_acpi               2367  0 
ata_piix               20856  4 
libata                149201  3 pata_acpi,ata_generic,ata_piix
scsi_mod              108590  3 libata,sd_mod,sr_mod
firewire_ohci          27462  0 
uhci_hcd               21416  0 
ehci_pci                3404  0 
ehci_hcd               42852  1 ehci_pci
firewire_core          44687  1 firewire_ohci
crc_itu_t               1095  1 firewire_core
usbcore               152779  6 uhci_hcd,uvcvideo,ehci_hcd,ehci_pci,usbhid,appletouch
usb_common              1399  1 usbcore

Offline

#2 2013-09-30 21:30:09

m2
Member
Registered: 2013-09-30
Posts: 4

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

hi, same here on a Mac Mini (mid 2007)  I've tested with bluez4 and bluez5.


[root@luke mau]# uname -a 
Linux luke 3.11.2-1-ARCH #1 SMP PREEMPT Fri Sep 27 07:35:36 CEST 2013 x86_64 GNU/Linux

[root@luke mau]# lsusb
Bus 005 Device 002: ID 05ac:1000 Apple, Inc. Bluetooth HCI MacBookPro (HID mode)
...

[root@luke mau]# hid2hci 
Can't open device: No such file or directory (2)

[root@luke mau]# hcitool dev 
Devices:

[root@luke mau]# hidd --show

Following this post https://bbs.archlinux.org/viewtopic.php?id=167210 I thought it might have something to do with the kernel? I tried to downgrade kernel from 3.11 to 3.10 an then to 3.9 without resolving the issue.

[root@luke mau]# uname -a 
Linux luke 3.9.7-1-ARCH #1 SMP PREEMPT Mon Sep 30 21:51:49 CEST 2013 x86_64 GNU/Linux

[root@luke mau]# lsusb
Bus 004 Device 002: ID 05ac:1000 Apple, Inc. Bluetooth HCI MacBookPro (HID mode)
...

[root@luke mau]#  /lib/udev/hid2hci --devpath devices/pci0000:00/0000:00:1d.3/usb5/5-1 --method csr   
error: could not find 'devices/pci0000:00/0000:00:1d.3/usb5/5-1

Here what dmesg tells me about  bluetooth:

$ dmesg | grep bluetooth
[root@luke mau]# dmesg | grep Bluetooth
[   63.467549] Bluetooth: Core ver 2.16
[   63.467589] Bluetooth: HCI device and connection manager initialized
[   63.467605] Bluetooth: HCI socket layer initialized
[   63.467609] Bluetooth: L2CAP socket layer initialized
[   63.467617] Bluetooth: SCO socket layer initialized
[   63.583429] Bluetooth: RFCOMM TTY layer initialized
[   63.583449] Bluetooth: RFCOMM socket layer initialized
[   63.583451] Bluetooth: RFCOMM ver 1.11
[  107.627839] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[  107.627858] Bluetooth: HIDP socket layer initialized

Here my loaded kernel(3.9)modules

[root@luke mau]# lsmod
Module                  Size  Used by
hidp                   18002  0 
rfcomm                 51516  0 
bluetooth             304004  4 hidp,rfcomm
nfsv4                 219580  1 
nfsd                  266601  9 
auth_rpcgss            34243  2 nfsd,nfsv4
nfs_acl                 2615  1 nfsd
arc4                    2000  2 
ath5k                 135820  0 
ath                    15489  1 ath5k
mac80211              487694  1 ath5k
cfg80211              452268  3 ath,ath5k,mac80211
iTCO_wdt                5407  0 
iTCO_vendor_support     1929  1 iTCO_wdt
rfkill                 15626  3 cfg80211,bluetooth
i2c_i801               11269  0 
sky2                   49507  0 
applesmc               11918  0 
input_polldev           2850  1 applesmc
coretemp                6102  0 
snd_hda_codec_idt      37946  1 
shpchp                 25649  0 
kvm_intel             125437  0 
kvm                   390199  1 kvm_intel
microcode              13204  0 
snd_hda_intel          35816  0 
snd_hda_codec         145920  2 snd_hda_codec_idt,snd_hda_intel
snd_hwdep               6364  1 snd_hda_codec
snd_pcm                76860  2 snd_hda_codec,snd_hda_intel
snd_page_alloc          7362  2 snd_pcm,snd_hda_intel
pcspkr                  2027  0 
snd_timer              18687  1 snd_pcm
snd                    58893  6 snd_hwdep,snd_timer,snd_hda_codec_idt,snd_pcm,snd_hda_codec,snd_hda_intel
lpc_ich                12849  0 
pci_hotplug            22930  1 shpchp
soundcore               5418  1 snd
evdev                   9912  10 
nfs                   144455  2 nfsv4
lockd                  76709  2 nfs,nfsd
sunrpc                220758  30 nfs,nfsd,auth_rpcgss,lockd,nfsv4,nfs_acl
fscache                44638  2 nfs,nfsv4
acpi_cpufreq           10726  1 
mperf                   1299  1 acpi_cpufreq
processor              27555  3 acpi_cpufreq
ext4                  486052  6 
crc16                   1359  2 ext4,bluetooth
mbcache                 5930  1 ext4
jbd2                   85240  1 ext4
hid_generic             1153  0 
usbhid                 40956  0 
hid                    87539  3 hidp,hid_generic,usbhid
dm_mod                 72527  29 
sr_mod                 14930  0 
cdrom                  35072  1 sr_mod
sd_mod                 30858  3 
ata_generic             3370  0 
pata_acpi               3387  0 
ata_piix               24888  2 
firewire_ohci          31845  0 
libata                170033  3 pata_acpi,ata_generic,ata_piix
scsi_mod              129628  3 libata,sd_mod,sr_mod
firewire_core          52307  1 firewire_ohci
crc_itu_t               1363  1 firewire_core
ehci_pci                4120  0 
uhci_hcd               24627  0 
ehci_hcd               47407  1 ehci_pci
usbcore               177091  4 uhci_hcd,ehci_hcd,ehci_pci,usbhid
usb_common               954  1 usbcore
i915                  563542  4 
video                  11203  1 i915
button                  4669  1 i915
i2c_algo_bit            5391  1 i915
intel_agp              10872  1 i915
intel_gtt              12664  3 i915,intel_agp
drm_kms_helper         35086  1 i915
drm                   230013  5 i915,drm_kms_helper
i2c_core               22447  5 drm,i915,i2c_i801,drm_kms_helper,i2c_algo_bit

So its not the kernel module and installing bluez5 or bluez4 made no difference.

[root@luke mau]# pacman -Ss bluez | grep installed
extra/bluez-firmware 1.2-7 [installed]
extra/bluez-libs 5.9-1 [installed]
extra/bluez-utils 5.9-1 [installed]
extra/bluez4 4.101-3 [installed]

[root@luke udev]# sha1sum hid2hci 
09dbf30a30cd0f8a2ca46f6009e0cd979e745159  hid2hci

after installing bluez version 5

[root@luke udev]# pacman -Ss bluez | grep installed
extra/bluez 5.9-1 [installed]
extra/bluez-firmware 1.2-7 [installed]
extra/bluez-libs 5.9-1 [installed]
extra/bluez-utils 5.9-1 [installed]

[root@luke udev]# sha1sum hid2hci 
09dbf30a30cd0f8a2ca46f6009e0cd979e745159  hid2hci

Ha that's the same file! I am going to downgrade that next....

[root@luke pkg]# pacman -Qo /lib/udev/hid2hci
/lib/udev/hid2hci is owned by bluez-utils 5.9-1

[root@luke pkg]# find /var/cache/pacman/pkg -name 'bluez-*'
/var/cache/pacman/pkg/bluez-utils-5.7-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/bluez-5.9-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/bluez-libs-5.7-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/bluez-firmware-1.2-7-any.pkg.tar.xz
/var/cache/pacman/pkg/bluez-libs-5.9-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/bluez-utils-5.9-1-x86_64.pkg.tar.xz

[root@luke pkg]# sha1sum /lib/udev/hid2hci 
937659778fc90263e3e5d00baa01653273f1f5c8  /lib/udev/hid2hci
[root@luke pkg]#  /lib/udev/hid2hci --devpath devices/pci0000:00/0000:00:1d.3/usb5/5-1 --method csr   
error: could not find 'devices/pci0000:00/0000:00:1d.3/usb5/5-1'

[root@luke pkg]# pacman -U /var/cache/pacman/pkg/bluez-libs-5.7-1-x86_64.pkg.tar.xz 

[root@luke pkg]# systemctl daemon-reload
[root@luke pkg]# systemctl restart bluetooth
[root@luke pkg]#  /lib/udev/hid2hci --devpath devices/pci0000:00/0000:00:1d.3/usb5/5-1 --method csr   
error: could not find 'devices/pci0000:00/0000:00:1d.3/usb5/5-1'

So still no clues.... but I think it's related to hid2hci not able to switch mode, I would like to test with bluez-utils < 5.7 but don't have that package at hand, will try to boot from an older install CD just to be sure what the old behavior of hid2hci was and confirm that it should work.

Last edited by m2 (2013-09-30 21:36:59)

Offline

#3 2013-10-01 07:10:48

m2
Member
Registered: 2013-09-30
Posts: 4

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

On another  iMac (21.5-inch, Late 2009) bluetooth is working

[mau@dalia ~]$ pacman -Ss bluez | grep installed
extra/bluez-libs 5.9-1 [installed]
extra/bluez-utils 5.9-1 [installed]
extra/bluez4 4.101-3 [installed]

[mau@dalia ~]$ uname -a
Linux dalia 3.11.2-1-ARCH #1 SMP PREEMPT Fri Sep 27 07:35:36 CEST 2013 x86_64 GNU/Linux

[mau@dalia ~]$ sha1sum /lib/udev/hid2hci 
fa3d4c8529455ca4613215bc010ffb22cde4ad81  /lib/udev/hid2hci

[mau@dalia ~]$ lsusb 
Bus 004 Device 003: ID 05ac:8215 Apple, Inc. Built-in Bluetooth 2.0+EDR HCI
...

[mau@dalia ~]$ hcitool dev
Devices:
	hci0	00:26:4A:A4:81:E8

[mau@dalia ~]$ hidd --show
00:26:BB:79:C6:06 Mau’s Mouse [05ac:030d] connected 

So what is the difference between 05ac:8215 and 05ac:1000

Offline

#4 2013-10-05 18:11:27

m2
Member
Registered: 2013-09-30
Posts: 4

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

I installed a package from AUR that particular old package works.

https://aur.archlinux.org/packages/bluez-fedorap/

Offline

#5 2013-10-05 19:07:00

m2
Member
Registered: 2013-09-30
Posts: 4

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

downgrade bluez to version 4.99-6 also works and when I copy the hid2hci file from 4.99-6 to my installation of bluez5 that also works. The problems stems only from hid2hci.

Official old  archlinux package from ABS for bluez4.99-6 (without AUR and fedora patches) which works for me:
https://projects.archlinux.org/svntogit … 3a6.tar.gz

Offline

#6 2013-10-05 19:31:36

gmacon
Member
Registered: 2010-10-04
Posts: 5

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

I'll give that a try and let everyone know.

Offline

#7 2013-10-09 14:42:44

Knasher
Member
Registered: 2013-10-09
Posts: 12

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

Was going to write a patch for it, but I found one at http://permalink.gmane.org/gmane.linux. … rnel/38294 that fixed the issue when applied to the bluez git http://git.kernel.org/cgit/bluetooth/bluez.git/.

Still gives an error when running,

Control transfer failed: Invalid or incomplete multibyte or wide character (84)
error: switching device '/sys/devices/pci0000:00/0000:00:1a.0/usb3/3-1' failed.

Which I suspect is caused by hid2hci passing in a zero length to ioctl when using csr, but it works regardless.

Last edited by Knasher (2013-10-09 15:09:25)

Offline

#8 2013-10-11 22:10:37

gmacon
Member
Registered: 2010-10-04
Posts: 5

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

The patch fixed it for me when applied to bluez-5.9.tar.gz.  Hopefully that will get accepted upstream soon.

Thanks, everyone.

Offline

#9 2013-11-12 13:32:03

Knasher
Member
Registered: 2013-10-09
Posts: 12

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

The bug remains in 5.10, which was pushed last night, so you will need to be manually recompile it again.  However the patch to fix it has been accepted as of 8 days ago, so it will be part of 5.11.  So hopefully this will be the last time this is necessary.

Offline

#10 2015-01-07 07:10:33

bigla
Member
Registered: 2012-05-10
Posts: 2

Re: MacBookPro1,1 (Mid 2006) Bluetooth not working

Anyone resolved that problem yet?

Using Fedora i stumbled upon the following solution (from Stackoverflow):

(...) I edited /usr/lib/systemd/system/bluetooth.service and included the (--compat) flag in the ExecStart option.

ExecStart=/usr/libexec/bluetooth/bluetoothd --compat

Then

$ systemctl daemon-reload
$ systemctl restart bluetooth.service

HTH

Offline

Board footer

Powered by FluxBB