I tried to use the ESPHome LD2420 24Ghz mmWave Radar configuration with use my HMMD mmWave sensor. I was under the impression that this is the exact same sensor as the HLK-LD2420 motion and presence sensor. Both use the same chip (S3KM1110) according to this site and the board layout, pinout and baud rate are all identical.
I can compile and upload to the NodeMCU and the device shows up in HA with all sensors and buttons. However it is not working as hoped it to be. When looking at the logs in my ESPHome dashboard I see the following errors:
This suggests that the NodeMCU is not communicating with the sensor, at least that is what I make of it.
Maybe there is something wrong with my configuration or the HMMD sensor is different to the HLK-2420. Any ideas or help to get this working will be greatly appreciated!
This is my YAML config:
esphome:
name: esp-radar
friendly_name: esp-radar
esp8266:
board: nodemcuv2
# Enable logging
logger:
level: INFO #You Can Use "INFO" Level
baud_rate: 0
# Enable Home Assistant API
api:
encryption:
key: "some-key-bla-bla-la"
ota:
- platform: esphome
password: "some-password-bla-bla-bla"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
#Example from: https://deploy-preview-2956--esphome.netlify.app/components/sensor/ld2420
uart:
id: ld2420_uart
tx_pin: GPIO1 #ESP8266 UART_0
rx_pin: GPIO3 #ESP8266 UART_0
baud_rate: 115200
parity: NONE
stop_bits: 1
# The LD2420 has 16 time gate intervals (0-15) with a gate
# resolution of 0.70 meters
ld2420:
text_sensor:
- platform: ld2420
fw_version:
name: LD2420 Firmware
sensor:
- platform: ld2420
moving_distance:
name : Moving Distance
binary_sensor:
- platform: ld2420
has_target:
name: Presence
select:
- platform: ld2420
operating_mode:
name: Operating Mode
number:
- platform: ld2420
presence_timeout:
name: Detection Presence Timeout
min_gate_distance:
name: Detection Gate Minimum
max_gate_distance:
name: Detection Gate Maximum
gate_select:
name: Select Gate to Set
still_threshold:
name: Set Still Threshold Value
move_threshold:
name: Set Move Threshold Value
gate_move_sensitivity:
name: Move Calibration Sensitivity Factor
gate_still_sensitivity:
name: Still Calibration Sensitivity Factor
button:
- platform: ld2420
apply_config:
name: Apply Config
factory_reset:
name: Factory Reset
restart_module:
name: Restart Module
revert_config:
name: Undo Edits
These are the logs after the upload with DEBUG instead of INFO: