I'm a bit impatient, and really wanted to get this project going ASAP.
I ended up using WeMos Minis, as I found a really good deal on a lot of 8 of them, and I had already experimented with 2 of them to get the basic principal working. I think they are basically ESP-12s with a USB to Serial built in. I'm using one for the attic, the others for the room modules. I needed 7 servo outputs so the 8 digital IO pins worked out great. I chose the WeMos mini for ease of programming (built in USB to serial) so if I ever need to tweak anything on a room module, it'd be as simple as plugging in the USB cable and clicking upload. I also like the additional digital pins. Right now each room has a TM1637 4 digit LED screen to display the room's current temperature, and will soon replace this with a OLED screen to display current temp, desired temp, and valve status for each room. I'll need those additional GPIO pins for the OLED screen so another reason I went with the WeMos Mini. I'm using the arduino IDE on them, and it turned out a lot easier than i thought. The WiFi range on them is great too! Much better than expected, and much better than some online have lead to believe. I have a total of 4 APs in my home, and oddly enough all of them connect to a single AP with no issues. I've had 2 of them up and running with the code for almost 2 weeks now with no issues.
To address some of the concerns posted about. Some I have thought about, some I have not and have begun planning for those circumstances.
1) The valves will never fully close. For proper humidity control, and to help prevent the evaporator from freezing (although I don't think that's a real concern, I'll post why below), the valve's "closed" position will actually be about 35% open. This way the amount of airflow has been limited enough to prevent the room from getting too cold (or hot in the winter) but still enough airflow to control humidity as well as not over tax the blower fan.
2) I plan on adding some features to the unit in the attic. One of which will be some type of logic to over ride the thermostat. Unfortunately the honeywell thermostat is near impossible to interface with on a web basis. The thermostat only looks for updates on the honeywell server, and honeywell will not release any type of API. Only thing I can do is rig up simple transistors to "press" the buttons on the thermostat, or use relays to over ride the 24V thermostat wiring going to the air handler logic board.
For right now, what I plan on doing is "adding up" the open/close logic channel on thingspeak, so if 5/7 of the rooms are already at the desired temperature, i will over ride the A/C's call to turn A/C on. This will simply turn a relay off, taking away the A/C call to the air handler. The thermostat will still be sending the "on" signal, but it will be interrupted before getting to the air handler's logic board. When enough of the room's temperatures begin to raise then the relay will close, allowing the main thermostat's signal to reach the air handler and command the compressor back on again.
I think this will eventually be a "tuning" thing. I will re-vamp my schedule on the thermostat once I "learn" how the house is going to re-act with each room's own temperature control.
Also my blower fan does have 2 speeds, but the current thermostat is only utilizing one. It's a simple 3 wire setup. One common hot, the other two select the speed. One connected to hot is low, the other connected to hot is high (US 240V motor, no neutral). My air handler does also have a thermistor in the evaporator so in the event of the evaporator reaching below 34F it will shut down the compressor automatically. Most newer systems have this so I'm not worried about the evaporator freezing up. I also have a 5-2-1- hard start system on my compressor that greatly reduces stress on startup of the compressor. My LRA (locked rotor amps) went from over 100Amps on startup to under 50! This is a 4.5 ton unit by the way. It also has a bleed down valve to keep pressure off the compressor for frequent re-starts. There is also a timer feature built in to prevent too frequent of a re-start on the compressor.
My long term goals are to replace my honeywell wifi thermostat with my own that I'm going to build, either using another arduino, or possibly a raspberry pi. I really need to learn more about C programming first. This is my first project and I am literally learning as I go, working off of already working code and examples and tweaking them until it does what i want to do. Unfortunately that's the only way I can learn. I can't read a book and just go. I am learning it faster than I thought I would, and the fact that I'm getting results means I am eager and willing to read more and more about programming to learn.
I also chose to use Thingspeak to get the project off the ground as soon as possible. It suits itself very well for my project and was a breeze to get up and running. I think I'll eventually run the Thingspeak server software on my own machine, but in the meantime I'm using their servers.
To detail what it is doing I made a short video... There is more than one way to skin a cat, and I'm sure there's hundreds of different and/or better ways to do what I want, but the way I have it works, was easy to setup, and I had a blast doing it.