Skip to content

This repository contains a project for creating a Zigbee Plant Sensor end device. The end goal is to create an energy efficient, battery powered solution for monitoring house plants.

Notifications You must be signed in to change notification settings

TheLarsinator/zigbee-plant-sensor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zigbee Plant Sensor

This repository contains a project for creating a Zigbee Plant Sensor end device. The end goal is to create an energy efficient, battery powered solution for monitoring house plants. The device should be battery powered, and ideally last 2 months on a 1200 mAh battery.

When installed and powered, the device will report:

  • Soil Moisture
  • Illuminance
  • Ambient Temperature
  • Ambient Humidity
  • Remaining Battery

The project is tested and developed for integrating with Zigbee2MQTT and Home Assistant.

image

image

Electrical Hardware

The current version of the device uses the following components:

  • Custom PCB (Part of this repository)
  • XIAO ESP32-C6
  • AHT30 breakout module
    • Can be subsituted for a BME280 if a barometer is desired
  • BH1750 breakout module
  • HW390 capacitive moisture sensor
  • 2x 200k Ohm resistors
  • 2x 4 pin female header
  • 2x 7 pin female header
  • 2 pin screw terminal
  • JST-PH female SMD connector
  • LiPo battery with JST-PH connector (I use this)

Software

The current version of the software is developed using the Arduino platform, and is delivered in the form of a single sketch. Required libraries are:

Mechanical Hardware

The current casing can be 3D printed using the STLs in the 3d-prints folder. I have succesfully printed these in PETG, however the casing is hard to assemble without breaking. The design has to be improved. Known issues:

  • Lid is hard to attach as the lips on the casing are fragile
  • The PCB cannot be angled enough with the PCB through the slit to slide onto the sticks

image

Assembly Instructions

  1. Solder the following components onto the PCB:
    • 7-pin headers
    • 4-pin headers
      • Use the horizontal 4-pin header marked temperature if the AHT30 is to be used.
      • Use the vertical 4-pin header marked barometer if the BME280 is to be used.
    • 2-pin screw terminal
    • JST-PH female SMD connector
    • HW390 moisture sensor

image

  1. Solder a positive and negative wire to the battery pins of the XIAO ESP32-C6

image

  1. Connect the wires of the XIAO ESP32-C6 to the screw terminal. Note the polarity!

image

  1. Mount the AHT30/BME280 and the BH1750 to the 4-pin headers. The PCB is now ready.

image

  1. The battery goes into the bottom of the case. Connect it to the PCB and slide the PCB in. Finally close the lid and install the device in a plant pot.

image

Understanding the blinking

The onboard LED on the XIAO ESP32-C6 will blink with the following patterns:

  • Slow blinking for 3 seconds
    • Occurs when the device is connecting to the Zigbee Network
  • Slow blinking for 10 seconds
    • Occurs when the boot button was pressed and is kept pressed after the Zigbee Connect. This will result in a Zigbee Factory Reset.
  • Fast blinking for 45 seconds
    • Occurs the first 2 boots, to give the devices time to complete the interview procedure

About

This repository contains a project for creating a Zigbee Plant Sensor end device. The end goal is to create an energy efficient, battery powered solution for monitoring house plants.

Resources

Stars

Watchers

Forks