Domotica software layer

Pop your questions regarding Home automation software here.....
Post Reply
steve2xyz
Starting Member
Starting Member
Posts: 34
Joined: Mon Feb 08, 2010 8:46 am

Domotica software layer

Post by steve2xyz »

There are a number of commercial Domotica software products and quite a few people in this forum have written, or are writing, their own. I know I have!

This software might be Linux, Mac, Windows based. It might be embedded. Perhaps it has a GUI, perhaps it's web-driven and accessible over Internet. Perhaps it has it's own event handling language, maybe it can record things in an SQL table. Perhaps it can produce charts. This is all up to the application and the application writer and is why new applications are written.

But in every case there's a layer of the application entirely devoted to communicating with peripherals. Perhaps Dallas 1-wire chips, speech input, a GSM phone, a CM12, an RFXCOM receiver or even your own home-built parallel port interface. And every time somebody writes their own Domotica application, they have to work out how to talk to every single device. It's a lot of work and seems a bit wasteful because it's been done before.

Wouldn't it be better if we could come up with a cross-platform layer of software immediately above device-drivers which offers a consistent, tested and working interface so all any new application has to do is talk to that?

xPL does a lot of this. If xPL covered every device you wanted, all your Domotica application ever needs to do is talk xPL. It doesn't need to know the details of how to communicate with every single peripheral. Yet how many applications support xPL? Mine can, but it's never been tested with anything except the xPL clock. I don't have xPL set up to talk to each device; like most Domotica applications, I talk directly to the peripheral's device driver.

I have not thought this through yet, I'm wondering what everyone else thinks.

Cheers, Steve
drmacchi
Advanced Member
Advanced Member
Posts: 827
Joined: Wed Aug 08, 2007 5:48 pm
Location: Italy

Re: Domotica software layer

Post by drmacchi »

just a contribute to help people like me not programmer to understand what you refer to :

http://xplproject.org.uk/
http://xplproject.org.uk/wiki/index.php?title=Main_Page

Ciao :)
Tiz
Member
Member
Posts: 146
Joined: Tue May 19, 2009 12:21 pm
Location: Netherlands

Re: Domotica software layer

Post by Tiz »

ok, I have just tried it again, but although the whole xPL ideas seems very attractive to me I really hate the site they have built.
Where do I see what an xPL message looks like? What is it exactly that I can reuse and what does its interface look like?
The site has far far too much text, too less pictures and diagrams. It really frustrates me that such a good idea is documented so extremely bad. And by bad I do not mean the information is not there because I didn't check. Why didn't I check? because I just can not find what I am looking for. Just bits and pieces, but no overview. Hrf, frustration growing again because such a good idea is going to waste, at least for me.
Mathijs
User avatar
b_weijenberg
Forum Moderator
Forum Moderator
Posts: 1744
Joined: Sun May 14, 2006 4:32 pm
Location: Netherlands

Re: Domotica software layer

Post by b_weijenberg »

Bwired
Administrator
Administrator
Posts: 4704
Joined: Sat Mar 25, 2006 1:07 am
Location: Netherlands
Contact:

Re: Domotica software layer

Post by Bwired »

XPL is using UDP, For a lot of things OK.
But for certain devices and related status you have to be sure and have confirmation etc.
not sure how this is handled?
User avatar
b_weijenberg
Forum Moderator
Forum Moderator
Posts: 1744
Joined: Sun May 14, 2006 4:32 pm
Location: Netherlands

Re: Domotica software layer

Post by b_weijenberg »

This is not handled in xPL or xAP. For permanent errors the heart-beat time outs can be used to detect network problems. The sensor side can transmit multiple UDP records like done on RF to cover single errors but I don't know if this is implemented.

On the other hand how big is the risk that UDP messages are lost in a private network?
steve2xyz
Starting Member
Starting Member
Posts: 34
Joined: Mon Feb 08, 2010 8:46 am

Re: Domotica software layer

Post by steve2xyz »

The xPL library I'm using comes from here http://xplproject.org.uk/. It turns out that my Domotica application can both read and write xPL, but it's only ever been tested with the xPL clock.

I meant for xPL to be an example of the sort of thing we might use to avoid having to reinvent every Domotica application talking to every device. I'd imagine that this Domotica software layer might be more tightly bound to the application than xPL.

Domotica application
-------------------------------------
Domotica software layer
-------------------------------------
Device drivers
-------------------------------------

Steve
Digit
Global Moderator
Global Moderator
Posts: 3388
Joined: Sat Mar 25, 2006 10:23 am
Location: Netherlands
Contact:

Re: Domotica software layer

Post by Digit »

b_weijenberg wrote:On the other hand how big is the risk that UDP messages are lost in a private network?
You're right. I use UDP broadcast to inform GUI client(s) of device value changes. Works without any problem on a local network.
steve2xyz
Starting Member
Starting Member
Posts: 34
Joined: Mon Feb 08, 2010 8:46 am

Re: Domotica software layer

Post by steve2xyz »

I use UDP for measurements and status queries and have had no problem on my LAN. But UDP is unreliable so I guess you have to bear that in mind and be prepared to retransmit vital data and take care of the ordering and any fragmentation if it's necessary. I make use of broadcasts too but in new code use multicasting.

This is quite a good discussion on it: http://www.isoc.org/inet97/proceedings/F3/F3_1.HTM

Steve
Post Reply

Return to “Questions & Discussions Forum”