zigbee weather station using sensors from WH-SP-WS02
Overview of Components:
- BME280: Measures temperature, humidity, and pressure.
- Tipping Bucket: Measures rainfall with each tip corresponding to 0.2794 mm.
- Anemometer: Measures wind speed, with each tip corresponding to 1.492 mph.
- Wind Vane: A resistive sensor with 16 positions that can indicate wind direction.
Libraries and Tools:
- Z-Stack (Zigbee Stack): The CC2530 uses the Z-Stack firmware for Zigbee. This provides the Zigbee protocol stack and the tools to create Zigbee devices.
- I2C for BME280: You'll need the I2C interface to communicate with the BME280.
- GPIO for Tipping Bucket, Anemometer, and Wind Vane: These sensors can be read using the GPIO pins, either as interrupts or polling.
/project-folder
├── main.c // Main application code
├── main.h // Header file for main
│
├── zigbee_comm.c // Zigbee communication functions
├── zigbee_comm.h // Header for Zigbee communication functions
│
├── sensors // Directory for sensor-related files
│ ├── bme280.c // BME280 sensor driver
│ ├── bme280.h // Header for BME280 sensor
│ ├── wind_vane.c // Wind Vane sensor driver
│ ├── wind_vane.h // Header for Wind Vane sensor
│ ├── rain_gauge.c // Rain Gauge sensor driver
│ ├── rain_gauge.h // Header for Rain Gauge sensor
│ └── anemometer.c // Anemometer sensor driver
│ └── anemometer.h // Header for Anemometer sensor