Seeed Xiao ESP32S3 Sense board name not recognised

Try this

esphome:
  name: esp32s3
  friendly_name: esp32s3
  platformio_options:
    board_build.flash_mode: dio
    board_build.mcu: esp32s3

esp32:
  board: esp32-s3-devkitc-1
  variant: esp32s3
  framework:
    type: esp-idf

Modified from the esp32c3’s version: XIAO ESP32C3 accesses Home Assistant via ESPHome service | Seeed Studio Wiki

Still getting pretty much the same log out with this method.

While still using a generic board definition I’d expect errors because the XIAO is trying to do a lot with very few ports/pins. The solution is getting the board supported. I’m not sure who to pester into doing that. Beyond me. It’d be a great addition to the stable if it was.

I did try to use ESP-IDF to see if it got around another problem I was having (with the ‘logger:’ line enabled the device would not start until a serial line was enabled) but just got errors.
So I’ve stayed with the Arduino architecture.
In some of my earlier tests (using different boards and in particular with the ‘variant’ line specified) I was also getting the error about the ‘pins.h’ file not being found but using the approach I’ve outlined above I get a clean compile.
Susan

I have my Seeed Xiao esp32s3 (not sense) on the network via:

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: arduino

Any idea what the user defined LED pin would be so I can setup the following?

status_led:
  pin:
    number: GPIO???
    inverted: False

I’ll answer my own question regarding user defined LED pin. Its GPIO21.

status_led:
  pin:
    number: GPIO21
    inverted: True

Found on pinout sheet: https://files.seeedstudio.com/wiki/SeeedStudio-XIAO-ESP32S3/res/XIAO_ESP32S3_Sense_Pinout.xlsx

2 Likes

i was able to compile and install the cam without any docker play using recent ESPhome Beta.

my config:

esphome:
  name: a1
  friendly_name: XIAO CAM 1

esp32:
  board: seeed_xiao_esp32s3
  variant: esp32s3
  framework:
    type: arduino
    version: latest
    platform_version: 6.3.2

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "xxx="

ota:
  password: "xxx"

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

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

captive_portal:

esp32_camera:

  name: Working

  external_clock:

    pin: GPIO10

    frequency: 20MHz

  i2c_pins:

    sda: GPIO40

    scl: GPIO39

  data_pins: [GPIO15, GPIO17, GPIO18, GPIO16, GPIO14, GPIO12, GPIO11, GPIO48]

  vsync_pin: GPIO38

  href_pin: GPIO47

  pixel_clock_pin: GPIO13

4 Likes

Just recently bought this board with the hope of extending BLE since it’s speced with BLE5.

When I configure it with esp32-s3-devkitc-1 it runs super hot. I can touch it but not for long. It gives the same distance of my old boards running BLE4.

When I configure it with seeed_xiao_esp32s3 like in the post above it cools significantly but the distance is way less than the BLE4 board I am testing it against.

Anyone else seeing the same?

Installing an antenna may be able to increase this distance

recent minimal file which works for me with esphome 2023.10.1 :

esphome:
  name: xiao-s3
  friendly_name: xiao-s3

esp32:
  board: seeed_xiao_esp32s3
  variant: esp32s3
  framework:
    type: arduino
    version: latest
    platform_version: 6.4.0

1 Like

Tried this, but when trying to use UART (HW) i get this:

Compiling .pioenvs\mista-s3-presence\src\esphome\core\log.cpp.o
src/esphome/components/uart/uart_component_esp32_arduino.cpp: In member function 'virtual void esphome::uart::ESP32ArduinoUARTComponent::setup()':
src/esphome/components/uart/uart_component_esp32_arduino.cpp:91:25: error: cannot convert 'HWCDC*' to 'HardwareSerial*' in assignment
     this->hw_serial_ = &Serial;
                         ^~~~~~
*** [.pioenvs\mista-s3-presence\src\esphome\components\uart\uart_component_esp32_arduino.cpp.o] Error 1

Hello !
I tried to add Xiao ESP32S3 Sense to home assistant and found on SeeedStudio forum the solution : xiao-esp32s3-sense-with-camera-on-esphome

I hope it will help next guys with this board :wink:

With the latest upgrades of ESPHome it seems something is changing. I am getting warnings:
WARNING The selected Arduino framework version is not the recommended one. If there are connectivity or build issues please remove the manual version.
WARNING The selected Arduino framework version is not the recommended one. If there are connectivity or build issues please remove the manual version.
And board is not stable anymore, it is disconnecting.

This is my board definition:
esp32:
board: seeed_xiao_esp32s3
variant: esp32s3
framework:
type: arduino
version: latest
platform_version: 6.4.0

Have you tried doing what the warning message suggests?
I don’t have the ‘variant’, ‘version’ or ‘platform_version’ in my code and it is still working well for me.
Of course I still need to edit the ‘boards.py’ file with each new version of ESPHome because it only defines the seeed_xiao_esp32c3 processor and not the seeed_xiao_esp32s3 (no idea why they can’t add this!!!).
Susan

Platformio version in esphome 2024.2 is presently 6.1.13. See the latest changelog.

Support for the seeed_xiao_esp32s3 was not present until 6.2.0 (according to their gihub)

Play round with the ‘tag’ here, platform-espressif32/boards/seeed_xiao_esp32s3.json at 1d6e1999d14df59b7495268222be6ca187f0aa31 · platformio/platform-espressif32 · GitHub - the file is not in 6.1.0, it is in 6.2.0.

Oh and the s3 is quite a different beast to the c3

I modified that as follows,

esp32:
  board: seeed_xiao_esp32s3
  variant: esp32s3
  framework:
    type: arduino
    version: latest
    platform_version: 6.5.0

ref:
Releases · platformio/platform-espressif32 (github.com)

2 Likes

Hi,
Thank you all for help.
I did also found there is 6.5.0 and put it in.
I am still getting warning (twice:-):
WARNING The selected Arduino framework version is not the recommended one. If there are connectivity or build issues please remove the manual version.
WARNING The selected Arduino framework version is not the recommended one. If there are connectivity or build issues please remove the manual version.

Where can we request using the latest platform by default?
Cheers all!

Does it work? Stop worrying about warnings. They aren’t errors.

I realise that but there are other boards in the ‘boards.py’ file that reference the ESP32S3 - just not the seeed_xiao_esp32s3.
Also, if you go back to my post #9, I mention that you needed then to copy a json file. However it seems to have been put into the current ‘[email protected]/boards’ folder as part of the recent releases.
That makes me thing that everything is there for this board EXCEPT the 4 lines in the ‘boards.py’ file.
Susan