Difference between revisions of "Bluetooth"
From ArmadeusWiki
(→Tested hardware) |
(Add some precision to terminal through Bluetooth) |
||
Line 123: | Line 123: | ||
</pre> | </pre> | ||
− | ===Terminal through | + | ===Scanning network=== |
+ | <pre class="apf"> | ||
+ | # hcitool scan | ||
+ | Scanning ... | ||
+ | </pre> | ||
+ | |||
+ | ===Setup a Terminal between a PC and your APF through Bluetooth=== | ||
On the APF : | On the APF : | ||
− | * the first step is to create the corresponding node for the future connection : | + | * the first step is to create the corresponding node for the future connection: |
<pre class="apf"> | <pre class="apf"> | ||
# mknod /dev/rfcomm0 c 216 0 | # mknod /dev/rfcomm0 c 216 0 | ||
</pre> | </pre> | ||
− | * | + | * then, listen to an incoming connection, on the rfcomm0 channel 7: |
<pre class="apf"> | <pre class="apf"> | ||
− | # rfcomm -i hci0 listen /dev/rfcomm0 7& | + | # rfcomm -i hci0 listen /dev/rfcomm0 7 & |
</pre> | </pre> | ||
− | * and the last step, when the connection is open, is to connect a terminal (through getty) to the node /dev/rfcomm0 : | + | * and the last step, when the connection is open, is to connect a terminal (through getty) to the node ''/dev/rfcomm0'': |
<pre class="apf"> | <pre class="apf"> | ||
# getty 38400 /dev/rfcomm0 | # getty 38400 /dev/rfcomm0 | ||
Line 139: | Line 145: | ||
On the PC : | On the PC : | ||
− | *after the two first steps on the APF, you need to connect the PC to the APF with the same channel : | + | *after the two first steps on the APF, you need to connect the PC to the APF with the same channel (7): |
− | <pre class=" | + | <pre class="host"> |
− | + | $ rfcomm connect 0 00:19:88:2B:xx:xx 7 (replace 00:19:88:2B:xx:xx with the Bluetooth @ of your APF) | |
</pre> | </pre> | ||
− | * and configure minicom : | + | * and configure minicom (''$HOME/.minirc.dfl''): |
pu port /dev/rfcomm0 | pu port /dev/rfcomm0 | ||
pu baudrate 38400 | pu baudrate 38400 | ||
Line 149: | Line 155: | ||
pu parity N | pu parity N | ||
pu stopbits 1 | pu stopbits 1 | ||
− | * when getty is running on the APF, you could you connect with minicom | + | * when getty is running on the APF, you could you connect with minicom: |
− | + | <pre class="host"> | |
− | + | $ minicom -o | |
− | <pre class=" | + | |
− | + | ||
− | + | ||
</pre> | </pre> | ||
Revision as of 21:58, 23 April 2010
Page under construction... Informations on this page are not guaranteed !!
This page will give you all the informations needed to have a running Bluetooth configuration on your Armadeus board.
Contents
Hardware
First you have to get a compatible hardware. Currently there are 3 solutions:
- Get a Wireless extension board from armadeus systems (only available for APF27)
- Get a cheap USB<->Bluetooth adapter (requires an USB Host port)
- Get a RS232<->Bluetooth adapter
Tested hardware
Model | Status APF9328 / APF27 |
Chipset | Comments | |
---|---|---|---|---|
BELKIN - Mini Bluetooth Adapter | TBT | KO | Product: BLUETOOTH USB +EDR ADAPTER v2.1 UHE Manufacturer: Broadcom Corp |
# hciconfig hci1 up piscan
btusb_submit_intr_urb: hci1 urb c3bdac40 submission failed (28) |
TRUST - Bluetooth 2.1 USB Adapter | TBT | KO | Product: BCM2046B1 Manufacturer: Broadcom |
# hciconfig hci1 up piscan
btusb_submit_intr_urb: hci1 urb c3bdac40 submission failed (28) |
RUEDUCOMMERCE - Mini adaptateur USB Bluetooth | TBT | OK | Manufacturer: Cambridge Silicon Radio | |
GIGABYTE - GN-BTD01 | TBT | OK | Manufacturer: Cambridge Silicon Radio | Bluetooth 1.1 ? |
BELKIN - F8T003 v2 | TBT | OK | Manufacturer: Cambridge Silicon Radio |
Software
Bluetooth Linux stack is divided into several parts:
- kernel drivers
- userland libraries/daemon (bluez)
Driver installation
- (Done by default on APF27)
$ make linux26-menuconfig
[*] Networking support ---> <M> Bluetooth subsystem support ---> --- Bluetooth subsystem support <M> L2CAP protocol support <M> SCO links support <M> RFCOMM protocol support [*] RFCOMM TTY support <M> BNEP protocol support [ ] Multicast filter support (NEW) [ ] Protocol filter support (NEW) <M> HIDP protocol support Bluetooth device drivers ---> <M> HCI USB driver < > HCI SDIO driver (NEW) <M> HCI UART driver [*] UART (H4) protocol support [*] BCSP protocol support [ ] HCILL protocol support (NEW) < > HCI BCM203x USB driver (NEW) < > HCI BPA10x USB driver (NEW) < > HCI BlueFRITZ! USB driver (NEW) < > HCI VHCI (Virtual HCI device) driver (NEW)
$ make
Bluez installation
$ make menuconfig
Package Selection for the target ---> ... [*] XML handling ---> [*] libxml2 ... [*] Hardware handling / blockdevices and filesystem maintenance ---> [*] dbus XML library to use (libxml2) ... *** Armadeus specific packages *** [*] bluez
$ make
Usage
Bring up
- Make sure your hardware is connected to the APF. If using an USB dongle, load corresponding driver:
# modprobe btusb Bluetooth: Core ver 2.14 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: Generic Bluetooth USB driver ver 0.4 usbcore: registered new interface driver btusb
- Check if Bluetooth interface was detected:
# hciconfig hci0: Type: USB BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0 DOWN RX bytes:0 acl:0 sco:0 events:0 errors:0 TX bytes:0 acl:0 sco:0 commands:0 errors:0
- If interface is DOWN, bring it up:
# hciconfig hci0 up piscan
- Check your Bluetooth device is correctly initialized:
# hcitool dev Devices: hci0 00:10:60:D1:92:0F
Scanning network
# hcitool scan Scanning ...
Setup a Terminal between a PC and your APF through Bluetooth
On the APF :
- the first step is to create the corresponding node for the future connection:
# mknod /dev/rfcomm0 c 216 0
- then, listen to an incoming connection, on the rfcomm0 channel 7:
# rfcomm -i hci0 listen /dev/rfcomm0 7 &
- and the last step, when the connection is open, is to connect a terminal (through getty) to the node /dev/rfcomm0:
# getty 38400 /dev/rfcomm0
On the PC :
- after the two first steps on the APF, you need to connect the PC to the APF with the same channel (7):
$ rfcomm connect 0 00:19:88:2B:xx:xx 7 (replace 00:19:88:2B:xx:xx with the Bluetooth @ of your APF)
- and configure minicom ($HOME/.minirc.dfl):
pu port /dev/rfcomm0 pu baudrate 38400 pu bits 8 pu parity N pu stopbits 1
- when getty is running on the APF, you could you connect with minicom:
$ minicom -o