Since I have no electronics experience and no C programming experience I was hoping someone would walk me through project design and debug. My programming experience is limited to heavy bash and expect languages.
Screen with navigation buttons
Hard coded 7 day set temps as variables in the program source
Hard coded variable in program to define manual override minutes/hours (2hr default)
*External wireless outdoor temperature probe to determine heat or cool mode.
*Set points for hot/cold
Variable to allow float set temps eg 3 degrees for more efficiency.
The idea on a 95 degree day if night temps drop into the 30s or 40s the thermostat is smart enough to switch to heat mode and maintain the low set temp and daytime high set temp and if manually adjusted set a countdown timer for two hours to return to the program routine temps.
I found someones project and would like to build on it - AvBrand.com - Projects - Thermostat
Remote wireless interfacing would be nice to have or add down the road when full home automation comes into play.
Ultimately I would like to have low and high target temps and set the internal temp relative to the outside temp. So a 99 degree day should only attempt to cool to 79deg versus 84 deg day we could push 74 inside.
I could do this easily in bash with a serial port and Dallas one wire temp sensor so this should be fairly easy. Can anyone help put this together?
The external wireless probes are the trickiest bit, imo. If you wanted to interface to commercial wireless sensors you need the smarts to implement your own receiver hardware and software, or find somebody else who has done it for you. It's possible, but hardly suitable for your first project. If you have the option of putting an Arduino at the remote sensor using a radio link back to another Arduino doing the control stuff you have a solution that would be easier to design, but then you need to package and power the remote Arduino. Depending on your situation that might be quite hard.
I have an unlocked android 2.1 phone if that could be used as an inteface and network bridge (bluetooth to wifi). Would that make it more complicated or easier to design?
With all due respect, you have a hammer, and everything looks like a nail. If you want to use an Arduino properly, you need to invest some time in learning C. The IDE makes that fairly painless, removing some of the drudgery of function prototypes and whatnot, but you're still expected to make an effort.
Your options otherwise are limited to piecing together others' code and projects, or patching together a Rube Goldberg device, or hoping someone else might be bored or interested enough to do the work for you. (That sometimes happens, but don't count on it.)
Bash scripting is like digging a trench with a spoon, so with a fully-fledged programming language at your disposal, options abound. You've already wrapped your head around programming theory, so it's mainly just syntax now.
Start with some simple projects. Use demo code, make edits, learn the hardware and the syntax, and you'll be able to put pieces of your project together in no time.
As far as wireless temperature readings go, If you're not looking to invest too much time/money into it, then I would recommended a simple standalone Arduino unit with some cheap RF transmitter/receiver combo; I manged to build a handful of them for around $10 each. Using the VirtualWire library, it's very easy to program.