This was working great for months but it was in a crappy case and it fell a few times and stopped worked. I thought the connections were poor so I updated the soldering but have been unable to get it working again. I keep getting all 0, 1, or 2 from PM1.0, PM2.5, and PM10.0 sensors even with smoke nearby which I know worked in the past.
I can hear/feel the fan come on sometimes but it’s not consistent.
I tried moving from 3.3v to 5v, tried different digital pins, and tried moving the board config to seeed_xiao_esp32c3
Did I break the sensors?
Config:
esp32:
board: seeed_xiao_esp32c3
framework:
type: arduino
platform_version: 6.7.0
variant: ESP32C3
light:
- platform: neopixelbus
id: light_ring
type: GRB
variant: WS2813
pin: GPIO3 # D1
num_leds: 20
name: "20 RGB Light"
#restore_mode: RESTORE_AND_ON
effects:
# Colors from https://www.airnow.gov/how-to-use-this-site/
- automation:
name: AQI Good
sequence:
- light.addressable_set:
id: light_ring
range_from: 0
range_to: 2
color_brightness: 30%
red: 0%
green: 100%
blue: 0%
- light.addressable_set:
id: light_ring
range_from: 3
range_to: 19
red: 0%
green: 0%
blue: 0%
- automation:
name: AQI Moderate
sequence:
- light.addressable_set:
id: light_ring
range_from: 0
range_to: 5
color_brightness: 40%
red: 100%
green: 98%
blue: 3%
- light.addressable_set:
id: light_ring
range_from: 6
range_to: 19
red: 0%
green: 0%
blue: 0%
- automation:
name: AQI Unhealthy for Sensitive Groups
sequence:
- light.addressable_set:
id: light_ring
range_from: 0
range_to: 8
color_brightness: 50%
red: 100%
green: 49%
blue: 0%
- light.addressable_set:
id: light_ring
range_from: 9
range_to: 19
red: 0%
green: 0%
blue: 0%
- automation:
name: AQI Unhealthy
sequence:
- light.addressable_set:
id: light_ring
range_from: 0
range_to: 11
color_brightness: 70%
red: 99%
green: 16%
blue: 1%
- light.addressable_set:
id: light_ring
range_from: 12
range_to: 19
red: 0%
green: 0%
blue: 0%
- automation:
name: AQI Very Unhealthy
sequence:
- light.addressable_set:
id: light_ring
range_from: 0
range_to: 15
color_brightness: 80%
red: 56%
green: 25%
blue: 58%
- light.addressable_set:
id: light_ring
range_from: 16
range_to: 19
red: 0%
green: 0%
blue: 0%
- automation:
name: AQI Hazardous
sequence:
- light.addressable_set:
id: light_ring
range_from: 0
range_to: 19
color_brightness: 50%
red: 100%
green: 8%
blue: 16%
- addressable_color_wipe:
- addressable_color_wipe:
name: Color Wipe Effect With Custom Values
colors:
- red: 49%
green: 100%
blue: 100%
num_leds: 1
- red: 0%
green: 0%
blue: 0%
num_leds: 1
add_led_interval: 100ms
reverse: false
i2c:
sda: GPIO6 # D4
scl: GPIO7 # D5
sensor:
- platform: hm3301
pm_1_0:
name: "PM1.0"
pm_2_5:
name: "PM2.5"
pm_10_0:
name: "PM10.0"
aqi:
name: "AQI"
calculation_type: "AQI"
on_value_range:
- below: 50
then:
- light.turn_on:
id: light_ring
effect: AQI Good
- above: 51.0
below: 100.0
then:
- light.turn_on:
id: light_ring
effect: AQI Moderate
- above: 101.0
below: 150.0
then:
- light.turn_on:
id: light_ring
effect: AQI Unhealthy for Sensitive Groups
- above: 151.0
below: 200.0
then:
- light.turn_on:
id: light_ring
effect: AQI Unhealthy
- above: 201.0
below: 300.0
then:
- light.turn_on:
id: light_ring
effect: AQI Very Unhealthy
- above: 301.0
then:
- light.turn_on:
id: light_ring
effect: AQI Hazardous