Home Ctrl 28

A project by Klaus Pintoffl, Jan 2013
Get Home Automation onto your Android device!

Icon

 
 

Home Ctrl 28
Home Ctrl 28 vs Eight Control
Programming and assembling
Downloads and Manual
Questions and Answers

Home Ctrl 28

Home Ctrl is an professional IP based remote control for home automation and small businesses.  One part (the client) is a program that runs on a standard Android phone or tablet. The program is available on Google Play. The other part (the Server) is an Arduino Mega microcontroller board in conjunction with an Ethernet Board. The Server connects to a LAN network. Optiolal components are a Real Time Clock and temperature sensors. The end user is encuraged to customize the server program to his needs, which distinguishes this project from many others. There is another advantage of Home Ctrl 28 over some comparable systems: If you compare prices (for example on eBay) it should be possible to build this advanced home control system for less than 100 Euros.
The author does not take responsibility for any damage, injury, malfunction, malicious attack, loss of data or property, or other risks associated with this application or its electrical installation.




Home Ctrl vs Eight Control

The main advantages of Home Ctrl 28 are:
Functionality / Version
Eight Control
Home Ctrl 28
True multi-user system (1)
No
Yes
Total number of functions
8
28
Functions per user
8
up to 16 out of 28
Multiple encryption keys
No
Yes, 16 (Admin and normal user keys available)
Multiple user profiles (connect to multiple servers)
No, just 1 profile
Yes, 3 profiles (green, blue, orange buttons)
Configuration of function names and security levels
On Client
On Server
AES encryption
Yes, function execution only
Yes, full and bidirectional, AES128
Board
Uno/Duemilanove/Ethernet
Mega/EtherMega
Real Time Clock
No
Yes, 4 Alarms, 2 daily on/off times
Digital Temp. reading possible
No
Yes, 4 DS18S20 sensors implemented in SW
Send Values to Server
No
Yes (Pro-Tab)
Names of values transmitted
No, setup on phone
Yes
Delay and SaveState for each function
Yes
Yes
Advanced function Properties and PIN protection
No
Yes, for every function/every user
Memory for additional code on server
No, almost all program mem used
more than 75 % of program memory available




Programming and assembling

Programming: Please refer to the Eight Control homepage http://klaus30.bplaced.net/eightcontrol/  for loading the program into the Arduino Mega board of the EtherMega 2560. Hoever as board you have to select Tools --> Board --> Arduino Mega 2560/Mega ADK. The libraries to be imported are in the download section. The process is exactly like discribed for Eight Control.

If no additional hadware (RTC, temperature sensors, buzzer) is used, the code does not have to be changed! Also, if no, 1,2,3 or 4 DS18S20 senors are used, the code will handle that without any changes (only a restart is needed if their number has changed).

Assembling:
1. Stack the Ethernet Shield on top of the Arduino Mega board (if you do not use a freetronics EtherMega 2560 as "all in one" solution.)
2. Optionally connect a DS1307 based Real Time Clock module: SDA on pin 20, SLC on pin 21. +5V and groud have to be connected to Arduino pins as well.
3. Optionally connect an active buzzer to pin 6 (positive) and ground.
4. Optionally connect 1 to 4 DS18S20 temperture sensors to pin 2. A resistor is needed between +3.3 volts and pin 2. If more than 1 sensors are used, they are simply parallel to the 1st one. The sensores have an electronic unique ID so that the system can query their values independently. This is a nice tutorial on how to connect the chip: http://bildr.org/2011/07/ds18b20-arduino/
5. Connect relay boards to the output pins. See the table below to correlate function number (top row) to pin on the Arduino Mega board (buttom row). All output pins used are on the right side of the board.. Refer to my images for how this could look like: http://klaus30.bplaced.net/eightcontrol/.
6. Refer to the manual creating the Settings.txt file.
7. Insert the microSD card with the Settings.txt file, power the board and connect the network cable.
8. Test everything using the following test Settings.txt file (like described in detail in the manual):

IP=192.168.1.5
MAC=0x60-0xA3-0xD5-0x00-0x6F-0x22
Port=80
Gateway=192.168.1.1
Subnet=255.255.255.0
KeyA=A
KeyB=B
FunctionsA=1,2,3,10
FunctionsB=1,2,4
Name1=Light
Name2=Garage open
Name3=Garage down
Name10=Arduino Pin 31
Properties2=npl
Properties3=nnl
PINA=1234
PINB=777
Update=3


RTC                                              pins                                                               
RTC module with DS 1307 chip, using the I2C bus.
The Pin table allocates Function number 1 to 28 to Arduino Pins.

EtherMega Mega Sensor
The easy connection of peripherals (RTC, temp sensor, buzzer) on the 2 variants of board. Software is exactly the same.

Downloads and manual

Under these links you can find the server (Arduino) program, all needed libraries, and a user manual for Home Ctrl 28. The Android application has to be obtained from Google Play.

Manual only

Everything you need





Questions and Answers

Why does Home Ctrl 28 use an Arduino Mega board, which costs slightly more?
One of the limits of Eight Control was the size of the program memory. The server program almost completely fills the 32 KB memory of the "smaller" board. Home Ctrl 28 has more functionality, although it does not even require 1/4 of the memory the Mega board offers (256KB). Home Ctrl 28 also uses a higher number if I/O pins (28 vs 8).

Will Home Ctrl 28 become available for the iPhone?
Unfortunately not, due to limited resources. There might be alternatives available.

Can Eight Control and Home Ctrl be installed at the same time on one device?
Yes. They have different packages and are therefore two independent applications.

Where can I ask or give feedback?
Please send your suggestions, feedback, questions, bug reports to klpdevelop@gmail.com . I will try to help.