I’m doing something similar with nodemcus and d1 minis all running espeasy. The temp reporters are run from a 18650 that goes about a month between charges reporting every 3 minutes. Each vent/register has an esp with a l293d actuating the motor of a vent miser (ebay). Then i have an esp hooked up to the furnace. I can interrupt the blower speed and choose whatever speed and either stage heating via an 8 channel relay. The d1 minis run under cabinet lighting and one has a lux sensor on it to determine on/off.
As I’m not much for coding all my 8266s run espeasy which allowed my to focus on my rules and the actual automation.