zephyr/samples/bluetooth
Andrei Emeltchenko 5fffe2f225 Bluetooth: Set default toolchain to gcc
Set the toolchain in case the user doesn't have it set in their
environment.

Change-Id: Ia961598bc125ded9326747cc8c5810635a8481d5
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2016-02-05 20:13:58 -05:00
..
beacon
init
peripheral
shell
test_bluetooth
bt_regression.sh Bluetooth: Set default toolchain to gcc 2016-02-05 20:13:58 -05:00
README

Bluetooth subsystem

= Architecture =

All processing is done in fibers. Basic structure for packet processing
is bt_buf. Packets are queued to different queues and processed. Packet
allocation is done through a free packets queue which gets populated
during the initialization.

= Building =

Build host tools:

$ make -C host/src

Build samples

$ make -C samples/bluetooth/<app>

= Testing =

Host Bluetooth controler is connected to the second qemu serial line
through a UNIX socket (qemu option -serial unix:/tmp/bt-server-bredr).

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

Now qemu can connect serial line to the 'bt-server-bredr' UNIX socket
with following command:

For microkernel configuration run:

$ make microkernel.qemu

For nanokernel configuration run:

$ make nanokernel.qemu

Extra parameter to qemu might be added through QEMU_EXTRA_FLAGS.

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