#Can't compile esphome for BOX-3 voice assistant.

1 messages · Page 1 of 1 (latest)

real bolt
#
         i2c_config->scl_io_num = GPIO_NUM_23;
                                  ^~~~~~~~~~~
                                  GPIO_NUM_43
components/audio_board/lyrat_v4_3/board_pins_config.c:39:34: note: each undeclared identifier is reported only once for each function it appears in
components/audio_board/lyrat_v4_3/board_pins_config.c: In function 'get_i2s_pins':
components/audio_board/lyrat_v4_3/board_pins_config.c:54:33: error: 'GPIO_NUM_25' undeclared (first use in this function); did you mean 'GPIO_NUM_45'?
         i2s_config->ws_io_num = GPIO_NUM_25;
                                 ^~~~~~~~~~~
                                 GPIO_NUM_45
In file included from /data/cache/platformio/packages/framework-espidf/components/esp_rom/include/esp32s3/rom/ets_sys.h:19,
                 from /data/cache/platformio/packages/framework-espidf/components/log/include/esp_log.h:19,
                 from components/audio_board/lyrat_v4_3/board_pins_config.c:25:
components/audio_board/lyrat_v4_3/board_pins_config.c: In function 'i2s_mclk_gpio_select':
#

I can upload a full log if you like but Discord was fighting me a bit so I'll have to go to pastebin or something.

real bolt
#

Can't compile esphome for BOX-3 voice assistant.

slate fractal
#

I was running into some errors compiling esphome for my s3-box-3 last week. it was due to some out of date libraries that were cached. updating my esphome solved it for me.

real bolt
slate fractal
#

I am running it separately in docker.

#

I was not on the latest version.

#

What yaml configuration are you using now?

real bolt
#
  name: esp32-s3-box-3-5aac98
  friendly_name: ESP32 S3 Box 3 5aac98

packages:
  esphome.voice-assistant: github://esphome/firmware/wake-word-voice-assistant/esp32-s3-box-3.yaml@main
# https://github.com/esphome/firmware/blob/main/wake-word-voice-assistant/esp32-s3-box-3.yaml

esphome:
  name: ${name}
  name_add_mac_suffix: false
  friendly_name: ${friendly_name}

api:
  encryption:
    key: [redacted]

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

it's the default; i only added the comment while debugging it (just the web github link to the yaml file)

slate fractal
real bolt
#

Okay, interesting. I copied in the yaml from that and then replaced any elements with my own (substitution, esphome → name, etc.) It failed. Then I took out the name and friendly_name substitions and went back to the default and it worked. So I went back to my yaml above but commented out the substitutions section. And it works. Any idea what means? (Here are the name/friendly_name lines from the github yaml: ```

substitutions:
name: esp32-s3-box-3
friendly_name: ESP32 S3 Box 3```

#

Upon further testing including the name substitution in my yaml breaks compilation but including the friendly_name substitution does not.

#

More testing suggests (not sure; going to have to check in the morning) that changing the name to anything else fixes compilation. Is there some chance it got cached by name somewhere in a bad state in esphome and now that build is broken? If so, any way to clear that?

slate fractal
#

the name has to be unique for each device so they might have hard-coded some rule against setting it to the name of the board. (i assume because they are pushing this device as the goto for voice-assistants now). if you add any other random string at the end like this should work esp32-s3-box-3-abcde or keep the name as it is and set this parameter to true name_add_mac_suffix: true

real bolt
#

Hm! I'll try doing that, though I would be surprised if they hard-coded a rule like that. The error is in some audio code and doesn't related to the name in any way I can see, what I used was the default name installed by the home assistant voice-assistant installer itself, and is the default name format for pretty much all esphome devices. I'm curious if a work-around like using the add_mac_suffix will let me go back to the original name; will see how that works.