Home Automation Project

Hi all, I'm new to the Arduino world and in C programming, however I have a solid knowledge on new generation languages like .NET, PHP 5, ActionScript 3.0 and similar.

My goal is to create a home automation system run by Arduino. The idea is to control the lighting, heating and so on by solid state relays. The system must work both by wall switches (push buttons) and serial communication.

The firmware must be configurable. I would like to configure it by a web interface. So I think to send the configuration by serial, write it on the EEPROM and then on every restart of the Arduino, the first thing to do is to read the config from the EEPROM and build an instances of objects like "Lamp" or "Dimmer Lamp" and so on.

Is there something similar already done? Would you suggest me a good approach for doing this? Any sample code or tutorial would be great!

Thanks in advance

P.S. I work with Arduino Mega ;)


I think there is plenty of people using Arduino for home automation projects, but maybe not in exactly the way you suggest.

There's nothing wrong with sending config data over serial and storing it in EPROM.

But if you have communication to a central node anyway then you could also have your node ask the central node "what kind of node am i" when it starts up.

How many "nodes" are you going to use ?

Ordinary serial is point to point so you could fast get into problems unles your central "node" has many serial ports.

If i were building a system like this i would probably use an RS485 bus.

It's easy to build a simple circuit to let Arduinos serial port communicate on a RS485 bus. This will alow you to have i think up to 32 nodes and spread over a much longer distance than ordinary serial allows.

We should stick our heads together. I'm working on a similar project at home.

I will get back to you in about a week when i'm back from a business trip to Italy. (and no, it won't be fun at all)

Greetings, EriSan500

MikMo, I think we speak about different system logics. There will be just one "active node", called controller. This controller is based on the Arduino Mega board. The other "nodes" will be passive, just a regular push buttons wall switches. There will be no serial communication between these nodes. I do a special wiring, not the regular one. Every cable goes to the controller.

erisan500, I would like to exchange some ideas and if we thing in the same way, we could work together on this :)