| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
GATTRole::Client; BTAdapter::startDiscovery() add DBGattServerRef ref
A GattServerHandler(DBGattServer) is also possible for LL master (GATT client) connections
where the server inquires certain data points within the client's GATT.
User can pass DBGattServer to BTAdapter::startDiscovery() to enable the GattServerHandler for such cause.
Test case: Avalun's LabPad device
- DBTLabPadClient01.java
- dbt_labpadclient01.cpp
|
|
|
|
| |
examples; Add jar install for example/java!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reasonable default values have been chosen from the BT spec,
which can be overriden using the HCIHandler and BTAdapter operations.
The extended advertising operations are also supported (Bluetooth 5.0).
+++
Successfully tested running:
(0) Test machine with 2 adapter
- adapter-1 DC:FB:48:00:90:19 (acting as client)
- adapter-2 00:1A:7D:DA:71:08 (acting as peripheral)
(1) Running dbt_peripheral00.cpp or DBTPeripheral.java
as the advertising peripheral on the test machine.
`direct_bt/dist-amd64$ ../scripts/run-dbt_peripheral00.sh -adapter 00:1A:7D:DA:71:08`
or
`direct_bt/dist-amd64$ ../scripts/run-java-peripheral00.sh -adapter 00:1A:7D:DA:71:08`
(2) Running dbt_scanner10.cpp or DBTScanner10.java
as the listeninig and connection-initiator client
on the same test machine.
`direct_bt/dist-amd64$ sh ../scripts/run-dbt_scanner10.sh -adapter DC:FB:48:00:90:19 -dev 00:1A:7D:DA:71:08 -seclevel 00:1A:7D:DA:71:08 1`
or
`direct_bt/dist-amd64$ sh ../scripts/run-java-scanner10.sh -adapter DC:FB:48:00:90:19 -dev 00:1A:7D:DA:71:08 -seclevel 00:1A:7D:DA:71:08 1`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Starting with version 2.3, the previously refactored *TinyB* has been removed completely.
Motivation was lack of detailed Bluetooth support, inclusive increasing diversion with *Direct-BT*.
Furthermore, work is underway for `BLE slave periphal and GATT server` support and its mapping to *BlueZ D-Bus* is questionable
and would be resource intensive.
Java API changed as follows:
- Objects no more Clonable
- Removed dead unsupported code
- Removed deprecated code
- Added 'GattCharPropertySet', representing property bit mask for BTGattChar,
replacing the string array.
|
|
|
|
| |
Upcoming API Cleanup (Drop TinyB only entries)
|
| |
|
|
|
|
| |
name aligned with dbt_scanner10.cpp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
C++ Libs -> none (2x)
Java Jar -> none
Java JNI Libs -> C++ Lib + Java Jar (2x)
C++ Examples -> C++ Libs
Java Examples -> Java Jar
Test -> C++ Lib
+++
scripts/[re]build.sh uses `getconf _NPROCESSORS_ONLN`
for the make -j <number of parallel processes>.
|
| |
|
|
|
|
| |
HCIComm directly
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Example ScannerTinyB01 demonstrates efficient scanning devices using the new BluetoothDeviceDiscoveryListener interface.
The C++ HCIObject extends JavaUplink, which handles the java object references
via 'std::shared_ptr<JavaAnonObj>', where JavaAnonObj relies on later polymorph specialization.
JavaAnonObj gets derived in the java/jni of direct_bt, where the JNI header + libraries are available.
+++
The java inplementing NativeDownlink implementations
store the nativeInstance to the C++ instances
as well as handle their java references within the native instances.
The C++ JavaUplink and Java NativeDownlink interfaces are complete
the cross referencing java <-> native.
+++
Native libraries are now split into pairs:
- tinyb + javatinyb
- direct_bt + javadirect_bt
TODO: BluetoothFactory must chose the proper bundle!
+++
The Java Adapter received a BluetoothDeviceDiscoveryListener hook,
matching C++ Adapter's HCIDeviceDiscoveryListener.
Since the Java Adapter implements its own discovery thread,
using the BluetoothDeviceDiscoveryListener is more efficient then polling
over a list of Devices fetched.
++++
TODO: Align Java and C++ class names, foremost in the C++ direct_bt space.
TODO: Bind the whole C++ GATT functionality
More testing.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
via tinyb.dbus.*
Allows alternative interface implementations and delegated wrapper implementations for debug and tracing.
Original D-Bus implementation can be retrieved via:
'BluetoothManager org.tinyb.BluetoothFactory.getDBusBluetoothManager()'
A HCI native implementation will follow up w/o use of D-Bus.
Otherwise the Java API is unchanged and this tinyb can replace previous implementation.
Due to the major API change (despite interface is unchanged but BluetoothManager instantiation)
the jar file has been renamed from 'tinyb.jar' to 'tinyb2.jar'.
Same goes with the version number, which will be set to 'v2.0.0'.
The native library and class definition is kept unchanged using the original names so far.
|
|
|
|
| |
Signed-off-by: Petre Eftime <[email protected]>
|
|
|
|
| |
Signed-off-by: Petre Eftime <[email protected]>
|
|
|
|
| |
Signed-off-by: Petre Eftime <[email protected]>
|
|
Signed-off-by: Andrei Vasiliu <[email protected]>
|