The homepage for this project has moved:
Check out the new site at:
http://ardomotic.com/
The new version contains many of the features described in the home page and many others.
Check out the new site at:
http://ardomotic.com/
The new version contains many of the features described in the home page and many others.
Ardomotic is implemented in a way it is easy to add and/or replace the hardware componnents to fit different needs. This page explains the details of the current hardware implementation. In the Software page will be explained what parts of the code need to change in order to adapt Ardomotic to different needs.
Current Hardware Configuration
Arduino Ethernet
Real Time Clock (DS1307)
Eeprom (24LC256)
Shift Registers (74hc595)
RF Link Transmitter (434Mhz)
The current version is being developed on a Arduino Ethernet. Any Arduino can be used, as long as it has 30KB progmem and 2KB RAM (This means it cannot be used with an old arduino running on a Atmega 168, or an old bootloader which used to take more space than the new ones).
A Real Time Clock is used to keep track of time, which is important for the Scheduler feature. There is also a nice tutorial for these types of clocks here. This clock connects to the arduino via the I2C bus. The clock is necessary for the system to work correctly. Many features can still be used without the timer though.
The EEprom is used only to store the image files that appear on the webpage. All of the settings for the devices and scheduler are saved on the Arduino flash memory (whick is only 1KB, enough for the settings but not enough for the images). The memory also connects to the arduino via the I2C bus. The EEproms are not necessary if the image files are stored in another server independently from the Arduino.
The shift registers are used to extend the number of digital outputs on the arduino. Using only 3 output pins and shift registers it is possible to get pratically any number of outputs. For more information on how shift registers work check this nice tutorial. This is optional, it is not needed unless we are planning on using a "large" (>5) number of output pins.
Finally, the RF Link transmitter is used to send orders to the Chacon wireless devices that control the lights all around the house. This transmitter uses only 1 digital pin, and can be used to control any wireless device in the 434Mhz frequency, as long as the communication protocol is known. This is only needed if we intend to control devices wirelessly. Since I found no documentation on this protocol anywere, I created an application using Arduino+Processing to decode wireless protocols.
Real Time Clock (DS1307)
Eeprom (24LC256)
Shift Registers (74hc595)
RF Link Transmitter (434Mhz)
The current version is being developed on a Arduino Ethernet. Any Arduino can be used, as long as it has 30KB progmem and 2KB RAM (This means it cannot be used with an old arduino running on a Atmega 168, or an old bootloader which used to take more space than the new ones).
A Real Time Clock is used to keep track of time, which is important for the Scheduler feature. There is also a nice tutorial for these types of clocks here. This clock connects to the arduino via the I2C bus. The clock is necessary for the system to work correctly. Many features can still be used without the timer though.
The EEprom is used only to store the image files that appear on the webpage. All of the settings for the devices and scheduler are saved on the Arduino flash memory (whick is only 1KB, enough for the settings but not enough for the images). The memory also connects to the arduino via the I2C bus. The EEproms are not necessary if the image files are stored in another server independently from the Arduino.
The shift registers are used to extend the number of digital outputs on the arduino. Using only 3 output pins and shift registers it is possible to get pratically any number of outputs. For more information on how shift registers work check this nice tutorial. This is optional, it is not needed unless we are planning on using a "large" (>5) number of output pins.
Finally, the RF Link transmitter is used to send orders to the Chacon wireless devices that control the lights all around the house. This transmitter uses only 1 digital pin, and can be used to control any wireless device in the 434Mhz frequency, as long as the communication protocol is known. This is only needed if we intend to control devices wirelessly. Since I found no documentation on this protocol anywere, I created an application using Arduino+Processing to decode wireless protocols.
Customizing the Hardware
I guess looking at the current hardware things seems more complicated than then actually are...
I used a prototyping board so that I could add or change components easily in the future, if necessary. Also installed 6 RJ-25 connectors so i could add more devices in the future, if needed. Only using 2 of them so far.
I used a prototyping board so that I could add or change components easily in the future, if necessary. Also installed 6 RJ-25 connectors so i could add more devices in the future, if needed. Only using 2 of them so far.
I will not be posting any schematics of the hardware I currently have because it's all very straightforward and each person would probably be interested in a different configuration. The tutorials I posted previously explain how to connect each of the components separately, so they are a good place to learn more about each component.
So to get your own customized version of Ardomotic working each DIY'er out there needs to think "What exactly do I want to control?", and most of the customization will depend on that answer. On the Getting Started section there are some suggestions about where to begin if you're unsure.
So to get your own customized version of Ardomotic working each DIY'er out there needs to think "What exactly do I want to control?", and most of the customization will depend on that answer. On the Getting Started section there are some suggestions about where to begin if you're unsure.