Skip to the content.

micronova_controller ESP8266 ESP32

I sell on Tindie Donate with PayPal

Kits are available on Tindie!
Currently out of stock. V2 will be in stock soon!
Here is an overview of the additions:

This Arduino program allows to control easily via MQTT a pellet stove equipped with a MicroNova mainboard.

Working with

all stoves equipped with MicroNova mainboard.

Known brands - AMG S.p.A. (Artel, Kalor, Tepor, Foco, Adler) - Anselmo Cola - Boreal - Bronpi - Cadel - Clam - Corisit S.r.l. (Lincar, Vulcania, Arce) - Ecoteck - EL.FIRE - EOSS - EvaCalor - Fontana Calore - Fonte Flamme - Galletti - Globe-Fire - Italiana Camini - Jolly Mec - Karmek - Kepo - Klover - Laminox - LMX - La Nordica S.p.A (Extraflame, Dal Zotto) - Lorflam - MCZ (Brisach, Cadel, FreePoint, Pegaso, Red) - Moretti Design - Nordic Fire - Sicalor - Stufe a pellet Italia - Tecnoflam - Termoflam - Thermoflux - TS - Ungaro - Zibro

Confirmed working with

What you need

A kit or:

The circuit

image

Enable_RX is D2 (GPIO4) on ESP8266 or GPIO35 on ESP32.
RX is D3 (GPIO0) on ESP8266 or GPIO32 on ESP32.
TX is D4 (GPIO2) on ESP8266 or GPIO33 on ESP32.

The optocouplers are used to convert between 3.3V and 5V logic and also to protect the pellet stove and the ESP from each other in case of problem.

Stove’s mainboard pinout

There is a 4 pin connector (CN13 or SERIALE) with 5V, 20V, Serial, GND:

Schematics

Connector Drawing

MicroNova protocol

Explained here under “Micronova protocol”.

Uploading firmware

With esptool or NodeMCU PyFlasher

Configure WiFi and the MQTT broker URL

MQTT details

First of all, if you use Home Assistant read this paragraph.

The different topics

Controlling the stove

Reset all settings

If you want to reset all the settings here is what you can do:

switch:
  - platform: mqtt
    name: ""    #E.g. "Living room"
    state_topic: "mqtt_topic/onoff"    #You have to edit that
    command_topic: "mqtt_topic/intopic"    #Also that
    payload_on: "ON"
    payload_off: "OFF"
    state_on: "ON"
    state_off: "OFF"
    retain: false
    optimistic: false
    qos: 0
    icon: mdi:fire
sensor:
  - platform: mqtt
    name: ""    #E.g. "Stove controller power state living room"
    state_topic: "mqtt_topic/pong"
    qos: 0
    icon: mdi:power
  - platform: mqtt
    name: ""    #E.g. "Living room"
    state_topic: "mqtt_topic/ambtemp"
    qos: 0
    unit_of_measurement: "ºC"
    icon: mdi:thermometer
  - platform: mqtt
    name: ""    #E.g. "Fumes temp living room"
    state_topic: "mqtt_topic/fumetemp"
    qos: 0
    unit_of_measurement: "°C"
    icon: mdi:thermometer
  - platform: mqtt
    name: ""    #E.g. "Stove state living room"
    state_topic: "mqtt_topic/state"
    qos: 0
    icon: mdi:fire-alert
  - platform: mqtt
    name: ""    #E.g. "Flame power living room"
    state_topic: "mqtt_topic/flamepower"
    qos: 0
    unit_of_measurement: "%"
    icon: mdi:fire
    #Uncomment below if you own an hydro stove
#  - platform: mqtt
#    name: ""    #E.g. "Water temp living room"
#    state_topic: "mqtt_topic/watertemp"
#    qos: 0
#    unit_of_measurement: "ºC"
#    icon: mdi:coolant-temperature
#  - platform: mqtt
#    name: ""    #E.g. "Water pressure living room"
#    state_topic: "mqtt_topic/waterpres"
#    qos: 0
#    unit_of_measurement: "bar"
#    icon: mdi:gauge

Thanks

Thanks to @pedrware for the photo of the mainboard and his explanations of some of the problems encountered.
Thanks to ridiculouslab for his analysis of the serial protocol.

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Disclaimer

THIS SOFTWARE IS PROVIDED “AS IS” AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.