webbased Jquery Scheduler for home automation, sprinkler, and remote access

Hello all of you,
In my quest to find a cheap (less than 100€) IP based home automation node, I finally designed the following web pages and arduinosketch.
I post it here because you might like it enough to create a project from it.

The goal was creating a web 2.0 version of these two things:
a simple 24h programer

a sprinkler control system with some solenoid valve control output.

My scheduler has the following feature:
numerous output (depending of your arduino, I use 8 on mine)
an advanced web based UI
different type of program:

  • simple on (switch on lights at 10 in the evening)
  • simple off (switch off lights at 8 in the evening)
  • sprinkler (water for 10 minutes zone 1 then 15 minute zone B)
    naming of output (because garage_door is better than 12 :slight_smile: )
    eeprom storage of configuration (output name and program)
    ability to remotly activate/deactivat/toggle an output even by creating shortcuts or favorite on your prefered OS, mobile or probably any web based device.

my setup include

  • a webclient (firefox with jquery)
  • a cheap openwrt router (for transforming ip to serial and doing SSL)
  • an arduino pro mini 3.3V (because it's the voltage supplied by the router )
  • some relay PSU... but you can change

but It could "easily" be adapted to an IP arduino (ethernet or wifi) (because all UI are handled by jquery and javascript) assuming you can remotly store the javascript.

I included a sample in the zip attached (jquery sample UI.html) you can play with the UI, but obviously no change are commited, but you will probably understand most of its use.

All source are also in the zip, licence is GPL, if you ask.

If people are interested feel free to reply / contact me

good luck to all of you

Arduino Jquery Scheduler.zip (41.7 KB)

some screenshot (UI in english but one name are in french):

Direct control of all your output

Configuration of output naming and information of your arduino (free memory and time of day)

a sprinkler program

a simple on program

viknet, you put a lot of work into that, well done.

Will you be writing the project up somewhere?

I don't know at all, it will depend of people reactions.....
but here is a list of my "3 wishes"

1- Made it work using an ethernet shield without breaking the existing serial protool
this will made it easier for beginners to test the sketch.

2- Simplify, objectify, libraryfy :slight_smile:
I am quite proud of the serial protocol used, the code need to be cleaner but but it is very handy (1 serial command=1 C++ function)
I think the program part could be objectified, the object could even inherit from the timealarm object in a perfect world

3 - Increase feature:
percentage water for example is not yet working.
A kind of Artificial inteligence (depending of temperature and wind for example)
More program type some of them not even depending of timealarm (example linking output(s) to input(s) ).

The ideal goal of the project would be to do a generic remote controlled node for Home automation, without requiring the end user to write an arduino sketch.

But without help, people involved and interested, it will probably stay as this, plugged in my backyard, managing 2 light, a door garage and some sprinkler :slight_smile:

best regards

Viknet

Hello all of you

after some weeks, you can now access a live demo providing you understand the following

  • don't hack, you probably could
  • many user can access but they will interfere each other
  • nothing is wired behind so you won't open my garage door or flood my garden

http://sprinkler.zapto.org/arduinoJqueryUI.html

user/password viknet/viknet

IMHO the project is finished, but you might expect more information, a cleaner code, more feature or something else, If so or if you are interested, please at least say something on this thread :slight_smile:

very nice job an very interested

Nice job, really liking this! :slight_smile:

Would love to see some photos of the hardware (including sprinkler valves etc.)

As you hinted, you could extend the system to change behaviour depending on the weather - longer sprinkle if v. hot? Less/no sprinkler if it has been raining? You could install a USB weather station to determine this or perhaps grab the info from a local RSS weather feed?

I am also really interested in a web-based scheduling timer for sprinkler systems. I just finished up a project based on ATmega328 and ENC28J60 Ethernet controller. The project is documented at:
http://rayshobby.net/svc