zephyr/samples/bluetooth
Allan Stephens 63c7d00584 Rename VXMICRO_BASE to TIMO_BASE
Updates references to this environment variable, which were missed
during previous renamings.

Change-Id: I1126271ce8b84d3eaedeab11198d3a3b645393af
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
2016-02-05 20:14:16 -05:00
..
beacon Rename VXMICRO_BASE to TIMO_BASE 2016-02-05 20:14:16 -05:00
central Rename VPF files to use MDEF file extension 2016-02-05 20:14:15 -05:00
init Rename VPF files to use MDEF file extension 2016-02-05 20:14:15 -05:00
peripheral Rename VPF files to use MDEF file extension 2016-02-05 20:14:15 -05:00
shell Rename VPF files to use MDEF file extension 2016-02-05 20:14:15 -05:00
test_bluetooth Use ccflags-y and asflags-y instead of EXTRA_CFLAGS 2016-02-05 20:14:14 -05:00
bt_regression.sh Eliminate references to VXMICRO_TOOL 2016-02-05 20:14:15 -05:00
README Bluetooth: Update README with recent changes 2016-02-05 20:13:57 -05:00

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