uC friendly open source home automation framework

Does anybody know of an open source home automation framework? Having monitored the market for a couple of years, it seems like there are several proprietary “standards” like x10 all competing to be king. Would be really nice to build hardware and software to an open standard that has support from the industry… am I dreamin’ ?

I think you are :wink:

Most of the HA vendors develop their own standard/protocols, their o so precious “vendor lock-in”.
They don’t see the benefit (yet) of a open standard.

I’ve had the same luck… Zigbee/XBee seems to be catching on as the standard transport but I haven’t found anything as far as an OSS/OSH project that seems to have really caught on which is very surprising considering how many are out there doing their own thing. For me, the biggest hurdle every time I think about starting home automation is the cost. There is some basic I/O you can do using just an XBee but as soon as you add a micro to the mix then it quickly busts a budget. What that sector really needs is something the size of an XBee that’s a bit more programmable. Something that the end product can be hidden in the back of an electrical light box would be ideal.

open zwave project seems like it might be port-able to come to netmf, but there are no people using it AFAIK in that mode at the moment. z-wave has a better rep than x10 as x10 devices give no feedback to the controller whether a command was successful or not.

Not sure if xbee/zigbee really counts as HA though, as the network layer it isn’t a bad choice but the problem is that the home device support is what is needed. I’m still thinking “home brew” more than commercial, so xbee could support that.

I know another Aussie who has done HA with Arduinos crammed in behind custom light switches, which seems to work well for him; look for freetronics and Jon Oxer’s blog and you might find stuff worth reading.

In API mode, you can write directly to the I/O pins of an XBee. With an XBee combined with a relay, you have a stand-alone power switch that can be controlled from an NETMF device or PC master. That covers about 75% of the “automation” most people want.

Well, we’ve got to make them see the light! Pun intended.

I’ve had the same thoughts about something like a FEZ Ant with built in RF.

Maybe it’s time to get serious with a project. It seems to be a market with some very low hanging “green” fruit. OSH is really catching on.

Funny, I actually wrote that exact line in my last reply and then deleted it. The problem I see there is that you really need something like XBee that creates a grid network and Ant is already looking to be more than the cost of XBee (if an Ant is ever produced…). Even RF isn’t reliable enough to reach through several walls to get from one end of a house to the next.

Have you ever seen the Control4 system? An installer demoed it to me when we were building our house. It’s based on Zigbee and is very slick. Something similar (and compatible?) would make a good open project based on what is currently available…

I think that until the hardware manufacturers come up with a very slick single chip solution that really only has to be slightly more powerful than an XBee then every other option I’m familiar with just becomes too expensive. I personally am not willing to pay $50/outlet to be able to control my lights. Maybe if I gain any more weight over the holidays I’ll reconsider… :wink:

RF will work fine, even a mesh is possible: http://maniacbug.github.com/RF24Network/index.html

That chip doesn’t seem to be any cheaper than XBee though… :frowning:

http://www.sparkfun.com/products/691

@ EriSan have you used it and have you found a cheaper source than $20 per transmitter?

It would be interesting to try adding the components to that SF module to the Ant board and see how it changes the price. If the total board was still <$30 then it would be very attractive.

i paid them 2,9€ each (bought 5 of them)

Atm playing around with a Fez Rhino and an Arduino with both having the NRF24L01+ modules attached. Progress will be reported later on (there are only 24h in a day unfortunately)

I choose the arduino because I would like to build remote sensors (or actors) in order to keep the base cost down (arduino chip + NRF < 10€), of course cost will increase depending on the chosen functionality (temp/hum/light/motion)

Have a look here: http://tinyurl.com/8ysjrxt (ebay)

Wow! That’s a huge difference over the SF price. Where did you get them?

I understand why you chose Arduino. I think any open home automation project is going to have to use a mix of different uMs. To keep the cost reasonable, Arduinos at the endpoints and NETMF for the controllers makes a lot of sense. At the price you paid for the RF, it really could be possible to build a tiny board with an uM + RF + relay for under $15… Hmmmm :slight_smile:

