# esp32-weatherstation2 Wetterstation v2 with ESP32 and various sensors (with ESPHome!) [![Build Status](https://drone.xd0.de/api/badges/hendrik/esp32-weatherstation/status.svg)](https://drone.xd0.de/hendrik/esp32-weatherstation) ## Hardware * ESP32 µC * Sensors ## Wiring ### Display Connect to TFT LCD Port with 10P SH1.0 cable E-Paper pin | ESP32 pin | Notes ------------|-----------|------------ 3V3 | | BUSY | nc | CS | IO14 | SCK | IO18 | MOSI | IO23 | MISO: IO19 DC | IO27 | RST | IO33 | GND | | ### BME680 I2C BME680 pin | ESP32 pin | Notes -----------|-----------|---------- VCC | 3V | GND | GND | SCL | IO22 | SDA | IO21 | SDO | nc | SPI only CS | nc | SPI only ### BH1750 (GY-302) I2C GY-302 pin | ESP32 pin | Notes -----------|-----------|---------- VCC | 3V | GND | GND | SCL | IO22 | SDA | IO21 | ADDR | nc | select addr: GND: 0x23 or VCC: 0x5C ### VEML6075 I2C GY-VEML6075 pin | ESP32 pin | Notes -----------|-----------|---------- VIN | 3V | GND | GND | SCL | IO22 | SDA | IO21 | ### SDS011 Serial (HardwareSerial2) SDS011 pin | ESP32 pin | Notes -----------|-----------|---------- TXD | IO15 | (don't use IO16 together with PSRAM) RXD | IO2 | (don't use IO17 together with PSRAM) GND | GND | 25µm | nc | 5V | VUSB | 5V 1µm | nc | NC | nc | ## Build & Install * Install ESPHome via Home-Assistant Supervisor * Upload all needed files via the "File editor" into `config/esphome/` and subdirectories. * rename secrets-example.yaml to secrets.yaml and fill in your credentials * Choose your device and flash the firmware. Use ESPHome "Install" -> "Plug into this computer". (Subsequent updates can be done wirelessly.) ### Files ``` . ├── common (components, used by the devices) │   ├── base.yaml │   ├── battery.yaml │   ├── bh1750.yaml │   ├── bme280.yaml │   ├── bme680.yaml │   ├── display.yaml │   ├── sds011.yaml │   ├── secrets.yaml │   ├── veml6075.yaml │   └── experimental (experiments, skip these) │      ├── ble.yaml │      └── webserver.yaml ├── custom (used by custom components) │   └── veml6075_custom_sensor.h ├── fonts (used by display component) │   ├── materialdesignicons-webfont.ttf │   ├── slkscr.ttf │   ├── VeraMono.ttf │   ├── Vera.ttf │   └── weather_icon_map.h ├── secrets.yaml (edit example file) │ (the individial device descriptions) ├── sensor-outdoor.yaml ├── sensor-springer.yaml ├── sensor-sz.yaml └── sensor-wz.yaml ``` ## Authors * **Hendrik** - *Initial work* - [hendrik](https://dev.xd0.de/hendrik) ## License This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details ## Acknowledgments * [ESPHome](https://esphome.io) - ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files * [Home Assistant](https://home-assistant.io) - Open source home automation that puts local control and privacy first