Vallox RS-485 MQTT gateway to integrate Vallox RS485 ventilation device to Home Assistant via MQTT.

Vallox RS485 MQTT gateway for Home Assistant

Overview

This rs485 mqtt gateway can be used to publish events from Vallox rs485 serial bus to mqtt and send commands to Vallox devices via mqtt.

It supports Home Assistant MQTT Discovery but can also be used without Home Assistant.

Only requirement is MQTT Broker to connect to.

Supported features

Supports following features:

  • Home Assistant MQTT discovery, published device automatically to Home Assistant
  • Published regular intervals:
    • Ventilation fan speed
    • Outside temperature (sensor.temperature_incoming_outside)
    • Incoming temperature (sensor.temperature_incoming_inside)
    • Inside temperature (sensor.temperature_outgoing_inside)
    • Exhaust temperature (sensor.temperature_outgoing_outside)
  • Change ventilation speed

Supported devices

Use at your own risk.

Only tested with:

  • Vallox Digit SE model 3500 SE made in 2001 (one with old led panel, no lcd panel)

Might work with other Vallox devices with rs485 bus. There probably are some differences between different devices. If there are those probably are easy to adapt to.

The application itself has been tested running on Raspberry Pi 3, but probably works just fine with Raspberry Zero or anything running linux.

Quality RS485 adapter should be used, there can be strange problems with low quality ones.

Example usecase

Can be used to monitor and command Vallox ventilation device with Home Assistant. Raspberry Pi with properer usb to rs485 adapter can act as a gateway between Vallox and MQTT (and Home Assistant). Automation can be built to increase the speed in case of high CO2 or high humidity even if the Vallox device is not installed with co2 and humidity sensors.

Home Assistant Card screenshots

Speed select and graph: outdoor temp grap

Temperature graph: outdoor temp grap

Outdoor temperature graph: outdoor temp grap

Configuration

Application is configure with environment variables

variable required default description
SERIAL_DEVICE x serial device, for example /dev/ttyUSB0
MQTT_URL x mqtt url, for example tcp://10.1.2.3:8883
MQTT_USER mqtt username
MQTT_PASSWORD mqtt password
MQTT_CLIENT_ID vallox mqtt client id
DEBUG false enable debug output, true/false
ENABLE_WRITE false enable sending commands/writing to bus, true/false
SPEED_MIN 1 minimum speed for the device, between 1-8. Used for HA discovery to have correct min value in UI
ENABLE_RAW false enable sending raw events to mqtt, otherwise only known changes are sent

Usage

For example with following script

#!/bin/sh

# Change to your real rs485 device
export SERIAL_DEVICE=/dev/ttyUSB0
# Change to your real mqtt url
export MQTT_URL=tcp://localhost:8883

./vallox-mqtt

MQTT Topics used

  • homeassistant/status subscribe to HA status changes
  • vallox/fan/set subscribe to fan speed commands
  • vallox/fan/speed publish fan speeds
  • vallox/temperature_incoming_outside Outdoor temperature
  • vallox/temperature_incoming_inside Incoming temperature
  • vallox/temperature_outgoing_inside Inside temperature
  • vallox/temperature_outgoing_outside Exhaust temperature
  • vallox/raw/# Raw register value changes (if raw values are enabled)
Similar Resources

An embeddable lightweight Go/Golang MQTT broker(server) for IoT.

An embeddable lightweight Go/Golang MQTT broker(server) for IoT.

Snple MQTT 简体中文 Note: The API of this library is still unstable and has not been sufficiently tested, please do not use it in production environments.

Sep 12, 2022

mqtt-rewriter is a tool that can forward data from a topic to another topic.

mqtt-rewriter Background mqtt-rewriter is a tool that can forward data from a topic to another topic. Install Todo... Usage Currently only supports tw

Feb 18, 2022

A robust and easy to use MQTT rule engine

A robust and easy to use MQTT rule engine

⚙ MQTT COMMANDER A robust and easy to use MQTT rule engine Configure your MQTT Rules via easy to use YML Files Supports JSON encoded MQTT Messages Sup

Sep 21, 2022

Send IR command through MQTT

Introduction This program can be used in two different modes: Either it is waiting for an id button on a MQTT topic and execute the corresponding LIRC

Nov 9, 2022

Smq - Simple MQTT Broker with golang

Simple MQTT Broker 关于 Golang MQTT Broker, Version 3.1.1, and Compatible for ecli

Jul 7, 2022

Courier Golang client library provides an opinionated wrapper over paho MQTT library to add features on top of it

Courier Golang Client Library Introduction Courier Golang client library provides an opinionated wrapper over paho MQTT library to add features on top

Nov 19, 2022

Raspberry pi project that controls jack-o-lantern via servo motor and PIR motion sensors

Raspberry pi project that controls jack-o-lantern via servo motor and PIR motion sensors

pumpkin-pi 🎃 Raspberry pi project that controls jack-o-lantern via servo motor and PIR motion sensors to simulate it "watching" you. Inspired by Ryde

Sep 13, 2022

lirc.go - a library to send and receive via lircd

LIRC Go client for Linux Infrared Remote Control (LIRC) package Usage package main import ( "github.com/chbmuc/lirc" "log" "time" ) func keyPo

Oct 24, 2022

