Page for the MacroDuino project. The aims of this project are to make it easier to get a project up and running without writing any (hopefully) code. The vision behind it is to be able to put a couple shields on an arduino, upload a sketch and have it doing what you want without spending time writing code and debugging. You could also think of it this way: if the Arduino is a rapid prototyping device than the MacroDuino code is rapid coding. You spend 5 minutes setting up the code and configuring it and you're done.
Also, I'm splitting the docs up and making more videos. Please be patient while this documentation is updated.
The MacroDuino code is broken up into several different pieces. The first are the interfaces. Right now there are two interfaces: serial and ethernet (official ethernet shield). The second part is the control. The control function takes the input from the interfaces and parses it into a command for the arduino to execute. The nice thing about this is that in order to add another interface all you need to do is write a small function that gets the input data and formats it so the control function can understand it.
Next there are macros. Macros can be anything and right now there are quite a few of them. All macros are stored in EEPROM so there's no need to worry about setting them up again if the power goes out. Macros basically watch something (pin, time, or temperature) and perform an output based on the input.
The last part are outputs. Examples of outputs are digital pins, pins on a PCF8574, an LCD display etc. These outputs are controlled via macros (and individually).
If you find something that doesn't work let me know. I may have made a mistake in the documentation. Just use the contact link above and I'll fix it ASAP.
Configuring The Code Video
Using The Webapp
Using Cosm With MacroDuino
The serial interface expects data in this format:
For example, lets say you wanted to turn pin 9 on. You would send 4/9/1.
The ethernet interface works almost the same as the serial interface. It expects a URL like this:
So to turn pin 9 on you use a URL like this: http://192.168.1.100/4/9/1
The command list is quite long, but since they are all the same format it is hopefully easy for beginners to understand. If you have any questions or suggestions feel free to email me.
*all commands are numbers*