"ReSpeaker Lite" - new Seeed Studio Voice Assistant Development Kit hardware combine ESP32 with XMOS XU316 DSP chip for advanced audio processing as a ESPHome-based Home Assistant Assist Satellite voice devkit

You’re right too… I hadn’t even thought about that :thinking:

1 Like

Check new version of base config in the repo. Works as it should now.
Koala to follow soon.

2 Likes

Tested… it works
thanks

1 Like

I just updated everything, since I have been busy for the last 6 months I didn’t really follow the all the new possibilities.

I’m using a Respeaker lite, with external media player for output. Now with formatBCE blueprint. I used to edit the yaml.

I’m still missing these things though

  • Wakeword confirmation on external speaker
  • Timer on external speaker

Is this possible in anyways?

You may just put Respeaker to that speaker with jack.
Otherwise I don’t think it’s possible.

sending outout to external mediaplayer is still a “hack” that breaks some functionality depending on how you do it, how are you doing it?

Yup, it’s hack. I post URI to the stream in event, and react to it in ha

1 Like

ok, the old “hack” from the atom days was to send the text on tts start, which works but isn’t optimal for several reasons:

  on_tts_start:
    - homeassistant.service:
        service: tts.speak
        data:
          media_player_entity_id: media_player.proto_mini
          message: !lambda 'return x;'
          entity_id: tts.piper_old

was just wondering how he does it

Yeah I do it the same way. I just don’t hardcode media player, because to change it would require recompiling. Instead I send ESPHome event to the HA, and then send this Uri to any player there with automation.

Ah, no, this one is using TTS. I prefer using Uri with already created audio - this way it sounds as it was made in pipeline.

1 Like

i was just wondering how bloody2k was doing it :man_shrugging:

question is, will it still be streaming then?, disadvantage with tts is that it will not use the voice of the pipeline but the default one of TTS engine of choice…

I believe so. At the time you received the URL to mp3, TTS already decided if it’s streaming or not - and that Uri is either ready to play mp3, or buffered stream behind.

1 Like

Just finished setting one of these up myself. I designed a case to fit with a speaker and usb c connector from Amazon: https://www.thingiverse.com/thing:7175805

Would love to make it full local, but feels like TTS and STT is just slow running on my HA instance.

Yeah for good STT you need something mild-beefy. :slight_smile:

If you want some advice on a suitable speaker… I’ve tested a few and so far the best (passive) one is this one:

5W8Ohm bulky… but has a very good audio extension and high volume without distorting.

The other alternative is a 12V mono mini audio amplifier with a 10w audio jack input with a passive speaker (you would need to use a 12-5v transformer for a single power supply).

A single passive speaker connected to the respeaker works well, but in my opinion, it needs a suitable resonance box. Otherwise, the audio doesn’t have the right depth.

Hm, specs on Respeaker say 4Ohm impedance. But if 8 works okay - that’s great! I didn’t actually try it at all.

I actually bought two 8-ohm ones to put in series… but I realized they were a bit large and using them together or alone the difference is little or even none.

Using higher impedances doesn’t cause any problems except perhaps a reduction in power… but I can assure you that you can’t keep it at maximum (I keep it at 60%).

They sound very similar to today’s most popular assistant speakers.

the dimensions are also similar to the respeaker… perfect for creating a symmetrical box.

Since I don’t have a 3D printer, I’ll make do with what I have… this is a contact lens box:

and this is the same box after the transformation:

3 Likes

sorry if I go back to the topic… the correct PINs for TX and RX to be soldered are D3 and D2 (they should). How should they be reported in the configuration?
Normally in the UART configuration for my ESP32S3 I insert:
tx_pin: GPIO26
rx_pin: GPIO14
but how are pins D3 and D2 recognized on the Respaker?
tx_pin: GPIOD3
rx_pin: GPIOD2

(otherwise I’m wrong, D2 should be GPIO3 while D3 should be GPIO4?)

D2 is GPIO3, D3 is GPIO4.

I don’t like this “D#” notations and find them confusing… :slight_smile: But it is what it is.