This the example yaml config I was using # Minimal update: Just add Safe Mode to existing working config
Based on your current working firmware (Dec 24 2024)
substitutions:
name: “seeedstudio-mr60bha2-kit”
friendly_name: “Seeed Studio MR60BHA2 Kit”
esphome:
name: “${name}”
friendly_name: “${friendly_name}”
name_add_mac_suffix: true
project:
name: “seeedstudio.mr60bha2_kit”
version: “2.1” # Just bump version slightly
esp32:
board: esp32-c6-devkitc-1
variant: esp32c6
flash_size: 4MB
framework:
type: esp-idf
Keep ALL your existing external components exactly the same
external_components:
- source:
type: git
url: GitHub - limengdu/MR60BHA2_ESPHome_external_components
ref: main
components: [ seeed_mr60bha2 ]
refresh: 0s
Keep existing logger config
logger:
hardware_uart: USB_SERIAL_JTAG
level: DEBUG
Keep existing API
api:
Keep existing OTA
ota:
- platform: esphome
ADD JUST THIS: Safe Mode Buttons (minimal addition)
button:
-
platform: safe_mode
name: “Safe Mode”
id: safe_mode_button -
platform: restart
name: “Restart”
id: restart_button
switch:
- platform: safe_mode
name: “Safe Mode Switch”
id: safe_mode_switch
Keep ALL existing components exactly the same
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap:
ssid: “seeedstudio-mr60bha2”
captive_portal:
web_server:
Keep existing I2C
i2c:
sda: GPIO22
scl: GPIO23
scan: true
frequency: 50kHz
Keep existing UART
uart:
tx_pin: GPIO16
rx_pin: GPIO17
baud_rate: 115200
parity: NONE
stop_bits: 1
Keep existing MR60BHA2 config
seeed_mr60bha2:
id: mmwave_sensor
Keep existing sensors
binary_sensor:
- platform: seeed_mr60bha2
mr60bha2_id: mmwave_sensor
has_target:
name: “Person Information”
device_class: occupancy
sensor:
-
platform: seeed_mr60bha2
mr60bha2_id: mmwave_sensor
heart_rate:
name: “Real-time heart rate”
unit_of_measurement: “bpm”
breath_rate:
name: “Real-time respiratory rate”
distance:
name: “Distance to detection object”
unit_of_measurement: “cm”
num_targets:
name: “Target Number” -
platform: bh1750
name: “Seeed MR60BHA2 Illuminance”
address: 0x23
update_interval: 1s
Keep existing light
light:
- platform: esp32_rmt_led_strip
name: “Seeed MR60BHA2 RGB Light”
pin: GPIO1
num_leds: 1
rgb_order: GRB
chipset: ws2812