Starter ESPHome config
Built from the pinout above. Keys and the Wi-Fi password come from secrets.yaml in ESPHome. Check the pins against your hardware revision before flashing: one model can ship with different boards.
substitutions:
name: neatofx-motor
esphome:
name: ${name}
friendly_name: "NeatoFx Motor"
esp32:
board: esp32dev
logger:
api:
encryption:
key: !secret api_key
ota:
- platform: esphome
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap: {}
captive_portal:
status_led:
pin:
number: GPIO19
inverted: false # R_PWM — direction 1 / forward / reel-out / valve A (LEDC 1 kHz)
# Other pins from the pinout:
# GPIO18: L_PWM — direction 2 / reverse / reel-in / valve B (LEDC 1 kHz)
# GPIO26: Status LED (home limit switch in winch mode)
# GPIO17: R_EN — right H-bridge enable (INH)
# GPIO16: L_EN — left H-bridge enable (INH)
# GPIO34: R_IS — right H-bridge current sense (ADC, input-only)
# GPIO35: L_IS — left H-bridge current sense (ADC, input-only)
# GPIO32: Input 1 — joystick forward / trigger A (hold-to-run)
# GPIO27: Input 2 — joystick reverse / trigger B (hold-to-run)
# GPIO25: SW1 — open/forward limit switch (standard board)
# GPIO13: SW2 — closed/reverse limit switch (Hall B in winch mode)
# GPIO4: CAN RX (with CAN add-on) / Hall A (winch) / open limit (manual)
# GPIO5: CAN TX (with CAN add-on)
# GPIO21/22: DY-SV5W sound module UART (with sound add-on)
How to flash
- Most devices are flashed over UART: a 3.3 V USB-TTL adapter to RX, TX, GND and 3V3, holding GPIO0 to ground at power-on (ESP8266/ESP32). Mains power disconnected.
- Beken (BK72xx) and Realtek chips are flashed with ltchiptool, or with cloudcutter without opening the case if the firmware allows it.
- Details and board photos: the device page in the ESPHome database.
A config from scratch: ESPHome generator. Which pins are safe: pinout.