# Bluetooth phone modem + Networkmanager ? [solved with Hack]

## eccerr0r

I have a Nokia 5230 phone that I'm trying to use with bluetooth.

What does work:  I can use the 5230 through /dev/ttyACM0 (USB Modem) to get a GSM link - so I suspect my ppp drivers and NetworkManager + nm-applet is working for that 

What also works: After using blueman to associate and attach dial-up-networking to the phone, /dev/rfcomm0 shows up.  I can minicom /dev/rfcomm0 (as root only; as a user it doesn't let me override the lock on the device probably because networkmanager is trying to use the device???) and issue AT commands to the phone which appear to work fine.

What doesn't work: nm-applet/NetworkManager never shows the phone as a possible connection system like it does for /dev/ttyACM0.  I would think /dev/rfcomm0 and /dev/ttyACM0 would be very similar but different drivers - one is through USB, other is through bluetooth.

I recall this working in the past, but I don't recall if this was under Ubuntu that it worked...

Any ideas why my phone isn't showing up in nm-applet?

----------

## gerdesj

Your post has been languishing unanswered for a while so I'll have a go but I don't have direct experience of this ...

Have you enabled the modemmanager USE flag in networkmanager?

Cheers

Jon

----------

## eccerr0r

Unfortunately I think it is set; that's the weird part: USB works just fine, just not bluetooth...

Also unusual: networkmanager-0.8.4.0-r2 has these USE flags set (and modemmanager is not a USE flag)

-avahi +bluetooth +connection-sharing -dhclient +dhcpcd -doc -gnutls -nss +ppp -resolvconf

Modemmanager is indeed installed somewhere in the dependencies list...

----------

## gerdesj

 *eccerr0r wrote:*   

> Unfortunately I think it is set; that's the weird part: USB works just fine, just not bluetooth...
> 
> Also unusual: networkmanager-0.8.4.0-r2 has these USE flags set (and modemmanager is not a USE flag)
> 
> -avahi +bluetooth +connection-sharing -dhclient +dhcpcd -doc -gnutls -nss +ppp -resolvconf
> ...

 

Ahh, NM is under pretty heavy development. Can you update to the latest available in Portage (0.9.4.0-r2)?  That one does have the modemmanager USE flag.  I am running ~amd64.

Cheers

Jon

----------

## eccerr0r

Update:  I updated to networkmanager-0.9.4.0-r6 due to it becoming stable.  It still does not detect the bluetooth device.

I found

https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/583728

https://bbs.archlinux.org/viewtopic.php?id=147880

And seems that multiple linux are plagued by the same issue... Maybe even RH/Fedora?

Ahh some debug...

```
Aug 30 08:11:07 mikuru modem-manager: (tty/rfcomm0): could not get port's parent device

Aug 30 08:11:07 mikuru modem-manager: (rfcomm0) opening serial device...

Aug 30 08:11:07 mikuru modem-manager: (rfcomm0): probe requested by plugin 'Generic'

Aug 30 08:11:08 mikuru modem-manager: (rfcomm0) closing serial device...

Aug 30 08:11:08 mikuru modem-manager: (rfcomm0) opening serial device...

Aug 30 08:11:08 mikuru modem-manager: (Generic): GSM modem /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2 claimed port rfcomm0

Aug 30 08:11:08 mikuru modem-manager: Added modem /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2

Aug 30 08:11:08 mikuru modem-manager: (tty/rfcomm0): outstanding support task prevents export of /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2

Aug 30 08:11:08 mikuru modem-manager: (rfcomm0) closing serial device...

Aug 30 08:11:08 mikuru modem-manager: Exported modem /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2 as /org/freedesktop/ModemManager/Modems/0

Aug 30 08:11:08 mikuru modem-manager: (/org/freedesktop/ModemManager/Modems/0): data port is rfcomm0

Aug 30 08:11:08 mikuru NetworkManager[1937]: <info> ignoring modem 'rfcomm0' (no associated Bluetooth device)

```

Hmm...what?

I didn't like the patch to remove just the ! so I completely removed the Bluetooth "no associated bluetooth device" section as suggested in the Archlinux post.

I tried removing my phone from bluetooth-manager and re-added it.  It hung(!) when I tried to click on "allow dialup access".

IT WORKS!!!

Networkmanager sees my bluetooth modem and I can select it... and it dials out just fine!

As soon as I KILL the broken window, it kills the connection and I have to reboot, delete phone, and reinitiate the pairing again.

Ugh... a lot of the stuff should be there and working, just a few details here and there not setup right.  Anyone else seeing these issues?

So I tried Blueman and it seems to work!

SO... I find a neat feature of portage: since networkmanager-0.9.4.0-r6.ebuild supports epatch_user, I think all that's needed is to make a file:

/etc/portage/patches/net-misc/networkmanager/bluetoothhack.patch (note there's tabs in this so if you cut and paste it won't work, pm me for the file with correct whitespace)

```
--- src/nm-manager.c.orig   2012-08-30 08:32:27.845005846 -0600

+++ src/nm-manager.c   2012-08-30 08:32:54.603006046 -0600

@@ -409,10 +409,12 @@

     * it.  The rfcomm port (and thus the modem) gets created automatically

     * by the Bluetooth code during the connection process.

     */

+/*

    if (driver && !strcmp (driver, "bluetooth")) {

       nm_log_info (LOGD_MB, "ignoring modem '%s' (no associated Bluetooth device)", ip_iface);

       return;

    }

+*/

 

    /* Make the new modem device */

    device = nm_device_modem_new (modem, driver);

```

and then re-emerge ... voila!  IT WORKED!

HACK summary to get Bluetooth to work in Gnome+NetworkManager:

1. Use net-wireless/blueman not gnome-bluetooth-manager

2. Create the above patch file in the directory stated above

3. emerge -1 networkmanager (the patch is for 0.9.4.0)

4. Restart networkmanager

And YAY! Bluetooth modem works once more!

----------