Sensirion SCD30 CO2 sensor MQTT gateway with Home Assistant MQTT discovery

Sensirion SCD30 CO2 sensor MQTT gateway for Home Assistant Overview This gateway can be used to publish measurements SCD30 to mqtt. It supports Home A

Oct 10, 2022

The included device-simple example device service demonstrates basic usage of device-sdk-go

device-simple The included device-simple example device service demonstrates basic usage of device-sdk-go. Protocol Driver To make a functional Device

Oct 9, 2021

Home Assistant custom integration for e-distribución

Home Assistant custom integration for e-distribución

DEPRECATED! En primer lugar, gracias a todos por vuestra participación identificando fallos o proponiendo mejoras, pero debido a los últimos movimient

Sep 7, 2022

Home Assistant screenshot capture web server suitable for e-ink displays

hass-shooter hass-shooter is a Home Assistant screenshot capture web server suitable for e-ink displays. Dependencies Chromium ImageMagick Installatio

Jan 28, 2022

Dwarka - API gateway offers REST API to manage various device controlled using MQTT protocol

dwarka API gateway offers REST API to manage various device controlled using 'MQ

Sep 16, 2022

protoc-gen-grpc-gateway-ts is a Typescript client generator for the grpc-gateway project. It generates idiomatic Typescript clients that connect the web frontend and golang backend fronted by grpc-gateway.

protoc-gen-grpc-gateway-ts protoc-gen-grpc-gateway-ts is a Typescript client generator for the grpc-gateway project. It generates idiomatic Typescript

Dec 19, 2022

LLS-Exporter exports fuel level sensor data (rs-485 lls protocol) as prometheus metrics

LLS Exporter LLS Exporter reads rs485/rs232 data from serial port, decodes lls protocol and exports fuel level sensor data as prometheus metrics. Lice

Dec 14, 2021

Our notification system simplifies the process of sending notifications via email, SMS, and push notifications for multiple applications. It supports multiple providers, customizable templates, and is easy to integrate into any application.

Our notification system simplifies the process of sending notifications via email, SMS, and push notifications for multiple applications. It supports multiple providers, customizable templates, and is easy to integrate into any application.

Simplify Notification Management with Customizable Templates and Multi-Provider Integration ⭐️ Why Envoyer Nowadays, notifications play a crucial role

May 11, 2023

Gmqtt is a flexible, high-performance MQTT broker library that fully implements the MQTT protocol V3.1.1 and V5 in golang

中文文档 Gmqtt News: MQTT V5 is now supported. But due to those new features in v5, there area lots of breaking changes. If you have any migration problem

Jan 5, 2023

Lg-ess-mqtt - MQTT Firmware Extension for 1st generation LG ESS BESS

lg-ess-mqtt This projects is a firmware extension for the 1st generation LG ESS

Oct 19, 2022

Webserver I built to serve Infura endpoints. Deployable via k8s and AWS EKS. Load testable via k6 tooling, and montiorable via prometheus and grafana

Infura Web Server Welcome to my verion of the take home project. I've created a webserver written in go to serve Infura api data over 3 possible data

Nov 15, 2022
Dwarka - API gateway offers REST API to manage various device controlled using MQTT protocol

dwarka API gateway offers REST API to manage various device controlled using 'MQ

Sep 16, 2022
Lg-ess-mqtt - MQTT Firmware Extension for 1st generation LG ESS BESS

lg-ess-mqtt This projects is a firmware extension for the 1st generation LG ESS

Oct 19, 2022
Simple BLE to MQTT gateway

BLE_to_MQTT_gw Simple BLE to MQTT gateway This app will scan for the Eddystone BLE advertisement packets from my ESP32 BLE sensor, and forward tempera

Dec 29, 2021
Industrial IoT Messaging and Device Management Platform
Industrial IoT Messaging and Device Management Platform

Mainflux Mainflux is modern, scalable, secure, open-source, and patent-free IoT cloud platform written in Go. It accepts user and thing (sensor, actua

Dec 31, 2022
Whichip: discover (IoT) device's IP in local network
Whichip: discover (IoT) device's IP in local network

whichip: discover (IoT) device's IP in local network Install On (IoT) Device wget -O install.sh

Dec 8, 2021
Hermes is a tiny MQTT compatible broker written in Go.

Hermes Hermes is a tiny MQTT compatible broker written in Go. The goals of the project are as below Easy to compile, and run Tiny footprint Extensible

Sep 9, 2022
IP Camera Alarm Server to MQTT

IP Camera Alarm Server Universal Alarm Server for all your IP cameras in one place! Integrates well with Home Assistant, Node-Red, etc. Runs great on

Dec 8, 2022
handle multiple mqtt server/cluster based on paho client

pakhshi Introduction Consider you have an array of brokers but you want to publish and subscribe on all of them at the same time. Why you may need thi

Nov 9, 2022
Generic Prometheus ⟷ MQTT Bridge

Promqtt: Prometheus ⟷ MQTT Bridge Promqtt makes Prometheus MQTT capable in a truly generic way. It has no assumptions on message payloads or topic lay

Sep 18, 2022
MQTTtimer is based mqtt protocol sync timer

MQTTTimer is based mqtt protocol sync timer. You can used ntp sync time protocol in IoT without ntp server. used mqtt protocol sync time is tcp connne

Oct 27, 2021