The UK Home Automation Archive

Archive Home
Group Home
Search Archive


Advanced Search

The UKHA-ARCHIVE IS CEASING OPERATIONS 31 DEC 2024


[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: Re: Hardware thing names




David Buckley wrote:

>--- In xAP_developer@xxxxxxx, Kevin Hawkins <lists@u...> wrote:
>
>
>>However you can use multiple hierarchies after the : (which
>>segments the device from its multiple endpoints), so to that
>>extent the : is just another herarchy delimiter  - this I
>>think is what you are wanting to
>>achieve...for example
>>
>>
>>Address                                                      UID
>>
>>acme.dimmer.unit1                                          FF234500
>>acme.dimmer.unit1:lamp.lounge.table                        FF234501
>>[snip]
>>
>>
>
>Kevin
>
>Hadn't realised that - that'll do fine.
>
>This is me attempting to implement BSC on HomeBrain, and essentially
>the idea is that any controllable entity that HB has can be
>represented ("exposed") as a xAP BSC device, and real xAP BSC
>controllable things can be listened to and shouted at from HB.
>
>
>
>
Great stuff, glad that HomeBrain is progressing well, do keep us filled
in with news and as before very happy to be an early adopter if you
reach that stage.

Interestingly this was actually  half the purpose of BSC - to allow
controllers and sotware applications  a nice easy/standard way of adding
xAP support & interacting with the majority of simple I/O devices
without having recourse to schema specific knowledge.  You may find
recognising source UID's rather than addresses is a very compact and
useful mechanism too - 3 bytes per device. A dimmer could just monitor a
xAP switch by UID for example. However you cannot target a UID you must
use the full source address (as otherwise any listeners using
wildcarding would break)

One thing just to mention is that the BSC spec is a little ambiguous
currently (reminds me I must update it) . When a xAPBSC.info or
xAPBSC.event message is sent then the fundamental parameters are
mandatory ie ID and STATE for every device and additionally LEVEL or
TEXT if the device is a level or text device. The DisplayText remains
optional in all cases.  If you don't use STATE then set it to ON or OFF
permanently, some level devices do this for example.  However when
sending a xAPBSC.cmd then  all parameters except ID are optional
although to do anything useful you will need to include something else
of course.     ie you can send a LEVEL= command without a STATE or a
STATE without a LEVEL for example. This is needed to allow a device to
be turned ON and OFF or TOGGLED say without changing (knowing) a stored
level or vica versa.

A useful application is that a lamp ON at 100% can be turned OFF and set
to 50% and then turned ON and come back at 50% for example - effectively
a preset or stored  light level.  Some devices can't support this eg X10
lamp modules which typically come back on at full brightness - and so
when they are turned back ON they will actually send a Level=100/100
event ie 100% and depending on the implementation may remain there or
later dim to the expected 50% and send a Level=50/100 command or
something. Likewise a lamp that supported setting levels in 10%
increments ( 11 different levels) would report a 40% level as Level=4/10
and would report this using a .event even if a command was sent to ask
it to go to 44% - so any device monitoring or enquiring (.query) of the
status of the device is always updated with the true values.

K



xAP_Development Main Index | xAP_Development Thread Index | xAP_Development Home | Archives Home

Comments to the Webmaster are always welcomed, please use this contact form . Note that as this site is a mailing list archive, the Webmaster has no control over the contents of the messages. Comments about message content should be directed to the relevant mailing list.