mmWave Presence Detection - ESPHome style

Thank you so much, at least I know where to start when I received mine.

Yup got it to work finally. Changed the GPIO pins to TX and RX on the ESP32, switched off the LED and changed the GPIO back to the way it was. Now no more blinking lights and it works like before. Thank you for that pointer

How did you connect this to ESp32? Just started playing with DFRobot mmWave and esp32 and I like what you have done using ESPHome. Just curious is to how you wired it/connected it. I have it running but currently getting outputs like below.


So not sure if I have it properly wired. I cant tell if something has been detected or not.

Thanks for your awesome code and setup.


You usually get that when RX and TX pins are the wrong way round, check the messages just above

1 Like

Thank you I saw it posted above and it worked. The next issue i am facing is the sensor basically is always sensing something. I see it show nothing for about 10 seconds and then it starts to sense. I have distance to nothing and put it in a box. any ideas what i might be doing wrong. Thanks again for all the support


I have five and all obey the distance parameter. So if you set min distance you need to be “inches-close” to detect something. If you disconnect the DFRobot is the ESP still showing “detected”?

I was able to set this up no problem with the yaml, thank you @crlogic!

The only thing I’m unclear on in the yaml is the purpose of uart_target_output.

When I toggle both uart_presence_output and uart_target_output they both have an effect on the uart logs, and if I turn them both off the pulldown pin for presence detection no longer works.

I can discern what uart_presence_output is for, but not what uart_target_output is for.

Does uart_target_output serve a function or was it added for debugging purposes?

Thanks again!

Nice work! Glad you like it.

Both were for debugging and can be safely left off.

Thank you for the clarification, I appreciate it!

Can you pls explain to a total noob how to use uart_presence_output? I would like to understand what are the possibilities and how to use it in automation in home assistant…

Pls prove Paul hibbert wrong, that the communite are not lifeless vergins

He’s totally right! Lol


I just received the HLK LD1115H and found your post. Do you have a pic of your final set-up? I was hoping to stack the boards but the pins don’t align electrically so I’m curious how you did it.

Feel free to contribute more here: How to work with HLK-LD1115H and Wemos D1 Mini for Human Presence Detection - ESPHome - Home Assistant Community (

Hello, on binary sensor you have to use the option pulldown: true or mode: INPUT_PULLDOWN
The “middle” pin on module goes to 3v when it detects move or occupancy, then the pin into WeMos must be in pulldown state. Now I working to adapt the code to the hlk .

This is excellent. Used the code for my 2 sensors. One is always in sync but the other one cant stay turned off. Is that the lambda? If you find a solution for this please let us know! Thanks for the efforts!

Have you confirmed the sensor reads off when face-down on a table?

If not, disconnect from ESP and check GPIO2 using a multimeter.

If yes, sounds like tuning and you will want to set min distance and latency and then customize those to your room.

Cheap mwave sensor AC 220 240V 5.8GHz Microwave Radar Sensor Switch Body Motion Detector For LED Light Sensors Switches| | - AliExpress
May be easy to remove it and use it :slight_smile:

Just loaded the new yaml in the hope that I could turn the LED off. But, despite the switch being off on the interface and it reporting that it’s been switched off, my LED is still flashing away merrily. Is there anything else that needs doing?

The switch depends on UART. What output do you see?

Do you mean in the web interface?

This is when I switch it on and off