VINDRIKTNING: Difference between revisions
Line 25: | Line 25: | ||
More pictures of its internals, with reverse-engineered schematics: | More pictures of its internals, with reverse-engineered schematics: | ||
https:// | https://threadreaderapp.com/thread/1415291684569632768.html | ||
The datasheet of the PM1006K mentions that it takes 5V as power and communicates using 4.5V levels. | The datasheet of the PM1006K mentions that it takes 5V as power and communicates using 4.5V levels. | ||
The reverse-engineered schematic shows resistors in line with the RX and TX lines. | |||
An ESP8266 should be 5V tolerant. This means that it is probably possible to directly connect an ESP8266 in place of the original microcontroller. | |||
== Hacking == | == Hacking == |
Revision as of 07:26, 18 July 2021
Project VINDRIKTNING | |
---|---|
Hacking IKEA VINDRIKTNING PM2.5 indicator | |
Status | In progress |
Contact | bertrik |
Last Update | 2021-07-18 |
What
This page is about hacking the IKEA VINDRIKTNING PM2.5 indicator light.
Hardware
- power is by USB-C probably 5V
- the particulate matter sensor is the Cubic PM1006K
- appears to have two LEDs (red and green) so it can indicate colours green, orange and red
- the sensor output can be PWM or UART, the UART output provides PM1.0 PM2.5 and PM10 values
Pictures of its internals: https://twitter.com/guido_burger/status/1413900622919872521
- there is a footprint for a kind of debug header, with signals ISPDA, RESET, ISPCLK, GND, +5V
- there is an internal header with signals LED_G_1, PWM_Fan, LED_R_1, FAN-, FAN+
- there is a separate header for the fan with signals FAN+,FAN-
- there is an 8-pin IC, could this be the "main" microcontroller?
- there is a light-sensing element, that controls the brightness of the LED
More pictures of its internals, with reverse-engineered schematics: https://threadreaderapp.com/thread/1415291684569632768.html
The datasheet of the PM1006K mentions that it takes 5V as power and communicates using 4.5V levels. The reverse-engineered schematic shows resistors in line with the RX and TX lines. An ESP8266 should be 5V tolerant. This means that it is probably possible to directly connect an ESP8266 in place of the original microcontroller.
Hacking
The microcontroller is an ES7P001.
Find out if it can be read out, perhaps reprogram it.
Idea: by default, the light only shows one quality indicator, but the particulate matter sensor datasheet shows that it can output PM1.0, PM2.5 and PM10 values too. You could fit an ESP8266 that reads out the raw PM categories and publish them over WiFi, e.g. using a home assistant compatible protocol.
Software
Some intial, untested code for an ESP8266 (Wemos D1 mini) to communicate with the PM1006K sensor inside this device can be found at https://github.com/bertrik/pm1006k
The hardware probably needs a level shifter in line with the RX and TX signals.