I bought them from China.

Here’s another link: http://iteadstudio.com/store/index.php?main_page=product_info&cPath=7&products_id=53&zenid=p5ib08mkl698ilq9ch2eqfcf82

Together with some colleagues we’re thinking of creating our own modules based on ZigBee/XBee. The problem is that the XBee modules are quite expensive (± 20$/€) so we ordered some samples of TI CC2530 (and related chips) and see if we can design our own modules. Working with these QFN 40 chips with size 6x6mm is proving to be a challenge though.

Of course XBee itself is just the communication, you still need an application running on some kind of controller (PC), BeagleBone looks interesting, maybe Raspbery PI is also possible. There are enough opensource projects in any language that handle the XBee api so this part shouldn’t be too difficult.

Getting started with XBee is quite easy, implementing the Home Automation Profile so you’re modules are compatible with products from other vendors is something we still need to look at.

@ steven - What is the “Home Automation Profile”? I took a look at [url]NXP® Semiconductors Official Site | NXP Semiconductors but it really didn’t shed much light on the topic.

As far as a controller goes, why do you think it needs to be as beefy as a PC? I was thinking along the lines of EMX/ChipWorkX device with touchscreen that also bridged to a local network. These chips have enough horsepower to also serve up XML over HTTP easily enough. It would be an interesting experiment to see if we could implement a RESTful service on one of these uCs. That would make it accessible by just about any client.

BTW, the mention of bone chewing dog and dessert boards is highly suspect ;D

@ ransomhall
XBee has different standardized profiles (Zigbee - Wikipedia), these make that a light switch from vendor X behaves the same way as the switch from vendor Y. So there’s no different “setup” to add a new module to your network.

The controller doesn’t have to be a PC at all, was just an example. Your controller could be any system/board as long as the hardware and the OS are stable and made to run 24/7 and are also energy efficient. Home automation is normally also used to optimize energy consumption, no need to have a 1000W server running your home :slight_smile:

For the remote communication (controlling your home when you’re away) I was thinking of (ab)using Twitter to send commands. Create 2 private accounts, one for the controller and one for the controlling app that follow each other. This way there’s no need to open a port on your home router and no need to have a server in the cloud. This way you can still create your own app that uses twitter to send commands but you can also use any other twitter client to get access to your home. I know this is probably not the most professional solutions but at least you only need to worry about a strong password for your Twitter accounts.

@ steven - I’m all about using existing protocols (i.e. Twitter et al), even if the goal stretches their standard use case a bit. Twitter is great because people know what it is in general, if not the underlying technical implementation. I’m not about being “most professional”, but more about keeping the design as simple and flexible as possible. This creates more work up front, but pays huge dividends in the end.

Great thread so far. Keep the ideas coming!

For people who want to learn/play with ZigBee/XBee I can suggest the following stuff:

I guess you should also define “Home Automation”. What does that mean to you?

For me personally Home Automation goes much further then just switching on/off a light or appliance.

One of the key aspects of Home Automation is to reduce energy consumption. In order to reduce, you need to measure first. (without measuring, you are not able to see where you could reduce energy) If you start measuring you need to store the data somewhere, and that usually involves a database.

So from my point of view, a dedicated low power pc is needed.

@ EricSan - Definitely with you on a database - some kind of backend data processing/storage system that polls the controller regularly, churns the data, and serves up pretty reports. The argument could be made that since that is needed, why not move the aforementioned ‘lightweight’ controller functionality to this. Hmm… plenty to ponder.

@ Eric

Absolutely, home automation is about the visible (lights, coffee machine…) and invisible automation (measuring energy consumption and detecting abnormal consumption, nobody in the room --> turn of lights…).

All the technology and components exist but the available products are too expensive. I don’t want to plug 1 or 2 external component in my sockets, I want it built in the socket itself and in every socket in my house.