Gilles Boccon-Gibod
ce9004f0ac
Add L2CAP CoC support (squashed)
...
[85542e0] fix test
[3748781] add ASAH sink example
[e782e29] add app
[83daa30] wip
[7f138a0] add test
[f732108] allow different address syntax
[9d0bbf8] rename deprecated methods
[eb303d5] add LE CoC support
2022-11-07 16:45:37 -08:00
Abel Lucas
ca16410a6d
device: add option to check for the address type when using find_connection_by_bd_addr
2022-11-07 22:17:01 +00:00
Abel Lucas
b95888eb39
le: permit legacy scanning even when extended is supported
2022-11-07 22:15:54 +00:00
Abel Lucas
56ed46adfa
classic: add BR/EDR accept connection logic
2022-11-04 17:26:59 +00:00
Abel Lucas
7044102e05
classic: upgrade Device.cancel_connection logic to support canceling ongoing BR/EDR connections
2022-11-04 17:26:59 +00:00
Abel Lucas
ca8f284888
le: add own_address_type parameter to Device.start_advertising
2022-11-04 17:26:59 +00:00
Abel Lucas
e9e14f5183
le: make the device connecting state relative to LE only
...
We may need to add a distinct BR/EDR connecting state in the future.
2022-11-04 17:26:59 +00:00
Abel Lucas
b961affd3d
device: update Device.connect documentation to match BR/EDR behavior
2022-11-04 17:26:59 +00:00
Abel Lucas
51ddb36c91
device: add auto_restart mechanism to .start_discovery (default to True)
2022-11-04 17:26:59 +00:00
Abel Lucas
78534b659a
device: enhance .request_remote_name to also accept an Address as argument
2022-11-04 17:26:59 +00:00
Abel Lucas
ce9472bf42
core: change AdvertisingData.get default raw behavior to False
2022-11-04 17:26:59 +00:00
Abel Lucas
fc331b7aea
core: improve Advertisement.ad_data_to_object with support for more data types
2022-11-04 17:26:59 +00:00
Abel Lucas
8119bc210c
host: pass remote_host_supported_features event to upper layer
...
The `HCI_Remote_Name_Request` command may trigger this HCI event.
Instead of warn for not being handled, pass it to upper layer.
2022-11-02 20:23:14 +00:00
Abel Lucas
65deefdc64
host: allow bytes return paramaters when checking command result
2022-11-02 20:23:14 +00:00
Gilles Boccon-Gibod
cf4c43c4ff
Merge pull request #48 from google/uael/classic-parallel-connect
...
classic: update `Device.connect` to allow parallels connection creation
2022-10-23 20:52:08 -07:00
Gilles Boccon-Gibod
da2f596e52
Merge pull request #50 from google/uael/command-timeout
...
device: raise a `CommandTimeoutError` error on command timeout
2022-10-23 20:49:06 -07:00
Gilles Boccon-Gibod
75ac276c8b
use the correct constants as previously renamed
2022-10-21 17:12:26 -07:00
Abel Lucas
16b4f18c92
tests: add parallel device connection test
2022-10-21 15:49:03 +00:00
Abel Lucas
4e2f66f709
device: raise a CommandTimeoutError error on command timeout
2022-10-20 22:11:07 +00:00
Abel Lucas
45dd849d9f
classic: update ConnectionError to take transport and peer address
2022-10-20 14:53:03 +00:00
Abel Lucas
7208fd6642
classic: update Device.connect to allow parallels connection creation
...
According to the specification nothing prevent the Host from creating
multiple connections at the same time. This commit add this mechanisme
by matching the `connection` and `connection_failure` events against the
peer address.
2022-10-19 17:44:44 +00:00
Gilles Boccon-Gibod
eb8556ccf6
gbg/extended scanning ( #47 )
...
Squashed:
* add extended report class
* more HCI commands
* add AdvertisingType
* add phy options
* fix tests
2022-10-19 10:06:00 -07:00
Octavian Purdila
b4de38cdc3
Fix address resolution handling
...
In one of the refactors the command address_resolution field was
changed to address_reslution_enable but the controller code was not
updated.
2022-10-11 22:53:42 +00:00
Gilles Boccon-Gibod
7fa2eb7658
support with_response on adapters
2022-10-10 12:11:51 -07:00
Gilles Boccon-Gibod
2fc7a0bf04
Merge pull request #39 from google/gbg/usb-descriptors
...
improve USB device detection logic
2022-10-06 15:39:32 -07:00
Gilles Boccon-Gibod
d6c4644b23
reorder the order of printing
2022-10-06 10:40:28 -07:00
Gilles Boccon-Gibod
20dedbd923
maintain the att mtu only at the connection level
2022-10-04 20:04:43 -07:00
Gilles Boccon-Gibod
0edd6b731f
Merge pull request #37 from google/gbg/gatt-notify-with-value
...
add support for notifying with a transient value
2022-10-04 10:33:04 -07:00
Gilles Boccon-Gibod
d2227f017f
improve USB device detection logic
2022-10-04 09:59:48 -07:00
Gilles Boccon-Gibod
db5e52f1df
add support for alternate settings
2022-09-20 22:25:40 -07:00
Gilles Boccon-Gibod
d7da5a9379
add support for dynamic discovery of USB endpoints
2022-09-20 16:39:12 -07:00
Gilles Boccon-Gibod
80569bc9f3
add support for notifying with a transient value
2022-09-06 12:42:35 -07:00
Gilles Boccon-Gibod
624e860762
support empty distributions in both directions
2022-08-30 18:50:48 -07:00
Gilles Boccon-Gibod
159cbf7774
support pairing with no key distribution
2022-08-30 18:28:24 -07:00
Gilles Boccon-Gibod
d188041694
Merge pull request #35 from zxzxwu/ctkd
...
Support CTKD over BR/EDR
2022-08-30 06:19:57 -07:00
Josh Wu
99cba19d7c
Support CTKD over BR/EDR
...
Self test is not available Bumble BR/EDR local transport is not
implemented yet.
Test: Internal test - CTKD over BR/EDR
2022-08-30 11:19:22 +08:00
Gilles Boccon-Gibod
84d70ad4f3
add usb_probe tool and improve compatibility ( #33 )
...
* add usb_probe tool and improve compatibility with older/non-compliant devices
* fix logic test
* add doc
2022-08-26 12:41:55 -07:00
zxzxwu
996a9e28f4
Handle L2CAP info dynamically ( #28 )
...
* Add feature and MTU fields in L2CAP manager constructor
* Add register/unregister API for fixed channels
2022-08-18 08:25:59 -07:00
zxzxwu
27cb4c586b
Delegate Classic connectable and discoverable ( #27 )
...
For remote-initiated test cases, we need the device to be
scan-configurable.
2022-08-17 14:20:32 -07:00
Gilles Boccon-Gibod
431445e6a2
fix imports ( #25 )
2022-08-16 11:29:56 -07:00
Gilles Boccon-Gibod
29fd19f40d
gbg/fix subscribe lambda ( #23 )
...
* don't use a lambda as a subscriber
* update tests to look at side effects instead of internals
2022-08-12 14:22:31 -07:00
Michael Mogenson
14dfc1a501
Add subscribe and unsubscribe commands to console.py ( #22 )
...
Subscribe command will enable notify or indicate events from the
characteristic, depending on supported characteristic properties, and
print received values to the output window.
Unsubscribe will stop notify or indicate events.
Rename find_attribute() to find_characteristic() and return a
characteristic for a set of UUIDS, a characteristic for an attribute
handle, or None.
Print read and received values has a hex string.
Add an unsubscribe implementation to gatt_client.py. Reset the CCCD bits
to 0x0000. Remove a matching subsciber, if one is provided. Otherwise
remove all subscribers for a characteristic, since no more notify or
indicates events will be comming.
authored-by: Michael Mogenson <mogenson@google.com >
2022-08-12 11:49:01 -07:00
Gilles Boccon-Gibod
3fa5d320de
add long read self test
2022-08-03 16:19:04 -07:00
Jayson Messenger
9cd1890faa
Adding in context manager for Connection and Peer classes
...
* Connection implements async context manager to disconnect when
context is left
* The Connection only calls disconnect if the context manager exits
without an exception
* Peer implements async context manager to discover when entering the
context
* Device.connect_as_gatt implements an async context manager to nest the
connection and peer context managers
* Added HCI_StatusError that can be raised when a HCI Command Status
event is received that doesn't show "PENDING" as status
* Added Connection.sustain to wait for a timeout or disconnect
* Peer.sustain also maps to Connectin.sustain
* Updated battery_client.py to use .connect_as_gatt and .sustain
* Updated heart_rate_client.py to use .connect_as_gatt and .sustain
2022-07-27 14:03:12 -04:00
Gilles Boccon-Gibod
472702a9d9
Merge pull request #12 from google/gbg/more-hci-types
...
more hci types
2022-07-26 18:00:21 -07:00
Gilles Boccon-Gibod
3040df3179
add support for the heart rate service
2022-07-23 09:38:44 -07:00
Gilles Boccon-Gibod
c66b357de6
Merge pull request #13 from google/gbg/standard-profiles
...
support for type adapters and framework for standard GATT profiles
2022-07-22 10:21:39 -07:00
Gilles Boccon-Gibod
e156ed3758
add in-context uuids and service proxy factories
2022-07-20 19:56:40 -07:00
Gilles Boccon-Gibod
0ffed3deff
Merge pull request #11 from zxzxwu/main
...
Implement CTKD over LE and key distribution delegation
2022-07-20 15:35:26 -07:00
Josh Wu
2f949a1182
Delegate SMP key distribution
...
* Delegate SMP key distribution
* Align LE pairing key expectation
* Parametrize SMP self test, and add key distribution coverage
2022-07-21 01:19:36 +08:00