Commits

Commit Message Author Age Changes
5a55b21e adv_monitor: Handle D-Bus proxy event of an ADV monitor This adds two handlers, one for adding and one for removing, of D-Bus proxy events. The handler of property changes is set to NULL as intended, since for simplicity no further changes on monitor's properties would affect the ongoing monitoring. The following test steps were performed with bluetoothctl. - After registering the root path, expose two monitors and verify that the proxy added event are received. - Have two monitors added, unexpose the monitors, and verify that the proxy removed events are received for those two monitors. - Have two monitors added, unregister the monitors and verify that the proxy removed events are received for those two monitors. Miao-chen Chou 5 years ago 1 file, +474, -13
8f3a6268 gdbus: Make g_dbus_proxy_get_path take const proxy This makes g_dbus_proxy_get_path take const proxy since it doesn't change anything on the proxy and avoid pointless casts. Luiz Augusto von Dentz 5 years ago 2 files, +2, -2
18e10e0c adv_monitor: Handle D-Bus client ready events This adds a handler of client ready events. The handler replies to the RegisterMonitor() method call. The following tests were performed. - Call RegisterMonitor() and expect to receive a return. Miao-chen Chou 5 years ago 1 file, +19, -7
1601b5ba adv_monitor: Implement UnregisterMonitor() This implements the UnregisterMonitor() method handler of ADV monitor manager interface. The following tests were performed. - Issue a UnregisterMonitor() call with a nonexistent path and expect org.bluez.Error.DoesNotExist as the return. - Issue a UnregisterMonitor() call with a invalid path and expect org.bluez.Error.InvalidArguments as the return. - Issue RegisterMonitor() with a path, issue UnregisterMonitor() and expect a successful method call return. Miao-chen Chou 5 years ago 1 file, +36, -1
0633cf2a adv_monitor: Implement RegisterMonitor() This implements the RegisterMonitor() method handler of ADV monitor manager interface. The following tests were performed. - Issue a RegisterMonitor() call with a valid path and expect a success as return. - Issue a RegisterMonitor() call with an invalid path and expect org.bluez.Error.InvalidArguments as return. - Issue two Registermonitor() calls with the same path and expect org.bluez.Error.AlreadyExists. - Verify the values of the registered paths with logging. - Verify D-Bus disconnection callback was triggered when the client detach from D-Bus. Miao-chen Chou 5 years ago 1 file, +164, -1
2dea0819 adv_monitor: Implement Get functions of Adv monitor manager properties This implements the Get functions of SupportedMonitorTypes and SupportedFeatures. The following test was performed. - Issue dbus-send to read SupportedMonitorTypes and SupportedFeatures. Miao-chen Chou 5 years ago 1 file, +121, -5
1b32562b adv_monitor: Introduce org.bluez.AdvertisementMonitorManager1 interface This introduces the org.bluez.AdvertisementMonitorManager1 without implementing handlers of methods and properties. The following test was performed. - Upon adapter registration, the info line of creating an ADV monitor manager gets printed, and system bus emits the interface events of org.bluez.AdvertisementMonitorManager1. Miao-chen Chou 5 years ago 4 files, +204, -1
1a515e15 adapter: Remove indirect dependency of headers Given that adapter.h refers symbols from lib/bluetooth.h and lib/sdp.h, these two headers should be included directly in adapter.h. Miao-chen Chou 5 years ago 1 file, +3, -0
b7f310a6 btpclient: Fix gap reset not sending response This patch fixes the GAP reset command to response the default settings after resetting the stack. Tedd Ho-Jeong An 5 years ago 1 file, +19, -15
f62e1f8d tools/btpclientctl: Add btpclient test application This patch adds a test application for btpclient, which exercises the BTP API. Tedd Ho-Jeong An 5 years ago 3 files, +2378, -1
4c3a3ffb btp: Update connect event structure This patch updates the connect event struct to align withe the btp spec. Opcode 0x82 - Device Connected event Controller Index: <controller id> Event parameters: Address_Type (1 octet) Address (6 octets) Connection Interval (2 octets) Connection Latency (2 octets) Supervision Timeout (2 octets) Tedd Ho-Jeong An 5 years ago 1 file, +3, -0
87d6b134 emulator: Implement LE Remove CIG This adds support for LE Remove CIG command. Luiz Augusto von Dentz 5 years ago 1 file, +10, -0
ed08a077 monitor: Fix decoding of LE Remove CIG HCI_LE_Remove_CIG does actually returns the CIG_ID in addition to the status. Luiz Augusto von Dentz 5 years ago 2 files, +20, -1
ab39b46b audio/transport: Don't set volume if it's invalid Adding a check inside media_transport_update_volume to prevent the volume being updated with an invalid value. Archie Pusaka 5 years ago 1 file, +3, -0
fd3fe457 avrcp: Add handler for GET_TOTAL_NUMBER_OF_ITEMS According to the AVRCP spec, section 4.5, GetTotalNumberOfItems PDU is mandatory for TG supporting category 1 or 3. Archie Pusaka 5 years ago 1 file, +58, -0
179ccb93 avrcp: Set volume if volume changed event is registered Some audio devices don't list the AVRCP TG role in SDP but still support absolute volume and volume changed event, this change should allow the stack to control the volumes on these audio devices. Yu Liu 5 years ago 1 file, +7, -1
1b90cf43 Disable auto-connect on device remove Auto-connect is not disabled when a device is removed. So in case the pairing is cancelled, the device is removed, but it stays in the kernel auto-connect list. This causes future advertisement from that device to trigger a pairing even if the user has already cancelled the pairing. This patch disables auto-connect on device remove. Manish Mandlik 5 years ago 1 file, +5, -0
5a180f2e Release 5.55 Marcel Holtmann 5 years ago 2 files, +24, -1
a73d0804 build: Update library version Marcel Holtmann 5 years ago 1 file, +1, -1
a2e5a6ba lib: Update company identifiers Marcel Holtmann 5 years ago 1 file, +292, -0
53e1c753 avrcp: Implement Press/Hold/Release method for MediaPlayer1 This allows us to send any passthrough command, complete with the support to hold down the key. Using Press() will automatically release the key, while using Hold() will keep the key held until an explicit call to Release() is received. This doesn't allow us to hold multiple keys simultaneously, since according to the AV/C Panel Subunit Specification, part 9.4, when the target receive a pressed command without receiving a release command of the previous key, it will be treated as if the release command is sent but not received. Previously, the rewind and fast_forward keys are unique in terms that they are treated as holdable keys, this patch preserves that behavior of calling Rewind() and FastForward(). A rewind event which is reported via the new Press() method will automatically be released instead. Archie Pusaka 5 years ago 6 files, +189, -53
4b3f8587 doc/media-api: Add Press/Hold/Release methods for MediaPlayer1 This allows us to send any passthrough command. The button can also be held for an extended amount of time. Reviewed-by: Michael Sun <michaelfsun@chromium.org> Archie Pusaka 5 years ago 1 file, +29, -0
94f791dc mesh: Align option names with functionality Change option "config" ('c') to "storage" ('s) to specify a custom storage directory for node configuration. Change option 'f' (long name was missing) to "config" ('c') to specify a custom mesh configuration file to override the default mesh-main.conf Inga Stotland 5 years ago 1 file, +8, -7
b6b51422 mesh: Remove unused timing variable tx_start In model.c, tx_Start is a static variable, dynamically set, but never used. Is removed now. Inga Stotland 5 years ago 1 file, +0, -6
c24db50c client: Fix typo in bluetoothctl Barry Byford 5 years ago 1 file, +2, -2
384559f2 monitor: Add support for Suspend and Resume events Add support to pretty print Suspend and Resume mgmt events in btmon. Example: @ MGMT Event: Controller Suspended (0x002d) plen 1 Suspend state: Page scanning and/or passive scanning (2) @ MGMT Event: Controller Resumed (0x002e) plen 8 Wake reason: Remote wake due to peer device connection (2) LE Address: CD:F3:CD:13:C5:9A (OUI CD-F3-CD) Abhishek Pandit-Subedi 5 years ago 1 file, +55, -0
35d34660 mgmt: Add controller suspend and resume events Add the controller suspend and resume events. Abhishek Pandit-Subedi 5 years ago 1 file, +14, -0
4eae282b mesh: Move RPL check from model to net layer Check whether an incoming message has an RPL entry prior to handing it over to model layer for processing. If present in RPL or the RPL queue is full, ignore the incoming message. If the incoming message is processed successfully, add the message as a new RPL entry. Inga Stotland 5 years ago 4 files, +106, -106
fec55b9e mesh: Initialize RPL when creating or loading a node When either a new node is created or an existing node is loaded from storage, initialize RPL storage directory. Additionally, when an existing node configguration is read from storage, load saved RPL entries into the corresponding RPL lists. Inga Stotland 5 years ago 5 files, +37, -21
636e46d6 mesh: Store key indices as integers in node config Store NetKey and AppKey indices as integers instead of hex strings. This removes unnecessary string manipulations while not affecting the configuration file readability. Inga Stotland 5 years ago 1 file, +38, -64
8a8e1fd8 profiles/network: Log connection event after setting device name Without reordering these two statements, the logs look like this: bnep%d connected bnep0 disconnected edef 5 years ago 1 file, +1, -1
67095102 gatt: Accept empty array in parse_includes() Currently parse_includes() will return false if the "Includes" property is an empty array. Empty array in the "Includes" property should be treated as valid. Jie Jiang 5 years ago 1 file, +7, -5
2b480bd5 adapter: Mark device temporary state pairing failure This caused the device hanging around as a discovered device forever even if it is turned off or not in present. Yu Liu 5 years ago 1 file, +8, -0
a359a4c4 test/test-mesh: Add "options" to Send/Publish This adds a new dictionary paramenter (empty by default) when invoking Send() or Publish() methods. Inga Stotland 5 years ago 1 file, +9, -2
a6270757 tools/mesh-cfglient: Add "options" to Send/DevKeySend This adds a new dictionary paramenter (empty by default) when invoking Send() and DevKeySend() methods. Inga Stotland 5 years ago 1 file, +8, -0
f2dc6f99 mesh: Handle "options" dictionary in Send/Publish methods This adds processing of "options" dictionary argument in Send, DevKeySend & Publish methods on mesh.Node interface. This new argument is a dictionary that currently has only one new key word defined for Send() and DevKeySend(): "ForceSegmented" - to force small payloads to be sent as one-segment messages In case of Publish(), and additional keyword is defined "Vendor" - 16-bit Company ID as defined by the Bluetooth SIG Other key words may be defined in future to accommodate evolving requirements of Mesh Profile specification. Also, the addition of "options" dictionary to Publish allows to eliminate VendorPublish() method (taken care by "Vendor" keyword). Inga Stotland 5 years ago 4 files, +75, -82
879ea568 doc/mesh-api: Add "options" dictionary to Send/Publish This modifies Send, DevKeySend and Publish methods on mesh.Node interface to include additional argument "options". This new argument is a dictionary that currently has only one new key word defined for Send() and DevKeySend(): "ForceSegmented" - to force small payloads to be sent as one-segment messages In case of Publish(), and additional keyword is defined "Vendor" - 16-bit Company ID as defined by the Bluetooth SIG Other key words may be defined in future to accommodate evolving requirements of Mesh Profile specification. Also, the addition of "options" dictionary to Publish allows to eliminate VendorPublish() method (taken care by "Vendor" keyword). Inga Stotland 5 years ago 1 file, +35, -25
c9f7c61f mesh: Add random address to mesh HCI init This prevents error 0x12 when enabling/disabling LE scans Daan Pape 5 years ago 1 file, +9, -0
43f0c044 mesh: Use valid net key index when handling Send call Retrieve value of bound Net Key index based on the value of passed AppKey index. Check if the key is present and fail early in case of error. Also, pass the correct NetKey index to model layer in mesh_model_send(), instead of hard coded 0. Inga Stotland 5 years ago 2 files, +9, -6
4de3420d mesh: Use correct retransmit parameters for publications This adds previously missing retransmit count and interval values specific to model publications. The values are configured by Config CLient and may be different to each model. Inga Stotland 5 years ago 7 files, +104, -78
291dbf2c device: Fix race condition between device connection and disconnection When Connect() is called and waiting for return, dev_disconnected may be called due to MGMT_EV_DEVICE_DISCONNECTED event from kernel. In that case reply to client that the connection failed otherwise the dbus method will timeout because bluetoothd never replies. Tested with simulation of a lot of Connect() to bluetooth devices and check that error is returned from bluetoothd rather than dbus timeout when this race condition happens. Sonny Sasaka 5 years ago 1 file, +13, -0
39ca6601 adapter: Fix crash in discovery_disconnect discovery_disconnect crashed because the adapter pointer has been freed before. This patch makes sure that discovery list is cleaned up before adapter pointer is freed. Sonny Sasaka 5 years ago 1 file, +15, -5
eb4b99a4 input/device: Unregister all UHID event listeners at UHID_DESTROY When destroying UHID, we should also unregister all event listeners so that they don't get double registered at reconnection. It fixes a bug where battery report is not available to kernel after reconnection and also prevents memory leak. Tested with Logitech M535 mouse: * Connect mouse to the device running BlueZ * cat /sys/class/power_supply/hid-{addr}-battery/capacity # works * Disconnect mouse * Reconnect mouse * cat /sys/class/power_supply/hid-{addr}-battery/capacity # still works Sonny Sasaka 5 years ago 3 files, +12, -0
4d0336ea client: Add cancel-pairing command This adds cancel-pairing command which can be used to cancel the ongoing pairing. Miao-chen Chou 5 years ago 1 file, +35, -0
ef7e4848 mesh: Send correct NetKey index in DevKeyMessageReceived The value of net_index in DevKeyMessageReceived() method must be set to the value of a subnet index on which a device key encoded message has been received. Was hard coded to 0. Fixed. Inga Stotland 5 years ago 1 file, +2, -1
b50c299a mesh: Check for enabled modes when dst is fixed address This moves the check for incoming messages addressed to fixed addresses, e.g. RELAY, PROXY, FRIEND. If the corresponding feature is not enabled, the message is not processed. Inga Stotland 5 years ago 2 files, +9, -21
bff0b258 mesh: Always set net modes based on node feature settings The network settings such as relay, beacon, proxy and friend are always set based on local node feature settings. This change makes the net modes initialization unconditional, to include the "No Support" setting on node level which should result in the disabled mode in net.c Inga Stotland 5 years ago 1 file, +5, -13
8fe6fddd main: add configurable refresh_discovery parameter This is to configure the default behavior of issuing SDP query to update the services upon profile connection. Archie Pusaka 5 years ago 4 files, +14, -1
ebfa306d device: Don't browse SDP if HIDSDPDisable is set According to the HID1.1 spec, part 5.3.4.9: The HIDSDPDisable attribute is a Boolean value, which indicates whether connection to the SDP channel and Control or Interrupt channels are mutually exclusive. This feature supports Bluetooth HID devices that have minimal resources, and multiplex those resources between servicing the initialization (SDP) and runtime (Control and Interrupt) channels. However, Bluez still tries to connect SDP upon HID connection, regardless of the existence of the HIDSDPDisable attribute. This patch prevents the connection of SDP after HID has been established, if the device has HIDSDPDisable attribute. Archie Pusaka 5 years ago 3 files, +13, -2
d081375e shared/ad: move MAX_ADV_DATA_LEN macro to the header This moves MAX_ADV_DATA_LEN macro to src/shared/ad.h and rename it to BT_AD_MAX_DATA_LEN. Miao-chen Chou 5 years ago 2 files, +10, -10
Previous Next