zephyr/samples/bluetooth
Luiz Augusto von Dentz a52d54cc3e Bluetooth: Add gatt-discover command to btshell
This adds gatt-discover which works as follow:

btshell> gatt-discover <bdaddr> <bdaddr_type> <uuid> [start_handle] [end_handle]
bt: bt_gatt_discover (0x0010cb10): uuid 0x180d start_handle 0x0001 end_handle 0xffff
Discover pending
btshell> bt: bt_att_recv (0x0010ed0c): Received ATT code 0x07 len 5
bt: att_handle_find_type_rsp (0x0010ed0c):
bt: att_find_type_rsp (0x0010ed0c): err 0x00
bt: att_find_type_rsp (0x0010ed0c): start_handle 0x000a end_handle 0x0011
Discover found handle 10
bt: bt_gatt_discover (0x0010ed0c): uuid 0x180d start_handle 0x0011 end_handle 0xffff
bt: bt_att_recv (0x0010ed0c): Received ATT code 0x01 len 5
bt: att_error_rsp (0x0010ed0c): request 0x06 handle 0x0011 error 0x0a
bt: att_find_type_rsp (0x0010ed0c): err 0x0a
Discover destroy

Change-Id: Ic0b28f19e4932e26b2eae2d19f62f6be6e1efa9c
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
2016-02-05 20:14:35 -05:00
..
beacon Bluetooth: Fix public Bluetooth includes 2016-02-05 20:14:23 -05:00
central Bluetooth: Introduce LE scan callback 2016-02-05 20:14:24 -05:00
init Rename TIMO -> ZEPHYR 2016-02-05 20:14:16 -05:00
peripheral Bluetooth: Replace peer address with conn in GATT API 2016-02-05 20:14:30 -05:00
shell Bluetooth: Add gatt-discover command to btshell 2016-02-05 20:14:35 -05:00
test_bluetooth Bluetooth: Move HCI driver API to dedicated header file 2016-02-05 20:14:23 -05:00
tester Bluetooth: Notify about connection events in tester app 2016-02-05 20:14:31 -05:00
README Bluetooth: Update README in samples 2016-02-05 20:14:19 -05:00

Bluetooth subsystem

= Building =

Build samples

$ make -C samples/bluetooth/<app>

= Bluetooth Sample application =

Host Bluetooth controller is connected to the second qemu serial line
through a UNIX socket (qemu option -serial unix:/tmp/bt-server-bredr).
This option is already added to qemu through QEMU_EXTRA_FLAGS in Makefile.

On the host side BlueZ allows to "connect" Bluetooth controller through
a so-called user channel. Use the btproxy tool for that:

$ sudo tools/btproxy -u
Listening on /tmp/bt-server-bredr

Note that before calling btproxy make sure that Bluetooth controller is down.

Now running qemu result connecting second serial line to 'bt-server-bredr'
UNIX socket. When Bluetooth (CONFIG_BLUETOOTH) and Bluetooth HCI UART driver
(CONFIG_BLUETOOTH_UART) are enabled, Bluetooth driver registers to the system.
From now on Bluetooth might be used by the application. To run application in
the qemu run:

$ make qemu

= Bluetooth sanity check =

There is smoke test application in nanokernel and microkernel test
directories which gets run in sanity check script:

$ scripts/sanity_chk/sanity_chk -T gcc [-B <BSP>]

For quick regression test use bt_regression, it only check Bluetooth test

$ samples/bluetooth/bt_regression.sh