Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ikea Sensirion I2C SEN5X implementation #175

Merged
merged 12 commits into from
Oct 18, 2023
Merged

Conversation

roberbike
Copy link
Member

@roberbike roberbike commented Aug 5, 2023

Overview

Implementacion del medidor de Ikea [VINDSTYRKA]
image

TODO

  • testing with real hardware
  • testing with previous boards (backward compatibility)
  • testing with CanAirIO firmware

@roberbike
Copy link
Member Author

21:39:03.329 > == Sensor test setup ==
21:39:03.329 >
21:39:03.329 > -->[SETUP] Detecting sensors..
21:39:03.337 > -->[SLIB] CanAirIO SensorsLib : v0.6.9.1r0
21:39:03.337 > -->[SLIB] sensorslib devmod : true
21:39:03.337 > -->[SLIB] temperature offset : 0.00
21:39:03.345 > -->[SLIB] altitude offset : 0.00
21:39:03.345 > -->[SLIB] sea level pressure : 1013.25 hPa
21:39:03.354 > -->[SLIB] only i2c sensors : false
21:39:03.354 > -->[SLIB] UART detecting type : Auto
21:39:03.362 > -->[SLIB] UART init with speed : 9600 TX:16 RX:17
21:39:03.362 > -->[SLIB] UART COMM port : Serial2
21:39:04.378 > -->[SLIB] UART detection msg : no data
21:39:05.387 > -->[SLIB] UART detection msg : no data
21:39:05.387 > [W][SLIB] GCJA5 UART msg : invalid header
21:39:06.394 > -->[SLIB] UART detection msg : no data
21:39:07.400 > -->[SLIB] UART detection msg : no data
21:39:07.404 > [W][SLIB] GCJA5 UART msg : invalid header
21:39:08.403 > -->[SLIB] UART detection msg : no data
21:39:09.404 > -->[SLIB] UART detection msg : no data
21:39:09.420 > [W][SLIB] GCJA5 UART msg : invalid header
21:39:09.420 > -->[SLIB] UART sensors detected : 0
21:39:09.420 > -->[SLIB] attempt enable sensor : SCD30
21:39:10.420 > -->[SLIB] attempt enable sensor : SPS30
21:39:12.429 > [W][SLIB] SPS30 setup message : could not probe.
21:39:12.429 > -->[SLIB] attempt enable sensor : GCJA5
21:39:13.430 > -->[SLIB] attempt enable sensor : SCD4X
21:39:14.929 > [W][SLIB] SCD4x stopping error : 269
21:39:14.929 > -->[SLIB] attempt enable sensor : SEN5X
21:39:16.132 > Error trying to execute deviceReset(): Error writing to I2C bus
21:39:17.129 > Error trying to execute getProductName(): Error writing to I2C bus
21:39:18.129 > Error trying to execute getVersion(): Error writing to I2C bus
21:39:19.133 > Error trying to execute getSerialNumber(): Error writing to I2C bus
21:39:19.137 > -->[SLIB] sensor registered : SEN5X :D
21:39:19.137 > -->[SLIB] attempt enable sensor : BMP280
21:39:21.138 > -->[SLIB] attempt enable sensor : BME280
21:39:22.137 > -->[SLIB] attempt enable sensor : BME680
21:39:23.137 > -->[SLIB] attempt enable sensor : AM232X
21:39:24.138 > -->[SLIB] attempt enable sensor : SHT31
21:39:25.137 > -->[SLIB] attempt enable sensor : AHTXX
21:39:26.238 > -->[SLIB] attempt enable sensor : DFRCO
21:39:27.242 > -->[SLIB] attempt enable sensor : DFRNH3
21:39:28.247 > -->[SLIB] Sensors count : 1 (SEN5X,)
21:39:34.247 > Error trying to execute readMeasuredValues(): Error writing to I2C bus
21:39:34.255 > -->[SLIB] SEN5x read : done!
21:39:45.289 > -->[SLIB] Sensors values : PM1:0.0 PM2.5:1.0 PM4:0.0 PM10:0.0 T:-0.0 H:2.0
21:39:45.289 > -->[SLIB] Sensors count : 1 (SEN5X,)
21:39:45.304 > -->[SLIB] Sensors units count : 6 (PM1,PM2.5,PM4,PM10,T,H,)
21:39:45.304 > ======= E X A M P L E T E S T =========
21:39:45.304 > -->[MAIN] Sensors detected count : 1
21:39:45.304 > -->[MAIN] Sensors units count : 6
21:39:45.322 > -->[MAIN] Sensors devices names : SEN5X,
21:39:45.322 > -->[MAIN] Preview sensor values:
21:39:45.322 > -->[MAIN] PM1: 0.0 ug/m3
21:39:45.322 > -->[MAIN] PM2.5: 1.0 ug/m3
21:39:45.330 > -->[MAIN] PM4: 0.0 ug/m3
21:39:45.330 > -->[MAIN] PM10: 0.0 ug/m3
21:39:45.337 > -->[MAIN] T: -0.0 C
21:39:45.339 > -->[MAIN] H: 2.0 %
21:39:50.331 > Error trying to execute readMeasuredValues(): Error writing to I2C bus
21:39:50.339 > -->[SLIB] SEN5x read : done!
21:40:01.373 > -->[SLIB] Sensors values : PM1:0.0 PM2.5:1.0 PM4:0.0 PM10:0.0 T:-0.0 H:2.0
21:40:01.381 > -->[SLIB] Sensors count : 1 (SEN5X,)
21:40:01.381 > -->[SLIB] Sensors units count : 6 (PM1,PM2.5,PM4,PM10,T,H,)
21:40:01.389 > ======= E X A M P L E T E S T =========
21:40:01.389 > -->[MAIN] Sensors detected count : 1
21:40:01.397 > -->[MAIN] Sensors units count : 6
21:40:01.397 > -->[MAIN] Sensors devices names : SEN5X,
21:40:01.405 > -->[MAIN] Preview sensor values:
21:40:01.405 > -->[MAIN] PM1: 0.0 ug/m3
21:40:01.405 > -->[MAIN] PM2.5: 1.0 ug/m3
21:40:01.413 > -->[MAIN] PM4: 0.0 ug/m3
21:40:01.413 > -->[MAIN] PM10: 0.0 ug/m3
21:40:01.413 > -->[MAIN] T: -0.0 C
21:40:01.421 > -->[MAIN] H: 2.0 %
21:40:06.424 > Error trying to execute readMeasuredValues(): Error writing to I2C bus
21:40:06.432 > -->[SLIB] SEN5x read : done!
21:40:17.457 > -->[SLIB] Sensors values : PM1:0.0 PM2.5:1.0 PM4:0.0 PM10:0.0 T:-0.0 H:2.0
21:40:17.473 > -->[SLIB] Sensors count : 1 (SEN5X,)
21:40:17.473 > -->[SLIB] Sensors units count : 6 (PM1,PM2.5,PM4,PM10,T,H,)
21:40:17.481 > ======= E X A M P L E T E S T =========
21:40:17.481 > -->[MAIN] Sensors detected count : 1
21:40:17.489 > -->[MAIN] Sensors units count : 6
21:40:17.489 > -->[MAIN] Sensors devices names : SEN5X,
21:40:17.497 > -->[MAIN] Preview sensor values:
21:40:17.497 > -->[MAIN] PM1: 0.0 ug/m3
21:40:17.497 > -->[MAIN] PM2.5: 1.0 ug/m3
21:40:17.507 > -->[MAIN] PM4: 0.0 ug/m3
21:40:17.507 > -->[MAIN] PM10: 0.0 ug/m3
21:40:17.507 > -->[MAIN] T: -0.0 C
21:40:17.507 > -->[MAIN] H: 2.0 %
21:40:22.506 > Error trying to execute readMeasuredValues(): Error writing to I2C bus
21:40:22.522 > -->[SLIB] SEN5x read : done!

