Projects/Buitenlucht Sensorbordje: verschil tussen versies

Uit Hackerspace Amersfoort
Naar navigatie springen Naar zoeken springen
Regel 33: Regel 33:


=== Leermomentjes ===
=== Leermomentjes ===
* Weerstand R9 (bij de SGP41 sensor) is een factor 1000 te zwaar. Hierdoor werkt de stikstofsensor niet. Vervang deze met een 0805 4.7 ohm weerstandje.
* Weerstand R9 (bij de SGP41 sensor) is een factor 1000 te zwaar. Hierdoor werkt de stikstofsensor niet. Vervang deze met een 0805 4.7 ohm weerstandje
* De SGP41 werkt (met het vervangen van R9) maar de condensatoren wijken af van het referentieschema. Deze zouden eigenlijk 1uF moeten zijn


<gallery>
<gallery>

Versie van 25 nov 2025 18:57


Project Buitenlucht Sensorbordje
Naam Buitenlucht Sensorbordje
Beschrijving Meten is zweten
Website
Start 2025-10-05
Contact Polyfloyd
Status Beta


Ik ben aan het PCB designen geslagen en ben begonnen met iets wat ik al een tijdje wil: een bordje met wat sensoren om de buitenlucht thuis te meten.

sensors
Wat Sensor Bestellen Opmerkingen
Temperatuur, luchtvochtigheid, barometer Bosch BME280 Inclusief
Stikstofoxiden Sensiron SGP41 Inclusief Bekend van de stikstofcrisis :)
Fijnstof Plantower PMS7003 https://nl.aliexpress.com/item/32623909733.html
Onweer AS3935 https://nl.aliexpress.com/item/32974749991.html Let bij het bestellen op welke versie je neemt, er zijn meerdere uitvoeringen van dit bordje met verschillende pin-outs.

Onderdelen aangemerkt als inclusief worden door JLC geplaatst. De rest moet je zelf nog er bij bestellen.

Ook is er nog een footprint voor een Dallas DS18B20 tempertuursensor, mocht de BME280 niet naar smaak zijn of als je de Dallas sensoren al gebruikt en dezelfde sensor wil blijven gebruiken. De MCU is een ESP32-C3 met USB-C poort. Er zijn breakout pin-headers voor I2C en de ongebruikte GPIOs.

Versie 1.0

Uitgepakt op 2025-11-09. Het werkt! De ESP is via USB te flashen en te loggen. De BME280 werkt, de PMS7003 die ik eerder had besteld werkt.

De SGP41 heeft iets van een I2C communicatie error bij de ingebouwde self-test, maar pas nadat het zichzelf heeft geïdentificeerd met de daar voor bestemde commando's.

Leermomentjes

  • Weerstand R9 (bij de SGP41 sensor) is een factor 1000 te zwaar. Hierdoor werkt de stikstofsensor niet. Vervang deze met een 0805 4.7 ohm weerstandje
  • De SGP41 werkt (met het vervangen van R9) maar de condensatoren wijken af van het referentieschema. Deze zouden eigenlijk 1uF moeten zijn

De deelnemers voor de eerste productierun 25 oktober:

  • Polyfloyd
  • Dany
  • Elborro
  • Gopper
  • Geesejuggler

Behuizing

TODO

Esphome

https://git.polyfloyd.net/polyfloyd/esphome-config/src/branch/main/buiten.yaml

esphome:
  name: buiten
  friendly_name: Buiten

esp32:
  variant: esp32c3
  framework:
    type: esp-idf

logger:

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

ota:
  platform: esphome
  password: !secret ota_password

mqtt:
  broker: mqtt.local
  discovery: false

api:

i2c:
  sda: 2
  scl: 3
  scan: true

uart:
  - id: uart_pms7003
    rx_pin: 8
    tx_pin: 7
    baud_rate: 9600

as3935_i2c:
  address: 0x03
  irq_pin: 10
  indoor: false

sensor:
  - platform: wifi_signal
    name: "WiFi Signal dB"
    update_interval: 10s
    state_topic: esphome/buiten/wifi_signal
    retain: false

  - platform: as3935
    lightning_energy:
      name: Lightning Energy
      state_topic: sensors/buiten/lightning_energy
      retain: false
    distance:
      name: Lightning Distance
      state_topic: sensors/buiten/lightning_distance
      retain: false

  - platform: bme280_i2c
    temperature:
      id: temperature
      name: "BME280 Temperature"
      state_topic: sensors/buiten/temperature
      retain: false
    pressure:
      name: "Barometer"
      state_topic: sensors/buiten/pressure
      retain: false
    humidity:
      id: humidity
      name: "Humidity"
      state_topic: sensors/buiten/humidity
      retain: false
    address: 0x76
    update_interval: 10s

  - platform: sgp4x
    voc:
      name: "VOC Index"
      state_topic: sensors/buiten/voc_index
      retain: false
    nox:
      name: "NOx Index"
      state_topic: sensors/buiten/nox_index
      retain: false
    compensation:
      temperature_source: temperature
      humidity_source: humidity

  - platform: pmsx003
    uart_id: uart_pms7003
    type: PMSX003
    pm_1_0:
      name: "Particulates <1.0μg/m³"
      state_topic: sensors/buiten/dust_mass/pm1.0
      retain: false
    pm_2_5:
      name: "Particulates <2.5μg/m³"
      state_topic: sensors/buiten/dust_mass/pm2.5
      retain: false
    pm_10_0:
      name: "Particulates <10.0μg/m³"
      state_topic: sensors/buiten/dust_mass/pm10.0
      retain: false
    update_interval: 30s

binary_sensor:
  - platform: as3935
    name: Lightning Alert
    state_topic: sensors/buiten/lightning
    retain: false