Projects/Buitenlucht Sensorbordje: verschil tussen versies
kGeen bewerkingssamenvatting |
|||
| (20 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
| Regel 9: | Regel 9: | ||
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. | 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. | ||
{| class="wikitable" | |||
|+ sensors | |||
{| class="wikitable | |||
|+ | |||
|- | |- | ||
! Wat !! Sensor !! Bestellen !! Opmerkingen | ! Wat !! Sensor !! Bestellen !! Opmerkingen | ||
| Regel 21: | Regel 18: | ||
| Stikstofoxiden || Sensiron SGP41 || Inclusief || Bekend van de stikstofcrisis :) | | Stikstofoxiden || Sensiron SGP41 || Inclusief || Bekend van de stikstofcrisis :) | ||
|- | |- | ||
| Fijnstof || Plantower PMS7003 || https://nl.aliexpress.com/item/32623909733.html || | | Fijnstof || Plantower PMS7003 || https://nl.aliexpress.com/item/32623909733.html || Wordt geleverd inclusief pin header | ||
|- | |- | ||
| 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. | | 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. | ||
| Regel 30: | Regel 27: | ||
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. | 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. | |||
<s>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.</s> | |||
== | === Leermomentjes === | ||
* Weerstand R5 (bij de SGP41 sensor) is een factor 1000 te zwaar. <b>Hierdoor werkt de stikstofsensor niet.</b> Vervang deze met een 0805 4.7 ohm weerstandje | |||
* De SGP41 werkt (met het vervangen van R9), maar de condensator C11 zou eigenlijk 1uF moeten zijn | |||
* De VCC-trace van de SGP41 heeft een raar pad met te veel vias | |||
<gallery> | |||
File:Buitenlucht_Sensorbordje-1.jpg | |||
File:Buitenlucht_Sensorbordje-2.jpg | |||
</gallery> | |||
De deelnemers voor de eerste productierun 25 oktober: | |||
* Polyfloyd | * Polyfloyd | ||
* Dany | * Dany | ||
| Regel 40: | Regel 48: | ||
* Gopper | * Gopper | ||
* Geesejuggler | * Geesejuggler | ||
== Behuizing == | |||
* [[File:Buitensensor-pms7003-clip.stl]] | |||
TODO | |||
== Esphome == | |||
https://git.polyfloyd.net/polyfloyd/esphome-config/src/branch/main/buiten.yaml | |||
<pre> | |||
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 | |||
</pre> | |||
Huidige versie van 30 nov 2025 18:49
| 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.
| 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 | Wordt geleverd inclusief pin header |
| 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 R5 (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 condensator C11 zou eigenlijk 1uF moeten zijn
- De VCC-trace van de SGP41 heeft een raar pad met te veel vias
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