@hpsaturn
Copy link
Member

Muchas gracias @roberbike por el aporte. Siento la demora en la revisión. Voy adicionar el TODO de siempre a la descripción y te solicite dos cambios.

@hpsaturn hpsaturn merged commit ea19e4b into kike-canaries:devel Oct 18, 2023
@hpsaturn hpsaturn mentioned this pull request Oct 24, 2023
@Marvin-YYC
Copy link

Marvin-YYC commented Dec 9, 2024

This is a really great project.

Kudos to the everyone involved, thank you for adding this IKEA product to your list of compatible devices.

I see that my VINDSTYRKA E2112 has a Sensirion SEN54 PDN-T sensor which includes a VOC sensor.
It would be great if the data from this sensor was also available through the CanAirIO device.

I also noticed that this device does not like cold weather, and does not work at all at temperatures below 5°C. After checking the datasheet I see that operation of the device in temperatures below 10°C or above 40°C is not recommended. Humidity levels between 20 - 80% non-condensing. Clearly this device is designed for indoor use only. Definitely not for a Canadian winter.

I hope this it the correct place to post this.
Cheers

@hpsaturn
Copy link
Member

Thanks @Marvin-YYC for your words.
Please add a new feature request issue around this VOC sensor. I think that we already have this, but we need check it again. Thanks in advance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants