It's been a while since my last blog post, but a lot of progress has been made!
It looks like the programing is complete at this point. The Arduino based modifications that I am completing were based upon the inspiration, encouragement, and hard work of Tim Hirzel.
The major departure that I made from Tim's design of the hardware and software, with a huge amount of programing help from my friend Arnold, was to switch to a 6-button interface for input rather than using the Wii nunchuck. The 6-button interface that I'm using, is physically really made of three buttons. One directional button (up, down, right, left) and then two buttons like those on the Wii nunchuck (i.e., C and Z). The functions are the same as the way Tim's Wii nunchuck works.
The button's that I am using are from Sparkfun, and they come in a three button set called:
The other significant departure from Tim's design centered around using the Opto 22 IAC5 optosiolators, and PB4 data acquisition control board so that Silvia's face panel switches operate in all respect like a virgin (i.e., even the indicator lcd's work as in the original)
So the function controls that this modification has made possible are:
- PID Brew and Steam temp control within + / - 0.5 deg F.
- Ability to tune the PID algorithm and therefore control the time / temperature response.
- Resettable shot timer, that starts automatically when the brew button is pushed to start the brew.
- Ability to set two wake-up times (morning and afternoon) so Arduino automatically turns Silvia on whenever set to do so.
- A sleep timer, so that Arduino puts Silvia to sleep, whenever set to do so.
- A "forced" sleep function - can put Silvia to sleep with out waiting for the sleep timer.
- Day Month Date Time read out on LCD.
- Water level alarm - that prints the need to add water to the LCD (using an external tank sensor).
At this point I have all of the code posted under the name Silvia's Button Brain. Re-writing the code took a lot of effort to enable the functions listed above. It required a re-write of the code itself, and a change from Tim's organization of the Arduino libraries. The code compiles under Arduino 0010 (and probably not under other versions). So if you want to use this version of the code, be sure to copy both Silvia's Button Brain Code and Silvia's Libraries. A great place to learn more about the variations is to look at the Arduino Wiki CoffeeTronics.
Thanks again to Tim, Karl, Arnold... and everyone who has offered help and suggestions.
I am now, making the project box that will hold Arduino close to Silvia. It will be mounted like A Tail about Silvia and then put it all together! It is being constructed out of 0.25" aluminum sheet. I already have all of the pieces cut and milled, and will be welding this week! After that, a little finishing.... then on to anodizing.
Will post more as it progresses!