* [PATCH RFC] Add Generic Device Battery API @ 2012-08-30 11:26 chen.ganir 2012-08-30 11:26 ` [PATCH RFC] battery: Add generic device battery interface chen.ganir 0 siblings, 1 reply; 5+ messages in thread From: chen.ganir @ 2012-08-30 11:26 UTC (permalink / raw) To: linux-bluetooth; +Cc: chen.ganir From: Chen Ganir <chen.ganir@ti.com> This API proposal allows exposing peer device battery information to the D-Bus clients. Profiles supporting peer device battery information (such as AVRCP, LE Battery client) may use the internal API (next patch set) to register or unregister batteries to be listed under the device object path. These batteries have multiple read-only prpoerties that can be read by the D-Bus clients. In addition, the new org.bluez.Battery interface allows sending PropertyChanged for battery properties (such as Battery level). Battery properties currently include the battery level, namespace and description (currently used by the LE battery client). More properties can be added or removed as we see fit in the future. Comments on this patch will be appreciated. Chen Ganir (1): battery: Add generic device battery interface doc/battery-api.txt | 34 ++++++++++++++++++++++++++++++++++ doc/device-api.txt | 5 +++++ 2 files changed, 39 insertions(+) create mode 100644 doc/battery-api.txt -- 1.7.9.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH RFC] battery: Add generic device battery interface 2012-08-30 11:26 [PATCH RFC] Add Generic Device Battery API chen.ganir @ 2012-08-30 11:26 ` chen.ganir 2012-09-06 19:34 ` Claudio Takahasi 0 siblings, 1 reply; 5+ messages in thread From: chen.ganir @ 2012-08-30 11:26 UTC (permalink / raw) To: linux-bluetooth; +Cc: chen.ganir From: Chen Ganir <chen.ganir@ti.com> Add the D-Bus API documentation for the new generic device battery interface. This API provides generic access to peer devcice batteries. --- doc/battery-api.txt | 34 ++++++++++++++++++++++++++++++++++ doc/device-api.txt | 5 +++++ 2 files changed, 39 insertions(+) create mode 100644 doc/battery-api.txt diff --git a/doc/battery-api.txt b/doc/battery-api.txt new file mode 100644 index 0000000..da82024 --- /dev/null +++ b/doc/battery-api.txt @@ -0,0 +1,34 @@ +BlueZ D-Bus Battery API description +**************************************** + + Texas Instruments, Inc. <chen.ganir@ti.com> + +Device Battery hierarchy +===================================== + +Service org.bluez +Interface org.bluez.Battery +Object path [variable prefix]/{hci0,..}/dev_XX_XX_XX_XX_XX_XX/BATTYYYY +YYYY is numeric value between 0 and 9999. + +Methods dict GetProperties() + + Returns all properties for the interface. See the + Properties section for the available properties. + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties uint16 Level [readonly] + + Battery level (0-100). + + uint16 Description [readonly] + + Battery description. + + uint16 Namespace [readonly] + + Battery Namespace. diff --git a/doc/device-api.txt b/doc/device-api.txt index 1f0dc96..c98d539 100644 --- a/doc/device-api.txt +++ b/doc/device-api.txt @@ -179,3 +179,8 @@ Properties string Address [readonly] Note that this property can exhibit false-positives in the case of Bluetooth 2.1 (or newer) devices that have disabled Extended Inquiry Response support. + + array{object} Batteries [readonly] + + List of device battery object paths that represents the available + batteries on the remote device. -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH RFC] battery: Add generic device battery interface 2012-08-30 11:26 ` [PATCH RFC] battery: Add generic device battery interface chen.ganir @ 2012-09-06 19:34 ` Claudio Takahasi 2012-09-09 5:59 ` Chen Ganir 0 siblings, 1 reply; 5+ messages in thread From: Claudio Takahasi @ 2012-09-06 19:34 UTC (permalink / raw) To: chen.ganir; +Cc: linux-bluetooth Hi Chen Ganir: On Thu, Aug 30, 2012 at 8:26 AM, <chen.ganir@ti.com> wrote: > From: Chen Ganir <chen.ganir@ti.com> > > Add the D-Bus API documentation for the new generic device battery > interface. This API provides generic access to peer devcice > batteries. > --- > doc/battery-api.txt | 34 ++++++++++++++++++++++++++++++++++ > doc/device-api.txt | 5 +++++ > 2 files changed, 39 insertions(+) > create mode 100644 doc/battery-api.txt > > diff --git a/doc/battery-api.txt b/doc/battery-api.txt > new file mode 100644 > index 0000000..da82024 > --- /dev/null > +++ b/doc/battery-api.txt > @@ -0,0 +1,34 @@ > +BlueZ D-Bus Battery API description > +**************************************** > + > + Texas Instruments, Inc. <chen.ganir@ti.com> > + > +Device Battery hierarchy > +===================================== > + > +Service org.bluez > +Interface org.bluez.Battery > +Object path [variable prefix]/{hci0,..}/dev_XX_XX_XX_XX_XX_XX/BATTYYYY > +YYYY is numeric value between 0 and 9999. > + > +Methods dict GetProperties() > + > + Returns all properties for the interface. See the > + Properties section for the available properties. > + > +Signals PropertyChanged(string name, variant value) > + > + This signal indicates a changed value of the given > + property. > + > +Properties uint16 Level [readonly] > + > + Battery level (0-100). > + > + uint16 Description [readonly] > + > + Battery description. > + > + uint16 Namespace [readonly] > + > + Battery Namespace. IMO "Description" and "Namespace" should be string: http://developer.bluetooth.org/gatt/Pages/GattNamespaceDescriptors.aspx For BLE Presentation Format is mandatory(Namespace and Description). For AVRCP, probably it doesn't make sense. I recommend to include additional description for these fields. > diff --git a/doc/device-api.txt b/doc/device-api.txt > index 1f0dc96..c98d539 100644 > --- a/doc/device-api.txt > +++ b/doc/device-api.txt > @@ -179,3 +179,8 @@ Properties string Address [readonly] > Note that this property can exhibit false-positives > in the case of Bluetooth 2.1 (or newer) devices that > have disabled Extended Inquiry Response support. > + > + array{object} Batteries [readonly] > + > + List of device battery object paths that represents the available > + batteries on the remote device. > -- > 1.7.9.5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Are you planning to implement the Battery Service on BlueZ? (using UPower) It seems to be straightforward. Regards, Claudio ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH RFC] battery: Add generic device battery interface 2012-09-06 19:34 ` Claudio Takahasi @ 2012-09-09 5:59 ` Chen Ganir 2012-09-10 13:24 ` Claudio Takahasi 0 siblings, 1 reply; 5+ messages in thread From: Chen Ganir @ 2012-09-09 5:59 UTC (permalink / raw) To: Claudio Takahasi; +Cc: linux-bluetooth Claudio, On 09/06/2012 10:34 PM, Claudio Takahasi wrote: > Hi Chen Ganir: > > On Thu, Aug 30, 2012 at 8:26 AM, <chen.ganir@ti.com> wrote: >> From: Chen Ganir <chen.ganir@ti.com> >> >> Add the D-Bus API documentation for the new generic device battery >> interface. This API provides generic access to peer devcice >> batteries. >> --- >> doc/battery-api.txt | 34 ++++++++++++++++++++++++++++++++++ >> doc/device-api.txt | 5 +++++ >> 2 files changed, 39 insertions(+) >> create mode 100644 doc/battery-api.txt >> >> diff --git a/doc/battery-api.txt b/doc/battery-api.txt >> new file mode 100644 >> index 0000000..da82024 >> --- /dev/null >> +++ b/doc/battery-api.txt >> @@ -0,0 +1,34 @@ >> +BlueZ D-Bus Battery API description >> +**************************************** >> + >> + Texas Instruments, Inc. <chen.ganir@ti.com> >> + >> +Device Battery hierarchy >> +===================================== >> + >> +Service org.bluez >> +Interface org.bluez.Battery >> +Object path [variable prefix]/{hci0,..}/dev_XX_XX_XX_XX_XX_XX/BATTYYYY >> +YYYY is numeric value between 0 and 9999. >> + >> +Methods dict GetProperties() >> + >> + Returns all properties for the interface. See the >> + Properties section for the available properties. >> + >> +Signals PropertyChanged(string name, variant value) >> + >> + This signal indicates a changed value of the given >> + property. >> + >> +Properties uint16 Level [readonly] >> + >> + Battery level (0-100). >> + >> + uint16 Description [readonly] >> + >> + Battery description. >> + >> + uint16 Namespace [readonly] >> + >> + Battery Namespace. > > IMO "Description" and "Namespace" should be string: > http://developer.bluetooth.org/gatt/Pages/GattNamespaceDescriptors.aspx > > For BLE Presentation Format is mandatory(Namespace and Description). > For AVRCP, probably it doesn't make sense. I recommend to include > additional description for these fields. > After discussing this issue with Johan, we decided to remove the Namespace and Description properties from the generic battery. Do you think we should have those properties or can we exclude them ? Do you see any use case for those properties? >> diff --git a/doc/device-api.txt b/doc/device-api.txt >> index 1f0dc96..c98d539 100644 >> --- a/doc/device-api.txt >> +++ b/doc/device-api.txt >> @@ -179,3 +179,8 @@ Properties string Address [readonly] >> Note that this property can exhibit false-positives >> in the case of Bluetooth 2.1 (or newer) devices that >> have disabled Extended Inquiry Response support. >> + >> + array{object} Batteries [readonly] >> + >> + List of device battery object paths that represents the available >> + batteries on the remote device. >> -- >> 1.7.9.5 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > > Are you planning to implement the Battery Service on BlueZ? (using UPower) > It seems to be straightforward. > The plan is to add a generic Battery implemented into the BlueZ stack, but no UPower integration is planned at the moment - maybe later. > Regards, > Claudio > BR, Chen Ganir ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH RFC] battery: Add generic device battery interface 2012-09-09 5:59 ` Chen Ganir @ 2012-09-10 13:24 ` Claudio Takahasi 0 siblings, 0 replies; 5+ messages in thread From: Claudio Takahasi @ 2012-09-10 13:24 UTC (permalink / raw) To: Chen Ganir; +Cc: linux-bluetooth Hi Chen Ganir: On Sun, Sep 9, 2012 at 2:59 AM, Chen Ganir <chen.ganir@ti.com> wrote: > Claudio, > > > On 09/06/2012 10:34 PM, Claudio Takahasi wrote: >> >> Hi Chen Ganir: >> >> On Thu, Aug 30, 2012 at 8:26 AM, <chen.ganir@ti.com> wrote: >>> >>> From: Chen Ganir <chen.ganir@ti.com> >>> >>> Add the D-Bus API documentation for the new generic device battery >>> interface. This API provides generic access to peer devcice >>> batteries. >>> --- >>> doc/battery-api.txt | 34 ++++++++++++++++++++++++++++++++++ >>> doc/device-api.txt | 5 +++++ >>> 2 files changed, 39 insertions(+) >>> create mode 100644 doc/battery-api.txt >>> >>> diff --git a/doc/battery-api.txt b/doc/battery-api.txt >>> new file mode 100644 >>> index 0000000..da82024 >>> --- /dev/null >>> +++ b/doc/battery-api.txt >>> @@ -0,0 +1,34 @@ >>> +BlueZ D-Bus Battery API description >>> +**************************************** >>> + >>> + Texas Instruments, Inc. <chen.ganir@ti.com> >>> + >>> +Device Battery hierarchy >>> +===================================== >>> + >>> +Service org.bluez >>> +Interface org.bluez.Battery >>> +Object path [variable >>> prefix]/{hci0,..}/dev_XX_XX_XX_XX_XX_XX/BATTYYYY >>> +YYYY is numeric value between 0 and 9999. >>> + >>> +Methods dict GetProperties() >>> + >>> + Returns all properties for the interface. See the >>> + Properties section for the available properties. >>> + >>> +Signals PropertyChanged(string name, variant value) >>> + >>> + This signal indicates a changed value of the given >>> + property. >>> + >>> +Properties uint16 Level [readonly] >>> + >>> + Battery level (0-100). >>> + >>> + uint16 Description [readonly] >>> + >>> + Battery description. >>> + >>> + uint16 Namespace [readonly] >>> + >>> + Battery Namespace. >> >> >> IMO "Description" and "Namespace" should be string: >> http://developer.bluetooth.org/gatt/Pages/GattNamespaceDescriptors.aspx >> >> For BLE Presentation Format is mandatory(Namespace and Description). >> For AVRCP, probably it doesn't make sense. I recommend to include >> additional description for these fields. >> > After discussing this issue with Johan, we decided to remove the Namespace > and Description properties from the generic battery. Do you think we should > have those properties or can we exclude them ? Do you see any use case for > those properties? > IMO, we can remove them. It is easier to extend the API later than remove properties from the API. Those properties could be useful for PTS testing or qualification, but we can use gatttool to discover and read descriptors. Regards, Claudio ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-09-10 13:24 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-08-30 11:26 [PATCH RFC] Add Generic Device Battery API chen.ganir 2012-08-30 11:26 ` [PATCH RFC] battery: Add generic device battery interface chen.ganir 2012-09-06 19:34 ` Claudio Takahasi 2012-09-09 5:59 ` Chen Ganir 2012-09-10 13:24 ` Claudio Takahasi
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).