Esp32 c3 tx/rx

I’m pretty new to the esp32 and HA but i’ve had some good luck with the esp32 nodemcu boards and wanted to try the c3. However i can’t get the ld2410c to work with it like i can with the other esp. here’s the code, but i’ve tried swapping the tx/rx i’ve tried gpio 3/4 for tx /rxi’ve tried disabling the logger with baud 0.

esphome:
  name: espc3presencetemp1
  friendly_name: EspC3PresenceTemp1

esp32:
  board: esp32-c3-devkitm-1
  framework:
    type: arduino

# Enable logging
logger:
  baud_rate: 0

# Enable Home Assistant API
api:
  encryption:
    key: "+oNAMjFgoLXjov2IfO5PzmhLd9yOLusNG32S9VuFV98="

ota:
  password: "5d91a38ae757805a949265f3a55683da"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Espc3Presencetemp1"
    password: "ns7vkokOTFf9"

captive_portal:

uart:
  id: ld2410_uart
  tx_pin: 21
  rx_pin: 20
  baud_rate: 256000
  data_bits: 8
  stop_bits: 1
  parity: NONE

ld2410:
  uart_id: ld2410_uart

binary_sensor:
  - platform: ld2410
    has_target:
      name: Presence
    has_moving_target:
      name: Moving Target
    has_still_target:
      name: Still Target

switch:
  - platform: ld2410
    engineering_mode:
      name: "engineering mode"
    bluetooth:
      name: "control bluetooth"

sensor:
  - platform: ld2410
    light:
      name: light
    moving_distance:
      name : Moving Distance
    still_distance:
      name: Still Distance
    moving_energy:
      name: Move Energy
    still_energy:
      name: Still Energy
    detection_distance:
      name: Detection Distance
    g0:
      move_energy:
        name: g0 move energy
      still_energy:
        name: g0 still energy
    g1:
      move_energy:
        name: g1 move energy
      still_energy:
        name: g1 still energy
    g2:
      move_energy:
        name: g2 move energy
      still_energy:
        name: g2 still energy
    g3:
      move_energy:
        name: g3 move energy
      still_energy:
        name: g3 still energy
    g4:
      move_energy:
        name: g4 move energy
      still_energy:
        name: g4 still energy
    g5:
      move_energy:
        name: g5 move energy
      still_energy:
        name: g5 still energy
    g6:
      move_energy:
        name: g6 move energy
      still_energy:
        name: g6 still energy
    g7:
      move_energy:
        name: g7 move energy
      still_energy:
        name: g7 still energy
    g8:
      move_energy:
        name: g8 move energy
      still_energy:
        name: g8 still energy

number:
  - platform: ld2410
    timeout:
      name: timeout
    light_threshold:
      name: light threshold
    max_move_distance_gate:
      name: max move distance gate
    max_still_distance_gate:
      name: max still distance gate
    g0:
      move_threshold:
        name: g0 move threshold
      still_threshold:
        name: g0 still threshold
    g1:
      move_threshold:
        name: g1 move threshold
      still_threshold:
        name: g1 still threshold
    g2:
      move_threshold:
        name: g2 move threshold
      still_threshold:
        name: g2 still threshold
    g3:
      move_threshold:
        name: g3 move threshold
      still_threshold:
        name: g3 still threshold
    g4:
      move_threshold:
        name: g4 move threshold
      still_threshold:
        name: g4 still threshold
    g5:
      move_threshold:
        name: g5 move threshold
      still_threshold:
        name: g5 still threshold
    g6:
      move_threshold:
        name: g6 move threshold
      still_threshold:
        name: g6 still threshold
    g7:
      move_threshold:
        name: g7 move threshold
      still_threshold:
        name: g7 still threshold
    g8:
      move_threshold:
        name: g8 move threshold
      still_threshold:
        name: g8 still threshold

button:
  - platform: ld2410
    factory_reset:
      name: "factory reset"
    restart:
      name: "restart"
    query_params:
      name: query params

text_sensor:
  - platform: ld2410
    version:
      name: "firmware version"
    mac_address:
      name: "mac address"

select:
  - platform: ld2410
    distance_resolution:
      name: "distance resolution"
    baud_rate:
      name: "baud rate"
    light_function:
      name: light function
    out_pin_level:
      name: out pin level

Try a baud rate of 115200.

Also, keep in mind ld2410 supports Bluetooth by itself, so if you don’t do anything else with the ESP, you can just give the LD +5V/GND and if you have Bluetooth enabled in HA, it will be auto-detected.

You can also use the HLKRadarTool app from your Android phone to configure the LD2410.

1 Like

No joy on the 115200, but thanks for the idea.

I’ve been toying with this idea, but i really want to use the c3.

The c3 is pretty weak. Perhaps it isn’t suitable.

Maybe at least try the HLK app to check whether the LD2410 is powered and functional?
The assumption here is that:

  • you are able to upload the firmware to the C3
  • you can read its logs
  • the ld2410 doesn’t report anything

BTW, a startup log might give some hints

I also have a c3 and ld2410c.
I couldn’t get it to work with pin 20 and 21, but had luck trying pin 6 and 7.

tx → rx
rx → tx

uart:
  tx_pin: GPIO7
  rx_pin: GPIO6
  baud_rate: 256000
  parity: NONE
  stop_bits: 1

This works for me.