OK guys, here’s my update for those wanting answers in future…
This all is for a Vent-Axia (Low Carbon) Sentinel Kinetic BH (with humidity sensor). As discussed in this thread, this all depends on using Control Mode 2 on the unit to give more control over the unit’s operation.
Keeping things automatic vs manual override
According to Vent-Axia tech support, in my control mode 2, the MVHR unit will be ‘automatic’ unless overridden by one of the dry/volt-free contacts (SW1, SW2, SW3 or SW5.) Therefore, the absence of any connections on switches 1-3 means the humidity sensor and night time low fan timer will work as normal. And when you override, the unit will go to the mode and fan speed set in the commissioning menu.
All this means it satisfies my Rule 0 of Home Automation: smartness is an add-on; things should run always expected regardless of issues with smart controller, WiFi, Home Assistant etc
My recommended modes for each switch
Since, as noted above, the unit is in Normal mode ( automatic) by default, this means ‘normal’ mode is not really something that needs enforcing, but it might be good to override auto behaviour. I have therefore set up the following modes/switches combination:
- SW1 = LOW – when contact made AKA normally open
- SW2 = NORMAL – normally open
- SW3 = BOOST – normally open
- SW5 = STOP – note this switch is normally closed, so unit must have this contact made in order to run.
With these set it’s possible to enforce various fan speeds that are configured as part of commissioning the system and modes. In my case that will be normal and boost fan speeds to pass building regs, and then once they’re happy I’ll likely turn it down lower.
These work nicely with some Home Assistant automations… I can help to stop the house getting too hot, cold, stuffy etc using the temperature, door and heating (smart radiator valves) sensors. I can also save electricity - or use more of it at the right time - to better align with energy from solar panels and electricity tariff cheap/expensive periods.
Controller for these: Sonoff 4CH PRO reflashed with ESPHome
I chose this controller because it’s easy to flash, easy to wire (both normally open and normally closed terminals on the relay) and cheap-ish. I had to solder a 5 pin header to the open terminal holes to be able to flash it to start, but once flashed can be updated via wifi. I also desoldered the RF 433Mhz antenna to help avoid random signals that could switch the unit. Time will tell how good this controller is, but for now it’s an easy way to control 4 volt-free terminals without too much faff.
For those who maybe also want to use this device, my ESPHome Yaml config is below for reference… It provides:
- Working status light
- Interlocked relays, so only 1 mode/switch can be set at a time, plus a 1s gap between switching
- Fixed IP to make the unit start up much faster
- Physical buttons 1-4 mapped to the modes low, normal, boost and stop
esphome:
name: mvhr-controller
friendly_name: MVHR
esp8266:
board: esp8285
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "YOUR OWN KEY"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
manual_ip:
static_ip: ((YOUR IP))
gateway: ((YOUR GATEWAY))
subnet: 255.255.255.0
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "MVHR Controller Fallback Hotspot"
password: "YOUR BACKUP PASSWORD"
# Buttons
binary_sensor:
- platform: gpio
pin:
number: GPIO0
mode:
input: true
pullup: true
inverted: true
name: "Controller Button 1"
filters:
- delayed_on: 10ms
on_release:
then:
- switch.toggle: relay1
- platform: gpio
pin:
number: GPIO9
mode:
input: true
pullup: true
inverted: true
name: "Controller Button 2"
filters:
- delayed_on: 10ms
on_release:
then:
- switch.toggle: relay2
- platform: gpio
pin:
number: GPIO10
mode:
input: true
pullup: true
inverted: true
name: "Controller Button 3"
filters:
- delayed_on: 10ms
on_release:
then:
- switch.toggle: relay3
- platform: gpio
pin:
number: GPIO14
mode:
input: true
pullup: true
inverted: true
name: "Controller Button 4"
filters:
- delayed_on: 10ms
on_release:
then:
- switch.toggle: relay4
- platform: status
name: "Controller Status"
switch:
- platform: gpio
id: relay1
name: "Low"
pin: GPIO12
interlock: [relay2,relay3,relay4]
interlock_wait_time: 1s
- platform: gpio
id: relay2
name: "Normal"
pin: GPIO5
interlock: [relay1,relay3,relay4]
interlock_wait_time: 1s
- platform: gpio
id: relay3
name: "Boost"
pin: GPIO4
interlock: [relay1,relay2,relay4]
interlock_wait_time: 1s
- platform: gpio
id: relay4
name: "Stop"
pin: GPIO15
interlock: [relay1,relay2,relay3]
interlock_wait_time: 1s
output:
# Register the blue LED as a dimmable output ....
- platform: esp8266_pwm
id: blue_led
pin: GPIO13
light:
# ... and then make a light out of it.
- platform: status_led
id: status_light
name: "Controller Status LED"
output: blue_led
Hope this is useful to others