Skip to content

Latest commit

 

History

396 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Local Brink eBUS adapter and Homey integration

Experimental, fully local control and monitoring for Brink Excellent ventilation units using the ESP32-C3 Wi-Fi eBUS adapter. No Brink Home eModule, cloud service, Home Assistant or separate ebusd process is required.

The current implementation has been tested on:

  • Brink Excellent 400 (0x7c)
  • Brink Excellent 300 (0x3c)
  • ESP32-C3 eBUS Wi-Fi adapter hardware supported by esp-arduino-ebus
  • Homey Pro with Apps SDK v3

This repository is a collaboration snapshot, not yet a Homey App Store release. In particular, pairing still uses an explicit target list that a developer must configure before installing the app.

Repository layout

  • include/, src/, static/: ESP firmware, based on esp-arduino-ebus
  • lib/ebus-brinkfix/: vendored modified eBUS stack; GPLv3 license included
  • test/: firmware policy and API tests
  • homey-app/: Homey SDK v3 app, capabilities, Flow cards and tests
  • docs/: API, architecture and safety notes

Firmware targets

Two explicit PlatformIO environments prevent accidentally addressing the wrong Brink family:

esp32-c3-brink-semantic       -> Excellent 400, slave 0x7c
esp32-c3-brink-semantic-300   -> Excellent 300, slave 0x3c

Build one target at a time:

pio run -e esp32-c3-brink-semantic
pio run -e esp32-c3-brink-semantic-300

The firmware exposes a cached semantic HTTP API. HTTP status reads do not cause eBUS traffic. Writes are allowlisted, bounded, authenticated and never blindly retried. See docs/semantic-api.md.

Hardware warning: only use supported eBUS adapter hardware. Do not power the board through the eBUS terminals from an external supply; that can damage the transmit circuit.

Homey development setup

  1. Copy or edit homey-app/drivers/brink400/targets.js and replace the reserved example addresses and IDs with the adapters in the test installation.
  2. Flash the matching 300 or 400 firmware image.
  3. Reboot the adapter to open its five-minute initial pairing window.
  4. Install and pair the development app.
cd homey-app
npm ci
npm test
npm run validate
npx homey app run

Homey creates a random 256-bit bearer token during pairing. The ESP stores only its SHA-256 hash. A write consists of one POST followed by read-only command status polling and a targeted cache refresh.

Current Homey surface

  • fan mode and physical bypass state
  • inside/outside temperature
  • inlet and exhaust airflow
  • filter notification
  • profile 0-3 airflow settings (profile 0 is read-only)
  • bypass temperature and hysteresis
  • Flow triggers for changed mode, bypass and outside temperature
  • Flow conditions for mode, bypass and temperature relationships
  • Flow actions for mode, profile airflow and bypass settings

Provenance and licensing

The firmware history is based on Daniel Kucera's esp-arduino-ebus. The modified eBUS library originated from yuhu-/ebus and is included under GPLv3 in lib/ebus-brinkfix/LICENSE.

The upstream firmware repository currently does not contain a root license file. This repository therefore does not claim a new blanket license over that code. See NOTICE.md before redistributing firmware binaries.

Brink is a trademark of its respective owner. This is an independent community project and is not affiliated with Brink Climate Systems.

About

Local secured Brink Excellent eBUS firmware and Homey integration

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages