Implementation of a HLK-LD2410 component for ESPHome
TODO: A Lot of documentation
Feedback very welcome. To the sensor, code, naming and so on.
For now this is "manual":
- Place ld2410.h into your ESPHome configuration folder
- Use the sample.yaml for your device the code including
binary_sensor
and below is what you need.
The sensor spec uses a lot of alternative wording for the same thing which makes it seem overly complicated. I've tried to clean this up a bit in the code and here in the readme:
- static also known as stillness, resting, stationary, rest
- motion also known as movement, exercise
- unmanned also known as "no time" == unoccupied delay time. This is the delay how long the sensor needs to detect no presence until it gets reported.
- sensitivity setting used is more a sensitivity threshold. A value of 100% means no sensitivity and 0% is full sensitivity. (might need to clean this up in the code and sensor names?).
My HLK-LD2410 delivered 10-2022 report version V1.07.22082218. It does not include bluetooth functionality.
I got hold of HLK-LD2410B Serial communication protocol V1.04.pdf
distributed in a Google Drive archive. The version is last updated 2022-08-22 and covers the bluetooth version.
See https://www.youtube.com/watch?v=dAzHXpP3FcI for a detailed review from Andreas Spiess, actually the video triggered me to look into the sensor.
The thread mmWave Wars: one sensor (module) to rule them all contains a lot of input and some code that I used as start for this implementation.