ReSpeaker XMOS XVF3800 ESPHome integration

Been lurking this thread, and finally have the XVF3800 setup. I'm using a pair of Vanatoo computer speakers connected via AUX for audio output. When I first set it up, I was receiving stereo audio from both speakers, but recently I've only been getting on the left speaker.

I tried playing music on from the speaker, and the same thing. Any ideas what I might be doing wrong?

Hmm not sure...
I haven't updated DFU for a while - and YAML is the one that works for me (I also use jack).

Thanks for the swift response, Andrii. Disregard - just power cycled it and re-seated the aux cable and it’s fine now.

Curious to see if anyone here got a hands-on comparison of the noise cancelling of the XVF3800 and the Satellite 1.

I currently have both the Voice PE and the Satellite 1 and I am not happy with microphone + noise performance on either tbh.

I pre-ordered the MiciMike Google Home drop-in replacement PCB to try as well, but it is my understanding that they all use the same XMOS chip, so not sure if i will be surprised or not.

I would 100% buy the XVF3800 if I knew it would perform better on the microphone aspect.

I have SAT1 and many Respeaker Lite devices, that have same XU-316. XVF performs better, but don't expect miracles. :slight_smile:

It does better after I introduced beam locking.

I just bought this xvf3800 with casing. It has one usb c port only. I flashed it with respeaker_xvf3800_i2s_dfu_firmware_v1.0.7.bin. Once I connected it back to my laptop, it's not detected at all. Couldn't see it in the device manager. No "Unknown Device" there. Did I miss any steps to get this detected? Tried resetting it and still the same. If it's in safe mode, my laptop can detect it as respeaker 4-mic array in the device manager. Appreciate your help!!

I2S firmware is for those using XVF with ESP32 and ESPHome. If you intend to use it as USB device - you will need USB firmware, and current topic is useless to you. :slight_smile:

I intend to flash it with I2S firmware so i can connect it to esphome. Then load this respeaker-xvf-satellite-example.yaml in esphome. But I am unable to proceed with connecting this xvf3800 to esphome as it is detected at all in my laptop.

Oh, sorry to disappoint you, but the board you have has no ESP32 chip on it - probably pads only. Otherwise there would be two usb ports: on the board itself, and on the soldered esp chip.

So having some issues related to 2026.5.3 i think, just wanted to see if anyone
had any input

The rule of thumb: before posting, try emptying caches and restarting ESPHome, then build. Also check that you have latest YAML.
I just built successfully on 2026.5.3.

ok thanks sorry newbie here appreciate the heads up.

Thanks for your work on this @formatBCE. I am wondering about the possibility of configuring the on device wake word detection to ignore sound from a particular direction? For example if the microphone is placed close to a television which stops the wake word being detected when it is at a high volume.

Hey!
I don't think it's possible without changing the XMOS firmware (which is sadly on Seeed side)...

I assume they use standard (omnidirectional) microphones, and use the tiny delay between sound received at one microphone before another to calculate the direction the sound came from. If so, ignoring one microphone won't make any difference.

I understand also that a device can subtract the signal going out the speaker from the signal coming in the microphone to "hear" any background noise (like you speaking the wakeword) ... but this can only work if the sound is going out through the device. Also, if the TV is at high volume, any remaining ambient sound will be a small portion. Unfortunately I think ambient background noise will always be a problem :frowning:

FWIW, in an effort to reduce the false positives from the TV, I placed a zigbee button on my livingroom coffee table and programmed it so:

  • An automation turns TV on 5 minutes before 6pm News, and turns off (mutes) the livingroom voice assistant as part of that automation
  • Inevitably there will be interruptions - phone or doorbell rings, wife wants to talk, go to toilet, etc. I press the button and an automation pauses the programme (if possible), lowers the TV volume, raises the light and enables the voice assistant.
  • when all is done, a double-tap on the button reverses the changes to return to the programme.

It's not fool proof, especially at the end of the night I have to remember to tap the button before giving the "goodnight" voice command to launch the automation to turn everything off. If I - or more often my partner - just uses the remote to turn off the TV things can get a bit awkward the next morning :wink:

I compiled and uploaded the firmware to the XVF3800 after updating ESPHome to version 2026.6.0. Unfortunately, when I try to play audio, I get an error:


[11:21:01.218][I][esp-idf:000]: E (804293) i2s_common: i2s_channel_disable(1262): the channel has not been enabled yet
[11:21:01.219][E][i2s_audio.speaker:102]: Speaker task setup failed (allocation, preload, or channel enable)

Has anyone else had to deal with this before?

Recompile now. Custom component was outdated. I fixed it.

I’m hoping someone can help me understand a few things before I dive into this and make a purchase. First my goal is to remove reliance on cloud and stay local for privacy. Currently we are an apple ecosystem with AppleTV 4k, homebridge deployed in proxmox, and many HomePod minis. I’ve replaced the HomePod minis for music with Sonos ones throughout the house but keep their microphones turned off. I have a few Alexa devices but I only use them to receive Amazon delivery notifications. We don’t use voice interaction very often as the majority of our smartphone is done through automation with motion sensors, contact sensors and device state rather than voice activation. However I recently setup a local LLM with Qwen2.5 connected to HA for dual modality tts and vision for my Scrypted integration. I’m really only interested in using the respeaker for wake word and speaking commands to turn lights on and off as an example not for playing music outside of a speech command to play music on my Sonos speakers. I’d rather use my Sonos speakers for music / tts output. Is there any downfall to not attaching a speaker to these devices and if so what is it? Is there anything I’m missing? Thanks!

You'd better ask on actual Home Assistant Discord or forum. This is topic about particular device, your message is rather wide existential question. :slight_smile:
That said, there are disadvantages on having TTS output for the ESPHome satellite on other player - e.g. delays for streaming responses will be bigger, and your device will still be thinking that it's answering. Also the AEC technology, that allows this device to subtract played audio from microphone input, wouldn't work with some separate speaker, which means greatly reduced wake word sensitivity, while TTS/music is being played.