ALPHA xaplib2

3 replies [Last post]
brett
Offline
Providence, United States
Joined: 9 Jan 2010

I felt it was about time that I wrote a new XAP C library as the one written by Patrick, and used extensively by the HAH daemons, is rather crusty.  Perhaps it was more a case of "not written here syndrome" but I did feel I could do a better job.

This is very much an ALPHA library.  The basics work for BSC compliance but I haven't had time to fully thrash it out so library calls may change about before I'm finished.  I'm posting this note to let any budding XAP developers of HAH software know not to rely too much on the existing xap library as eventually this will go away.

Source code published in the SVN repository.

Brett

BodgeIT
Offline
London, United Kingdom
Joined: 10 Jun 2010
Hi Brett,As per my post in

Hi Brett,

Will the new library expose WOL to xAP? Is this possible?

Cheers

Gary

BodgeIT
Offline
London, United Kingdom
Joined: 10 Jun 2010
xAP.OSD schema

Brett,

While you'r busy writing the new xAP library, would this be a good time to beg you to include xAP.OSD schema?

This will allow for lovely OSD message to be thrown at my Joggler!!!  Sexy! and much more akin to AMX, Crestron like functionality.  Think it's time to pick up another one or two of them.

I'd also like to have the audio schema included but at this point, I just can't think what I'd do with it.

Hope you're settling in over there and finding your feet, looking forward to new features for HAH!

Cheers

Gary

brett
Offline
Providence, United States
Joined: 9 Jan 2010
Coming along

I checked in my latest set of changes today.  Including a reworked xap-livebox daemon that uses the new library and I'm currently testing it out.   Some quick stats prove that things are in the right direction.

Statxaplibxaplib2
Program size (xap-livebox)
40972 bytes
27252 bytes
Virtual set size (xap-livebox)1116 kB1040 kB

What do these mean?   Programs take less memory and less flash space using the new library.  I suspect they also run faster as they are more memory efficient but I've not measured that stat.

The new library is architected into 3 pieces

  • xAP base framework
  • BSC schema support
  • Logging / Debugging

The BSC schema is simply an implemention that uses the base xAP framework.  So adding new schema support to the library is certainly possible.  This should make it much easier to write new SCHEMA specific applications.

As I've only written one schema support addition (BSC) I'm not sure what overlap there is going to be with others.  It might turn out there are common features that can be pulled from BSC et. al. and put into the base framework.

I'll take a look at OSD and see how much work it would take to roll an OSD support framework - possibly not much.  Its looks pretty simple and I think and OSD joggler might be useful addition.

Derek has sent me a Joggler so when that arrives I'll be making some inroads into getting some examples together on how to integrate these two device.   I've been a little lax on writing WIKI notes due to spending all my time writing (re-writing) the hah internals.  Sadly when I'm done it'll look the same from the outside.  The good news is that rolling new programs will be lightening fast and I'm hoping others might get involved.

I'm slowly settling in US life - it seems I just don't have enought time between juggling work, HAH and my family.

Brett

Hardware Info