It's been done before:
http://anselm.hoffmeister.be/computer/hidclient/index.html.en
And updated in 2012:
https://github.com/benizi/hidclient/blob/master/hidclient.c#L24
* Updates
* 2012-02-10 by Peter G
* Updated to work with current distro (Lubuntu 11.10)
* EDIT FILE /etc/bluetooth/main.conf
* to include:
* DisablePlugins = network,input,hal,pnat
* AMH: Just disable input might be good enough.
* recomended to change:
* Class = 0x000540
* AMH: This leads to the device being found as "Keyboard".
* Some devices might ignore non-0x540 input devices
* before starting, also execute the following commands
* hciconfig hci0 class 0x000540
* # AMH: Should be optional if Class= set (above)
* hciconfig hci0 name \'Bluetooth Keyboard\'
* # AMH: Optional: Name will be seen by other BTs
* hciconfig hci0 sspmode 0
* # AMH: Optional: Disables simple pairing mode
* sdptool del 0x10000
* sdptool del 0x10001
* sdptool del 0x10002
* sdptool del 0x10003
* sdptool del 0x10004
* sdptool del 0x10005
* sdptool del 0x10006
* sdptool del 0x10007
* sdptool del 0x10008
* # This removes any non-HID SDP entries.
* # Might help if other devices only like
* # single-function Bluetooth devices
* # Not strictly required though.
But I'm still not sure how to 'DisablePlugins=input in current release, since it seems invalid.