1 BlueZ D-Bus Adapter API description
2 ***********************************
9 Interface org.bluez.Adapter1
10 Object path [variable prefix]/{hci0,hci1,...}
12 Methods void StartDiscovery()
14 This method starts the device discovery session. This
15 includes an inquiry procedure and remote device name
16 resolving. Use StopDiscovery to release the sessions
19 This process will start creating Device objects as
20 new devices are discovered.
22 During discovery RSSI delta-threshold is imposed.
24 Possible errors: org.bluez.Error.NotReady
25 org.bluez.Error.Failed
29 This method will cancel any previous StartDiscovery
32 Note that a discovery procedure is shared between all
33 discovery sessions thus calling StopDiscovery will only
34 release a single session.
36 Possible errors: org.bluez.Error.NotReady
37 org.bluez.Error.Failed
38 org.bluez.Error.NotAuthorized
40 void RemoveDevice(object device)
42 This removes the remote device object at the given
43 path. It will remove also the pairing information.
45 Possible errors: org.bluez.Error.InvalidArguments
46 org.bluez.Error.Failed
48 void SetDiscoveryFilter(dict filter)
50 This method sets the device discovery filter for the
51 caller. When this method is called with no filter
52 parameter, filter is removed.
54 Parameters that may be set in the filter dictionary
55 include the following:
59 Filter by service UUIDs, empty means match
62 When a remote device is found that advertises
63 any UUID from UUIDs, it will be reported if:
64 - Pathloss and RSSI are both empty.
65 - only Pathloss param is set, device advertise
66 TX pwer, and computed pathloss is less than
68 - only RSSI param is set, and received RSSI is
69 higher than RSSI param.
75 PropertiesChanged signals will be emitted
76 for already existing Device objects, with
77 updated RSSI value. If one or more discovery
78 filters have been set, the RSSI delta-threshold,
79 that is imposed by StartDiscovery by default,
84 Pathloss threshold value.
86 PropertiesChanged signals will be emitted
87 for already existing Device objects, with
88 updated Pathloss value.
90 string Transport (Default "auto")
92 Transport parameter determines the type of
96 "auto" - interleaved scan
97 "bredr" - BR/EDR inquiry
100 If "le" or "bredr" Transport is requested,
101 and the controller doesn't support it,
102 org.bluez.Error.Failed error will be returned.
103 If "auto" transport is requested, scan will use
104 LE, BREDR, or both, depending on what's
105 currently enabled on the controller.
107 bool DuplicateData (Default: true)
109 Disables duplicate detection of advertisement
112 When enabled PropertiesChanged signals will be
113 generated for either ManufacturerData and
114 ServiceData everytime they are discovered.
116 When discovery filter is set, Device objects will be
117 created as new devices with matching criteria are
118 discovered regardless of they are connectable or
119 discoverable which enables listening to
120 non-connectable and non-discoverable devices.
122 When multiple clients call SetDiscoveryFilter, their
123 filters are internally merged, and notifications about
124 new devices are sent to all clients. Therefore, each
125 client must check that device updates actually match
128 When SetDiscoveryFilter is called multiple times by the
129 same client, last filter passed will be active for
132 SetDiscoveryFilter can be called before StartDiscovery.
133 It is useful when client will create first discovery
134 session, to ensure that proper scan will be started
135 right after call to StartDiscovery.
137 Possible errors: org.bluez.Error.NotReady
138 org.bluez.Error.NotSupported
139 org.bluez.Error.Failed
141 array{string} GetDiscoveryFilters()
143 Return available filters that can be given to
146 Possible errors: None
148 object ConnectDevice(dict properties) [experimental]
150 This method connects to device without need of
151 performing General Discovery. Connection mechanism is
152 similar to Connect method from Device1 interface with
153 exception that this method returns success when physical
154 connection is established. After this method returns,
155 services discovery will continue and any supported
156 profile will be connected. There is no need for calling
157 Connect on Device1 after this call. If connection was
158 successful this method returns object path to created
161 Parameters that may be set in the filter dictionary
162 include the following:
166 The Bluetooth device address of the remote
167 device. This parameter is mandatory.
171 The Bluetooth device Address Type. This is
172 address type that should be used for initial
173 connection. If this parameter is not present
174 BR/EDR device is created.
177 "public" - Public address
178 "random" - Random address
180 Possible errors: org.bluez.Error.InvalidArguments
181 org.bluez.Error.AlreadyExists
182 org.bluez.Error.NotSupported
183 org.bluez.Error.NotReady
184 org.bluez.Error.Failed
186 #ifdef TIZEN_FEATURE_BLUEZ_MODIFY
187 void StartCustomDiscovery(string pattern)
189 This method starts the device discovery session with
190 parameter. The valid paramter strings are "BREDR",
191 "LE" or "LE_BREDR" which will perform the inquiry for
192 appropriate types. This includes an inquiry procedure
193 and remote device name resolving. Use StopDiscovery
194 to release the sessions acquired.
196 This process will start creating Device objects as
197 new devices are discovered.
199 Possible errors: org.bluez.Error.NotReady
200 org.bluez.Error.Failed
202 void StartLEDiscovery()
204 This method starts the LE device discovery session.
205 General discovery and active scan is default.
206 Use StopLEDiscovery to release the sessions
209 This process will start emitting DeviceFound and
210 PropertyChanged "LEDiscovering" signals.
212 Possible errors: org.bluez.Error.NotReady
213 org.bluez.Error.Failed
215 void StopLEDiscovery()
217 This method will cancel any previous StartLEDiscovery
220 Note that a discovery procedure is shared between all
221 discovery sessions thus calling StopLEDiscovery will only
222 release a single session.
224 Possible errors: org.bluez.Error.NotReady
225 org.bluez.Error.Failed
226 org.bluez.Error.NotAuthorized
228 void SetAdvertising(boolean enable)
230 This method is used to set LE advertising on a
231 controller that supports it.
233 This process will emit PropertyChanged "Advertising"
236 Possible errors: org.bluez.Error.NotReady
237 org.bluez.Error.InvalidArguments
238 org.bluez.Error.Failed
240 void SetAdvertisingParameters(uint32 interval_min,
241 uint32 interval_max, uint32 filter_policy,
242 uint32 type, int32 tx_power_level, int32 slot_id)
244 This method allows for setting the Low Energy
245 advertising interval and advertising filter policy.
246 It is only supported on controller with LE support.
248 Possible errors: org.bluez.Error.NotReady
249 org.bluez.Error.Failed
251 void SetAdvertisingData(array{byte} value)
253 This method is used to set LE advertising data on a
254 controller that supports it.
256 Possible errors: org.bluez.Error.NotReady
257 org.bluez.Error.InvalidArguments
258 org.bluez.Error.Failed
260 void SetScanParameters(uint32 type, uint32 interval, uint32 window)
262 This method allows for setting the Low Energy
263 scan interval and window.
264 It is only supported on controller with LE support.
266 Possible errors: org.bluez.Error.NotReady
267 org.bluez.Error.Failed
269 void SetScanRespData(array{byte} value)
271 This method is used to set LE scan response data on
272 a controller that supports it.
274 Possible errors: org.bluez.Error.NotReady
275 org.bluez.Error.InvalidArguments
276 org.bluez.Error.Failed
278 void AddDeviceWhiteList(string address, uint32 address_type)
280 This method is used to add LE device to White List for given
283 Possible errors: org.bluez.Error.NotReady
284 org.bluez.Error.InvalidArguments
285 org.bluez.Error.Failed
287 void RemoveDeviceWhiteList(string address, uint32 address_type)
289 This method is used to remove LE device to White List for given
292 Possible errors: org.bluez.Error.NotReady
293 org.bluez.Error.InvalidArguments
294 org.bluez.Error.Failed
296 void ClearDeviceWhiteList()
298 This method is used to clear LE device to White List
300 Possible errors: org.bluez.Error.NotReady
301 org.bluez.Error.Failed
303 void SetLePrivacy(boolean enable_privacy)
305 This method is used to set/reset LE privacy feature for the local
306 adapter when it supports the feature.
308 Possible errors: org.bluez.Error.NotReady
309 org.bluez.Error.InvalidArguments
310 org.bluez.Error.Failed
312 void SetLeStaticRandomAddress(boolean enable_random_address)
314 This method is used to set/reset LE static random address for the local
315 adapter when it supports the feature.
317 Possible errors: org.bluez.Error.NotReady
318 org.bluez.Error.InvalidArguments
319 org.bluez.Error.Failed
321 void SetManufacturerData(array{byte} value)
323 This method is used to set Manufacturer data on a
324 controller that supports it.
326 Possible errors: org.bluez.Error.NotReady
327 org.bluez.Error.InvalidArguments
328 org.bluez.Error.Failed
330 void CreateDevice(string address)
332 Creates a new object path for a remote device. This
333 method will connect to the remote device and retrieve
336 Possible errors: org.bluez.Error.InvalidArguments
339 Properties string Address [readonly]
341 The Bluetooth device address.
343 string AddressType [readonly]
345 The Bluetooth Address Type. For dual-mode and BR/EDR
346 only adapter this defaults to "public". Single mode LE
347 adapters may have either value. With privacy enabled
348 this contains type of Identity Address and not type of
349 address used for connection.
352 "public" - Public address
353 "random" - Random address
355 string Name [readonly]
357 The Bluetooth system name (pretty hostname).
359 This property is either a static system default
360 or controlled by an external daemon providing
361 access to the pretty hostname configuration.
363 string Alias [readwrite]
365 The Bluetooth friendly name. This value can be
368 In case no alias is set, it will return the system
369 provided name. Setting an empty string as alias will
370 convert it back to the system provided name.
372 When resetting the alias with an empty string, the
373 property will default back to system name.
375 On a well configured system, this property never
376 needs to be changed since it defaults to the system
377 name and provides the pretty hostname. Only if the
378 local name needs to be different from the pretty
379 hostname, this property should be used as last
382 uint32 Class [readonly]
384 The Bluetooth class of device.
386 This property represents the value that is either
387 automatically configured by DMI/ACPI information
388 or provided as static configuration.
390 boolean Powered [readwrite]
392 Switch an adapter on or off. This will also set the
393 appropriate connectable state of the controller.
395 The value of this property is not persistent. After
396 restart or unplugging of the adapter it will reset
399 boolean Discoverable [readwrite]
401 Switch an adapter to discoverable or non-discoverable
402 to either make it visible or hide it. This is a global
403 setting and should only be used by the settings
406 If the DiscoverableTimeout is set to a non-zero
407 value then the system will set this value back to
408 false after the timer expired.
410 In case the adapter is switched off, setting this
413 When changing the Powered property the new state of
414 this property will be updated via a PropertiesChanged
417 For any new adapter this settings defaults to false.
419 boolean Pairable [readwrite]
421 Switch an adapter to pairable or non-pairable. This is
422 a global setting and should only be used by the
423 settings application.
425 Note that this property only affects incoming pairing
428 For any new adapter this settings defaults to true.
430 uint32 PairableTimeout [readwrite]
432 The pairable timeout in seconds. A value of zero
433 means that the timeout is disabled and it will stay in
434 pairable mode forever.
436 The default value for pairable timeout should be
439 uint32 DiscoverableTimeout [readwrite]
441 The discoverable timeout in seconds. A value of zero
442 means that the timeout is disabled and it will stay in
443 discoverable/limited mode forever.
445 The default value for the discoverable timeout should
446 be 180 seconds (3 minutes).
448 boolean Discovering [readonly]
450 Indicates that a device discovery procedure is active.
452 array{string} UUIDs [readonly]
454 List of 128-bit UUIDs that represents the available
457 string Modalias [readonly, optional]
459 Local Device ID information in modalias format
460 used by the kernel and udev.
461 #ifdef TIZEN_FEATURE_BLUEZ_MODIFY
462 boolean LEDiscovering [readonly]
464 Indicates that a device LE discovery procedure is active.
466 string Version [readonly]
468 The Bluetooth version.