Hello Marat,
Last question first: yes, MQTT for everything. The devil is in the details :)
Ha. Either I wasn't smart enough to look for a multi relay board, or
they were not available at the time, but this is what I got two years
ago:
https://www.amazon.com/gp/product/B01NACU547 - you can use
several of them by connecting them to different pins (one goes on top,
and extras go separately, fits the breadboard). But I guess I'll get
myself a multi relay board so I could reproduce your setup - will
update on the exact product after I buy it and confirm it works.
What made you want to use that component instead of a simple switch?
https://esphome.io/components/switch/index.html From what I know about
modern dampers, they are switch operated and move smoothly (though
yes, they do take some time). I'd say taking time to open/close into
account is an unnecessary complication, given the inertia of the whole
system. DZ keeps all dampers open when the HVAC units are off, so
there will not be extra stress due to excess static pressure.
What is the damper hardware that you're using?
> Ideally, I would like to be able to 'modulate' the airflow, not just cut rooms off, but this was the easiest thing I could think of, before I found out about your project!
This would be a bit tricky to do - DZ does support modulating dampers
as a concept (and works very well with them), however, there is no
standard protocol for them that I know about. There were several ideas
in the works - the most DZ compatible is to use the ESPHome Servo
component as that is a drop-in update for the existing control
component, also possible is PWM, and the most exotic and not yet
finished is the stepper.
> My original idea was that each damper+relay board would be a separate ESPHome thermostat, to serve as 'zone thermostat' - and the heating and cooling actions (a term in ESPhome 'thermostat' platform that specifies which actions to take, when you need to heat or cool - i.e. turn on AC) would send demands to an integration in HASS (Which I would have to write, and which would be able to react to different events... And which I want to avoid doing)
I like the last sentence :)
The difference between the way DZ does things and what other systems
[that I know of] do is, DZ feeds the *analog* signal into the zone
controller, whereas others feed on/off. Hence, it would be inadvisable
to use external thermostats, as it will severely degrade control
quality. The opposite is possible, though, you can feed DZ's HVAC
control signal into external HVAC systems.
> > Also, what hardware do you use to control your AC units?
> For my ducted Gree I have their official modbus controller which is connected to yet another ESPHome, and that one has thermostat component which switches the AC on and off or from heat to cool.
Having thought a bit about that... It is possible to coerce DZ to
issue a control signal to an ESPHome thermostat to turn the unit on or
off (specifically, the zone controller output). Not the nicest option,
and I hope to avoid it, it's an ugly hack.
Word of warning: DZ doesn't like the switch between heating and
cooling. The reason is, at some point I realized that heating and
cooling configuration for the house are totally, absolutely,
completely different, up to the point of using sensors in different
locations to control the same vents and HVAC units. It is easier to
just shut it down, point it to the different configuration and start
again.
Having said that... if the wheel squeaks loudly enough, this may get
done. I have a pretty clear idea about how to do it, just never got to
it.
> I tried using the Gree controller and its own sensors, but they're very weird, so instead I just set the wall controller to +16 when I need to cool down the house, or +30 when I need heat, and let ESPHome do the thinking. I have a bunch of zigbee and BLE sensors around the house, that are aggregated into an average value by HASS. The end result is that my office gets +27, and baby bedroom +21 -_-
Like that joke about the average temperature around the hospital,
including the morgue? :)
I'm curious, what ZigBee and BLE hardware you're using? You may have
noticed that there are basically two wireless interfaces DZ supports
natively - XBee (including the hardware driver) and MQTT, but
supporting more was always on my radar. From what I remember, Home
Assistant doesn't like ZigBee and Z-Wave that much, and (just took a
brief glance) BLE support is not that reliable on ESP, plus I don't
know if it'll satisfy my range requirements - but it might work for
others.
> For my panasonic wall split, I have another ESPHome on an ESP32 with 5V-3.3V Logic Converter and that esp32 runs this custom component -
https://github.com/DomiStyle/esphome-panasonic-ac. I also thought that I would send commands by MQTT to this machine to turn it on or off.
Having taken a look at the project - I'd very much prefer to control
it over MQTT than to get in its guts. I blame Friday night, but I
didn't see the MQTT protocol description there. Did I miss it, or did
you mean to control its Home Assistant representation over MQTT? I
suspect the latter; it looks like the project is an extension of the
standard Climate component and yes, the ugly hack above will be
necessary to control that. Let me sleep on it.
> Sorry for a wall of text :) Wanted to make sure I don't miss anything.
No worries, we're in for a long haul. There are no stupid questions,
there are stupid answers.
> So, TL;DR - I probably need to make DZ send commands to ESPHome through MQTT?
Yep.
I just realized that so far DZ is a perfect MQTT consumer, but I don't
remember the status of it being an MQTT command producer - I know I
did it with at least Home Assistant and mqtt-automation-hat-go, but
don't remember HOW I did that off the top of my head. nor does it seem
documented. Let me go and dust that off.
[re-reading the whole message and correlating it to docs at the site]
Gawd, bit rot. ESPHome integration is much simpler by now, I need to
fix the docs.
> > I never got to officially running it in a Docker container, but if you can package that and care to submit a PR - that'll be most welcome.
> Sure, this I can definitely do, then it can run on my home kubernetes. I just need to figure out how to integrate DZ into the rest of my setup first :)
The first thing to do would be to figure out the system configuration,
zones, sensors, and actuators. I'd highly recommend mating it with
InfluxDB so that you can see the whole system in action. The best part
is, you don't have to have it all running at the same time -
individual components can be activated and instrumented, assuming
they're upstream in the dependency chain.
Here's some starting points:
https://github.com/home-climate-control/dz/wiki/HOWTO:-DZ-as-an-MQTT-Publisher
- this will make DZ visible to MQTT consumers, in particular, Home
Assistant
https://github.com/home-climate-control/dz/wiki/HOWTO:-DZ-to-Home-Assistant-integration
- the opposite
https://github.com/home-climate-control/dz/wiki/HOWTO:-MQTT-Sensors -
this should work, but is obsolete, update is coming
Good luck. More to come.
--vt