Fremantle Unsupported Bluetooth profiles
(Add some info about PBAP) |
m (→Example script) |
||
Line 10: | Line 10: | ||
sdptool add --channel 1 DUN | sdptool add --channel 1 DUN | ||
while true; do | while true; do | ||
- | rfcomm -S -- listen -1 1 /usr/bin/pnatd '{}' | + | rfcomm -S --listen -1 1 /usr/bin/pnatd '{}' |
sleep 1 | sleep 1 | ||
done | done |
Revision as of 16:02, 19 December 2009
There are several Bluetooth profiles officially missing/unsupported in Fremantle that are however supported by the upstream BlueZ project or can be made to work with some simple hacks.
Contents |
DUN server
There's a tool called pnatd (short for PhoNet AT Daemon) which can act as a proxy between the cellular modem PhoNet interface and a TTY device.
Example script
sdptool add --channel 1 DUN while true; do rfcomm -S --listen -1 1 /usr/bin/pnatd '{}' sleep 1 done
There is one known issue: Most likely due to a bug in the way that the Bluetooth and TTY subsystems in the kernel interact in this use case data can be lost if the DUN client starts immediately sending AT commands when the connection is created. This can e.g. be worked around by adding a 1 second delay to the chat script on the client side.
HID host (i.e. support for Bluetooth keyboards)
Fremantle comes with the bluetoothd input plugin installed but disabled through /etc/bluetooth/main.conf
As shown by Johan Hedberg at the Maemo Summit 2009:
Your main.conf should look like:
[General] #List of plugins that should not be loaded on bluetoothd startup DisablePlugins = network,input,hal ...
With root rights change it to
[General] #List of plugins that should not be loaded on bluetoothd startup DisablePlugins = network,hal ...
After saving, do a
stop bluetoothd [RETURN] start bluetoothd [RETURN]
Then go to the bluetooth section pair the keyboard like any other bluetooth device and connect it.
PAN
Fremantle comes with the bluetoothd network plugin installed but disabled through /etc/bluetooth/main.conf
Phone Book Access Profile (PBAP)
Since Fremantle has Evolution Data Server as its contacts backend it might be possible to get some PBAP functionality by enabling PBAB support with the ebook driver in obexd. The obexd package might need to be recompiled for this (not 100% sure) and the --pbap commandline switch will need to be added to /usr/share/dbus-1/services/obexd.service. If this is not enough, the ebook driver might need some tweaking for Fremantle.