December 21, 2024
Description
Note: A new case design with potentially better microphone quality is available:
https://www.printables.com/model/873274-fabric-wyoming-satellite-case
Non-printed materials required for assembly
1) M2 8mm round head screw - 2 pieces
2) M2 20mm round head screw - 4 pieces
3) M3 8mm flat head screw - 3 pieces
4) Respeaker 2-Mic board from Seeed - availabe on AliExpress https://aliexpress.com/item/1005005990516681.html
Note: the respeaker board from Keyestudio has a speaker header that is incompatible with the plug from the 3W speaker (at least the one that I got).
5) 2831 8 Ohm 3W speaker - availabe on AliExpress https://www.aliexpress.com/item/1005005247563116.html?&sku_id=12000035552488960
6) Pi Zero 2W with headers. You can either install the headers yourself or buy one with preinstalled headers. I bought a board with headers pre-soldered on AliExpress: https://aliexpress.com/item/1005003533448650.html
7) microSD card. I bought a 32gb endurance Samsung one.
8) Official MicroUSB Raspberry Pi power supply (don't cheap out on power supplies!)
9) Optional - a small heatsink for the Pi's SoC. I bought it on AliExpress too: https://aliexpress.com/item/32795900158.html
Printing tips:
1) Case needs to be printed with Snug supports, can be printed at 0.2mm (I printed at 0.15 for smoother appearance). For ease of support removal, you may want to set XY separation between an object and its support to 100% or 150%. PLA or PETG is fine.
2) Print 6 pieces of regular M2 washers and 4 pieces of “tall washers”.
3) Print the button at the highest possible detail to achieve smooth appearance of the concave part.
4) Orient the bottom lid part in a way so that the side that will be facing the outside will be the first layer and thus take the texture of the print bed, for better appearance.
Assembly tips:
1) Place the tall washers between the Respeaker board and the Pi Zero board, then add normal washers on top and secure the 2 boards to the case with 4 M2 20mm round head screws. The “tall washers” placed inbetween provide better structural rigidity.
Disclaimer: The audio quality on this is really not great but it's usable as a smart speaker.
Software installation tutorials:
https://www.youtube.com/watch?v=eTKgc0YDCwE
https://github.com/rhasspy/wyoming-satellite/blob/master/docs/tutorial_2mic.md
Here are some options I've found useful when setting up the satellite and openwakeword services with this particular satellite I've built:
from wyoming-satellite.service:ExecStart=/home/pi/wyoming-satellite/script/run \ --name 'Pi Satellite' \ --uri 'tcp://0.0.0.0:10700' \ --mic-command 'arecord -D plughw:CARD=seeed2micvoicec,DEV=0 -r 22050 -c 1 -f S16_LE -t raw' \ --snd-command 'aplay -D plughw:CARD=seeed2micvoicec,DEV=0 -r 22050 -c 1 -f S16_LE -t raw' \ --snd-volume-multiplier 0.35 \ --mic-auto-gain 5 \ --mic-noise-suppression 1 \ --mic-seconds-to-mute-after-awake-wav 0\ --wake-refractory-seconds 3 \ --awake-wav 'sounds/awake.wav' \ --timer-finished-wav 'sounds/timer_finished.wav' \ --timer-finished-wav-repeat 3 3 \ --wake-uri 'tcp://127.0.0.1:10400' \ --wake-word-name 'ok_nabu' \ --event-uri ‘tcp://127.0.0.1:10500’
License:
Creative Commons — Attribution — Noncommercial — Share Alike
9