I have a new speakerPhat the first issue I encountered was no sound at all. After resoldering everything I still wasn’t getting any sound so I reinstalled raspbian jesse and still had no sound. I eventually resoldered in a spare speaker I had sitting around (specifically one from the phat beat). Now I try running the test.sh file in the speakerphat test folder and I am getting: “Front Left”, “Front Right”, played and then after that the speaker pops and I don’t get any sound. Presumably there was some sort of error because I also get disconnected from my rasp pi (I’m doing this via ssh).
The following is the output I am getting from the test:
pi@raspberrypi:~/Pimoroni/speakerphat/test $ ./test.sh
Playback device is default
Stream parameters are 48000Hz, S16_LE, 2 channels
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 96 to 1048576
Period size range from 32 to 349526
Using max buffer size 1048576
Periods = 4
was set period_size = 262144
was set buffer_size = 1048576
0 - Front Left
1 - Front Right
Time per period = 3.212400
testing basic wav playback
Playing WAVE './test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Connection reset by 192.168.1.20
I do believe you need to be running Stretch. There was a similar issue with the pHat Beat that was fixed with an updated installer. There was a change in the way audio is handled between Jessie and Stretch. @gadgetoid knows all the ins and outs.
I switched this back to stretch and I am seeing the exact same problem with the speakerphat playing a bit and then disconnecting and playing no audio. This appears to be consistent with the different things I have tried to play on it.
I’m still doing it all by SSH so I decided to try it locally-ish by running the test.sh for the speakerphat though a crontab using @reboot. I’m still seeing the same behavior this way and the rasp pi keeps rebooting over and over after playing a couple seconds of audio.
edit: hilariously, because of this reboot cycle I can’t ssh in to remove the crontab.
Without the speakerphat it’s fine and won’t reboot. The power is directly from the wall I have the USB power from the rasp pi going into a generic usb to wall outlet plug thing (I’m not sure what it’s rated for but I’ve tried a couple different ones to the same result). I’m still seeing the same behavior.
edit: to be clear I sometimes get a little longer playback, but generally its about 1-5 seconds and then the speaker pops and dies.
It’s quite likely it could be the power supply if you’re using a USB cable to a USB wall outlet, they tend to have slightly worse performance than captive cables- although the whole USB power supply market is a minefield so it’s very hard to pin any specific products as bad. We usually recommend an official Pi power supply because we know it’s good, but a Pi Zero is usually pretty comfortable running on lesser supplies.
It’s also possible it could be a short between the speaker terminals- the abrupt reboot/power cycle is a clear sign of a power issue, but that could be that something is drawing an unusually large amount of power, rather than the power supply being poor.
Thinking on this further I have a single 5W 4Ω speaker hooked up to the speakerphat because the one that came with it was dead. Is it possible that the speakerphat cant drive this speaker? since it comes with the 8Ω 2W speaker?
I’ll continue on investigating power stuff I believe I have the official Pi power supply somewhere.
Soldering on the speaker pHat doesn’t look all that bad. I’ve seen a lot worse. There is one connection by the 100 marking on the board, on the side next to the VU meter that looks a bit iffy. I’d reheat it and apply a little more solder. I think its pin 25 which is a ground so its likely not the issue. Wouldn’t hurt to fix it anyway.
One thing I would definitely do, is redo where the speaker is soldered to the speaker pHat. That extra bare wire can easily short out on the components on the board. I would unsolder the two speaker wires. Tin the ends with solder. Then snip off the extra leaving just enough bare wire to solder to the two terminal on the pHat beat. Just like the way black wire is soldered to the speaker.
One little trick when dealing with stranded wire is this. After you strip it back, twirl the ends so the strands all stick together in a spiral. Then tin the end with solder so they all are soldered together. It will look like the end of the red wire soldered to the speaker. It will look like one thick wire. Its a lot easier to solder to things when its already tined with no stray strands sticking out that can short on something.
edit: I’m not sure if this is helpful, but I recorded a video so you can get an idea of what kind of sound I am getting https://youtu.be/_PpMxZyDOK4… the output remains the same from my OP on the command line. I wonder if I should start digging into the error logs on the OS?
May I ask what your using for a soldering iron? The GPIO header in that last picture looks to have some heat damage to it? The edge is melted or something.
I still think there is too much bare wire on those speaker wire connections. You could easily trim them to half of what’s there and still make a good connection. I mean no offence or disrespect, its just the electronic technician in me that’s see’s a potential issue in the making.
Yeah sorry I was going quick and dirty and trying to get it to work and not being super clean. LOL It’s the software engineer in me I go red - green - refactor (to clean it up) so my brain right now is like JUST MAKE IT GREEN NOT CLEAN. lol
Ok, fair enough. Been there done that myself. It’s tricky sometimes asking certain questions not knowing somebodies background etc. Soldering I find especially hard to critique. I want to be constructive without offending somebody or turning them off from trying to fix it or have them just giving up.