your config won’t work as it is not yaml.
Thanks, format isn’t my issue, I have it in correct format in YAML file.
Here the formating just shows it W/O spaces.
The error is about “board: ESP32S3” value
esp32:
board: ESP32S3
framework:
type: esp-idf
If you won’t post your code correctly, how do you expect to get help.
The error message contains the solution as described in the link you posted, so try:
esp32:
board: ESP32DEV
variant: ESP32S3
framework:
type: esp-idf
Thank you @jsuanet . With this flash is complete, but chip doesn’t want to boot.
simple code:
esphome:
name: esp32-test2
esp32:
board: esp32dev
variant: esp32s3
framework:
type: esp-idf
version: recommended
logger:
api:
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
result:
Leaving...
Hard resetting via RTS pin...
←[32mINFO Successfully uploaded program.←[0m
←[32mINFO Starting log output from COM9 with baud rate 115200←[0m
[13:27:08]ESP-ROM:esp32s3-20210327
[13:27:08]Build:Mar 27 2021
[13:27:08]rst:0x1 (POWERON),boot:0x9 (SPI_FAST_FLASH_BOOT)
[13:27:08]SPIWP:0xee
[13:27:08]mode:DIO, clock div:1
[13:27:08]load:0x3fcd0108,len:0x164c
[13:27:08]load:0x00737965,len:0x73756665
[13:27:08]Invalid image block, can't boot.
My suspission is that problem is with tool-esptoolpy 1.30100.210531 (3.1.0) used.
You could try to use the esphome-flasher tool to manually flash the firmware, see GitHub - esphome/esphome-flasher: Simple GUI tool to flash ESPs over USB.
Hi, I found out that for ESP32S3 I can use esp32-s3-devkitc-1
board but I’ve to change framework type from esp-idf
to arduino
also, there are issues with some devices such as SPI
To be more clear
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
platform_version: 4.4.0
variant: esp32s3
works for me
The only way I can get your code to run is to use platform version: 5.0.0 and then it doesnt compile anyway.
Has anyone gotten this board running with esphome?
Hi, yes, I was able to use ESP32S3 and update the firmware using UBS. After a lot of tests I was able to compile using Arduino and esp-idf frameworks. Also, the platform-version must be the latest available. At a certain point I decided to purchase an ESP32-WROOM32-D and replace the ESP32-S3 because I was unable to do OTA programming. I have a copy of the original yaml file in another computer. Give me some time to expose the header here.
As promised:
board: esp32-s3-devkitc-1
framework:
type: arduino
version: 2.0.3
platform_version: 5.1.0
variant: esp32s3
Thx! I use this config plus physical connection and succeed to install esphome!
ps mydevice is esp32-s2-wroom-1
When I use this board definition on my T-Camera ESP32-S3 with an WROOM-1 module the board get into a bootloop. There is a watchdog trigger it looks like. (see log below)
Is the PMU supported in this definition?
I have read somewhere that the power supply driver is not in in this board definition.
Is there any definition that does support the PMU?
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0xa (SPI_FAST_FLASH_BOOT)
Saved PC:0x40377508
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd0108,len:0x43c
load:0x403b6000,len:0xbd0
load:0x403ba000,len:0x29c8
entry 0x403b61d8
E (183) psram: PSRAM ID read error: 0x00ffffff
E (5217) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
E (5217) task_wdt: - loopTask (CPU 1)
E (5217) task_wdt: Tasks currently running:
E (5217) task_wdt: CPU 0: IDLE
E (5217) task_wdt: CPU 1: IDLE
E (5217) task_wdt: Aborting.
Watching this. I have exactly the same issue.
Without the camera configuration, everything else works fine (the PIR sensor, the display, the button). With the camera config, it goes into bootloop.
Find below the configuration that is working for me. Only thing left is if I enable the logger and do not connect a terminal to the uart the board resets. disabling the logger as below avoids the reset.
esphome:
name: esp-lily-cam
platformio_options:
build_flags: “-DBOARD_HAS_PSRAM -UARDUINO_USB_CDC_ON_BOOT”
upload_speed: 921600
monitor_speed: 115200
friendly_name: “Lily Camera 1”
libraries:
- XPowersLib=https://github.com/lewisxhe/XPowersLib.git
- “Wire”
includes:
- AXP2101_component.h
custom_component:
- lambda: |-
auto axp2101 = new AXP2101Component();
return {axp2101};
components:- id: axp2101
esp32:
board: esp32s3box
framework:
type: arduino
wifi:
manual_ip:
# Set this to the IP of the ESP
static_ip: 192.168.178.91
# Set this to the IP address of the router. Often ends with .1
gateway: 192.168.178.1
# The subnet of the network. 255.255.255.0 works for most home networks.
subnet: 255.255.255.0
networks:
- ssid: !secret Wifiap1
password: !secret Wifipw - ssid: !secret Wifiap2
password: !secret Wifipw - ssid: !secret Wifiap3
password: !secret Wifipw
Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: “Esp Cam Fallback Hotspot”
password: “YyzRO7QXiUpO”
captive_portal:
external_components:
- source: my_components
components: [esp32_camera, decibel_meter, audio_source, i2s_audio_source, i2s_audio_sink, sound_generator]
- source: github://mrhatman/esphome@dev
components: [ audio_source, decibel_meter, i2s_audio_source, i2s_audio_sink, sound_generator ]
use all components from a local folder
- source:
type: local
path: my_components
Enable logging
#logger:
level: DEBUG
baud_rate: 115200
Enable Home Assistant API
api:
ota:
web_server:
#port: 80
version: 2
esp32_camera_web_server:
- port: 8080
mode: stream - port: 8081
mode: snapshot
time:
- platform: homeassistant
id: esptime
font:
-
file: ‘fonts/slkscr.ttf’
id: font1
size: 8 -
file: ‘fonts/BebasNeue-Regular.ttf’
id: font2
size: 30 -
file: ‘fonts/Arial.ttf’
id: font3
size: 14
i2c:
sda: GPIO7
scl: GPIO6
frequency: 200kHz
scan: True
display:
-
platform: ssd1306_i2c
model: “SSD1306 128x64”
address: 0x3C
rotation: 180
external_vcc: False
lambda: |-
// Print “My Smart Home” in top center.
it.printf(64, 0, id(font1), TextAlign::TOP_CENTER, “My Smart Home”);// Print time in HH:MM format
it.strftime(0, 30, id(font2), TextAlign::BASELINE_LEFT, “%H:%M”, id(esptime).now());// Print inside temperature (from homeassistant sensor)
if (id(inside_temperature).has_state()) {
it.printf(127, 10, id(font3), TextAlign::TOP_RIGHT , “%.1f°”, id(inside_temperature).state);
}// Print outside temperature (from homeassistant sensor)
if (id(outside_temperature).has_state()) {
it.printf(127, 40, id(font3), TextAlign::BASELINE_RIGHT , “%.1f°”, id(outside_temperature).state);
}
ESP32-CAM
esp32_camera:
name: LilyCam
external_clock:
pin: GPIO38
frequency: 20MHz
i2c_pins:
sda: GPIO5
scl: GPIO4
data_pins: [GPIO14, GPIO47, GPIO48, GPIO21, GPIO13, GPIO11, GPIO10, GPIO9]
vsync_pin: GPIO8
href_pin: GPIO18
pixel_clock_pin: GPIO12
vertical_flip: true
horizontal_mirror: true
resolution: 1024x768
audio_source:
- platform: i2s_audio_source
id: i2s_mic
name: “Smaller room I2S Mic”
i2s_lrclk_pin: GPIO40
i2s_din_pin: GPIO41
i2s_bclk_pin: GPIO40 #clock for output I2S
bits_per_sample: 16
audio_frequency: 16000
mode: mono
binary_sensor:
-
platform: status
name: “ESP LilyCam status” -
platform: gpio
pin: GPIO17
name: “PIR Sensor”
device_class: motion
sensor:
- platform: decibel_meter
sensitivity: -23
audio_source: i2s_mic
name: decibels
-
platform: wifi_signal
name: “ESP LilyCam WiFi Signal Sensor”
update_interval: 20s -
platform: uptime
name: “LilyCam Uptime” -
platform: homeassistant
id: inside_temperature
entity_id: sensor.bme280_temperature
internal: true -
platform: homeassistant
id: outside_temperature
entity_id: sensor.temperature
internal: true
text_sensor:
- platform: version
name: “ESPHome Version” - platform: wifi_info
ip_address:
name: IP Address
ssid:
name: Connected SSID
bssid:
name: Connected BSSID
mac_address:
name: Mac Address
switch:
- platform: restart
name: “CAM Restart”
Cannot be compiled as Pin 40 is used in multiple places.
This is the definition for the Lilygo camera module. If you want to use it on different HW you will need to adapt the configuration
If you want to use the microphone you should use the following definitions for the pin definitions:
i2s_lrclk_pin: 40
allow_other_uses: true
i2s_bclk_pin: 40
allow_other_uses: true
audio_source:
- platform: i2s_audio_source
id: i2s_mic
name: "I2S Mic"
i2s_lrclk_pin:
number: GPIO40
allow_other_uses: true
i2s_din_pin: GPIO41
i2s_bclk_pin:
number: GPIO40
allow_other_uses: true
bits_per_sample: 16
audio_frequency: 16000
mode: mono
this is the valid syntax now, but I am receiving “[sensor:094]: ‘decibels’: Sending state -inf with 0 decimals of accuracy”
I have copied your components to my_components folder.
I will check if I can get my debug environment up and running again. I will keep you posted on any progress. Do not expect a direct answer since I 'am quit busy lately