Skip to content

RobinFrcd/Senesp98

Repository files navigation

Senesp98 - Sen66 sensor with ESP32 Zigbee

Overview

This project implements a Zigbee End Device (ZED) sensor using the ESP32 platform and ESP-IDF framework. It's designed to connect to a Zigbee network and transmit sensor data from a SEN66 environmental sensor.

Features

  • Zigbee End Device implementation
  • SEN66 environmental sensor integration

Prerequisites

  • ESP-IDF development framework
  • SEN66 environmental sensor module
  • ESP32 zigbee microcontroller (tested with ESP32-H2)

Building and Running

  1. Open the project in VS Code with Remote Containers
  2. Build the project using ESP-IDF commands
  3. Flash to your ESP32 device

Hardware Connections

The SEN66 sensor connects to the ESP32 via I2C:

  • SDA -> GPIO10 (green wire)
  • SCL -> GPIO22 (yellow wire)
  • VCC -> 3.3V
  • GND -> GND

Pins can of course be changed in main/sen66_esp32.c

About SEN66

It includes following sensors:

About Zigbee

This project exposes usual clusters:

  • Temperature
  • Humidity
  • PM2.5
  • CO2

But also custom clusters that are not defined in the Zigbee standard:

  • PM1 (0xFC01)
  • PM4 (0xFC02)
  • PM10 (0xFC03)
  • VOC Index (0xFC04)
  • NOx Index (0xFC05)

For these custom clusters, we can't use IDs lower than 0x8000 because they are reserved for the standard clusters. (So we can't use the same IDs as the one defined in the Matter specification)

Zigbee2MQTT

For now, this device is not yet supported by Zigbee2MQTT. If you want to use it, you can use the external_converters feature.

You can find the definition in the sen66.js file.

License

All Sensirion's code defined in main/sen66 comes from embedded-i2c-sen66 and is under BSD 3-Clause License

About

ESP32 Integration for Sen66 sensor

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages