Hello
I placed new Airgradinet sensor next to Vindstryka. It looks like Particle concentration readings are quite noise with Airgradient. Please see comparizon:
Thanks
Hello
I placed new Airgradinet sensor next to Vindstryka. It looks like Particle concentration readings are quite noise with Airgradient. Please see comparizon:
Thanks
The Airgradient numbers seem smaller overall, but since the overall scale of the graphs has changed significantly, it may look like it has more noise/jumping around, but each line is 0.5 ug, compared to the top graph where each line is 1.0 ug.
Are you able to overlay these two on to a single graph and maybe only show one measurement, like the 2.5 value to give a better comparison?
Is the frequency of measurement of both sensors the same and is any of the sensors doing a moving average?
This is Vindstryka:
# I2C config as SEN54 is connected on that bus
i2c:
scl: GPIO21
sda: GPIO22
scan: true
id: bus_a
# Example configuration entry
sensor:
- platform: sen5x
id: sen54
pm_1_0:
name: " PM <1µm Weight concentration"
id: pm_1_0
accuracy_decimals: 1
pm_2_5:
name: " PM <2.5µm Weight concentration"
id: pm_2_5
accuracy_decimals: 1
pm_4_0:
name: " PM <4µm Weight concentration"
id: pm_4_0
accuracy_decimals: 1
pm_10_0:
name: " PM <10µm Weight concentration"
id: pm_10_0
accuracy_decimals: 1
temperature:
name: "Temperature"
id: Sen54_T
accuracy_decimals: 1
humidity:
name: "Humidity"
id: Sen54_H
accuracy_decimals: 0
voc:
name: "VOC"
id: tVOC
algorithm_tuning:
index_offset: 100
learning_time_offset_hours: 12
learning_time_gain_hours: 12
gating_max_duration_minutes: 180
std_initial: 50
gain_factor: 230
temperature_compensation:
offset: -5.0
normalized_offset_slope: 0
time_constant: 0
acceleration_mode: low
store_baseline: true
address: 0x69
update_interval: 10s
THis is Airgradient:
uart:
- rx_pin: D5
tx_pin: D6
baud_rate: 9600
id: uart_1
- rx_pin: D4
tx_pin: D3
baud_rate: 9600
id: uart_2
sensor:
- platform: sht4x
temperature:
id: temp
name: ${upper_devicename} Temperature
humidity:
id: humidity
name: ${upper_devicename} Relative Humidity
address: 0x44
update_interval: 10s
- platform: pmsx003
type: PMSX003
uart_id: uart_1
pm_1_0:
id: pm_1_0
name: "${upper_devicename} Particulate Matter <1.0µm Concentration"
pm_2_5:
id: pm_2_5
name: "${upper_devicename} Particulate Matter <2.5µm Concentration"
pm_10_0:
id: pm_10_0
name: "${upper_devicename} Particulate Matter <10.0µm Concentration"
pm_0_3um:
id: pm_0_3um
name: "${upper_devicename} Particulate Matter >0.3µm Count"
pm_0_5um:
id: pm_0_5um
name: "${upper_devicename} Particulate Matter >0.5µm Count"
pm_1_0um:
id: pm_1_0um
name: "${upper_devicename} Particulate Matter >1.0µm Count"
pm_2_5um:
id: pm_2_5um
name: "${upper_devicename} Particulate Matter >2.5µm Count"
update_interval: 120s # Sensor will go into sleep mode for extended operation lifetime
- platform: senseair
uart_id: uart_2
co2:
id: co2
name: "${upper_devicename} SenseAir CO2 Value"
update_interval: 60s
I would recommend you put the AirGradient PM sensor from 120s interval to 10a like the Ikea one.
In general the Plantower tend to overstate PM 2.5 and the Sensirion often understate it.
We are in the process to develop algorithms for compensation. You can read more about it on our research page.
Hi
You can’t put 10s for Plantower, min is 30s. I checked yesterday all possible variations, and it is still much more noisier.
Another observation - I’ve listen very carefully fan operation. In Sensirion it is constantly on, in Airgradient is is off/on all the time. If it possible to change the setting to make fan work constantly?
Not sure this is a root cause, but still I want to try it
Thanks
Switching on and off the fan will make the readings less stable as the sensor needs a constant air flow. It works be good to avoid that.
This hasn’t been my experience with ESPHome at all. By default the update_interval is 0s which means it gets it as soon as it comes from the sensor, and for me, that is every second.
PMSX003 Particulate Matter Sensor — ESPHome
Mine stays on, unless I extend it out to 120s as mentioned in the link to try to extend life, but I have been wondering if it impact the accuracy, so I was going to try two side by side with one updating every second and one every 2 minutes
How?
I did not do it intentionally and I do not see anything in code that make it happen
This is super strange. Just put “0s” interval, and it excepted it.
But 5, 10 or any other number below 30s is red