This patch adds a very simple application for demonstrating the use of the bt_init() API. Right now this is just tested to work with qemu and the HCI UART driver with the help of the btproxy tool on the host OS side. More information is available in the samples/bluetooth/README file. Change-Id: I03f92d158e9e5d57275241502bb8fa94350fc335 Co-authored-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
30 lines
827 B
Plaintext
30 lines
827 B
Plaintext
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 stack init.
|
|
|
|
= Building =
|
|
|
|
$ make -C host/src
|
|
$ 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:
|
|
|
|
$ make -C samples/bluetooth/<app> NODE1.qemu
|