| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
|
|
|
| |
Make sure libshared-ell is only build if ell is available.
|
|
|
|
|
|
| |
This is intended for use for automated logging or unatrended systems.
It doesn't contain any packet decoding functionality which results
in much smaller binary.
|
| |
|
|
|
|
| |
This is first version that supports D-Bus proxy API used by btpclient.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This adds initial code for BTP client tool that allows for automated
(binary protocol ) control of BlueZ stack. Currently this tool depends
only on Embedded Linux Library and requires master branch of ELL.
When 0.3 is released dependencies will be bumped.
Initial code allows to connect D-Bus client, discover objects and keep
proxies for it. It also implements basics for BTP core service.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This adds --enable-testing that can be used to enable emulator and tester
which are no longer experimental but also are not meant for production.
|
|
|
|
|
|
|
| |
This marks the following tools as deprecated as they are not longer
maintained or have been replaced by other tools:
hciattach hciconfig hcitool hcidump rfcomm sdptool ciptool gatttool
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This plugin implements the Central role of MIDI over Bluetooth
Low-Energy (BLE-MIDI) 1.0 specification as published by MMA in
November/2015.
It was implmemented as a bluetoothd plugin because of latency requirements
of MIDI. There are still room for improvements on this regard.
Like previsouly mentioned, it only implements the Central role, but
since all parsing and state-machine code is in libmidi.[hc] it should be
simple to implement the Peripheral role as a GATT service as well.
Files added:
* profiles/midi/midi.c: Actual GATT plugin
* profiles/midi/libmidi.[ch]: MIDI parsers
Techinal notes
==============
This plugin doesn't require any new threads. It relies on notifications
from a device to parse and render proper events that are queued in the
kernel, causing no blocks at all. Even if an error occur, it will be
handled and returned control to bluetoothd.
It also adds a new file descriptor to be read using struct io. That is
necessary to read events from applications and render raw BLE packets to
be sent to the device with a write without response command. It doesn't
block as well.
This patch introduces ALSA as dependency. But this feature is disabled
by default. To enable it, pass --enable-midi to the configure script.
Even though this introduces ALSA dependency, it is not an audio plugin.
It is rather a MIDI plugin, which is a byte stream protocol with low
throughput but requires low-latency.
Observations
============
I have tested on a normal laptop Arch-linux (x86_64) and a Raspberry Pi 2
(ARM Cortex-A8) and it works very well. As I mentioned, the latency can
always be improved.
I will still maintain a personal branch on my github[1] so others can
contribute there and I can test before sending to BlueZ.
IMPORTAT: the timestamp support is incomplete since ALSA doesn't support the
way MIDI over BLE expects (asign timestamp to an event without scheduling).
We are working on ALSA to support this.
Credits
=======
I would like to send kudos to ROLI Ltd. which allowed my to work
on this as part of my full-time job.
[1] https://github.com/ftonello/bluez/
|
|
|
|
|
| |
This fixes errors caused by the new options:
configure: WARNING: unrecognized options: --enable-nfc, --enable-sap, --enable-health
|
|
|
|
|
| |
Reflect the build changes to only leave experimental tools being
--enable-experimental.
|
|
|
|
|
|
| |
This adds--enable-health option dedicated to enabled health plugin
so it is no longer enabled with --enable-experimental since that
enables other plugins that might not be relevant for the system.
|
|
|
|
|
|
| |
This adds --disable-hog option to configure which make HoG plugin
to not be build thus reducing the build time and binary size of
bluetoothd in systems where HID over GATT profile is not supported.
|
|
|
|
|
|
| |
This adds --disable-hid option to configure which make input plugin
to not be build thus reducing the build time and binary size of
bluetoothd in systems where HID profile is not supported.
|
|
|
|
|
|
| |
This adds --disable-network option to configure which make network plugin
to not be build thus reducing the build time and binary size of
bluetoothd in systems where those profiles are not supported.
|
|
|
|
|
|
| |
This adds --disable-avrcp option to configure which make AVRCP plugin
to not be build thus reducing the build time and binary size of
bluetoothd in systems where AVRCP is not supported.
|
|
|
|
|
|
| |
This adds --disable-a2dp option to configure which make A2DP plugin
to not be build thus reducing the build time and binary size of
bluetoothd in systems where A2DP is not supported.
|
|
|
|
|
|
| |
This adds --enable-sap option dedicated to enabled sap plugin
so it is no longer enabled with --enable-experimental leaving it to just
enable experimental tools.
|
|
|
|
|
|
| |
This adds --enable-nfc option dedicated to enabled neard plugin
so it is no longer enabled with --enable-experimental since that
enables other plugins that might not be relevant for the system.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This disables building plugins that are no longer supported by the core
since the transition to gatt-db. In the future these plugins will have to
be ported to use gatt-db or be removed if the profile can be implemented
using the GATT D-Bus APIs.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This check if valgrind tool is available adding it to be run with make
check.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This checks if dbus-run-session is available and then add it to
AM_TESTS_ENVIRONMENT so tests using D-Bus run in its own session.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Since MISC_FLAGS now checks for enable_coverage to add --coverage flag
the check for lcov needs happen before before it otherwise make coverage
doesn't work.
|
| |
|