I am planning a project (my first ever electronics project) to build a solar powered speaker that is able to play audio tracks from an SD card on a loop/timer, ideally turning off when not in use.
I have looked for other projects but haven’t been able to find anything that similar. At this stage I am planning to buy the following parts:
Is there anything I have missed or is there an obvious alternative that would be simpler? For instance using an arduino and an SD card reader? Any advice or links to similar projects would be much appreciated!
I think this is a good setup, but I have a few suggestions.
I think that you will need a much larger solar panel to charge the system. The panel you have chosen only provides 170mA in the best conditions. I think it will take a couple days to recharge your battery.
Go with a bigger solar panel and a bigger battery.
With this setup, the battery will take 5 hours of direct sun to charge, and the battery should last a couple of hours.
As far an RPI vs Arduino. Arduino could be a little simpler, but if you use a Pi Zero W then you have Bluetooth and Wifi baked right in and you could later add those features to your device without any hardware changes.
Ok, great. In terms of the coding side of things;
what would be the best resource to learn or copy/modify code to play loops of audio and then switch off?
is it true that the arduino is easier to shut down between playback loops compared to the RPI?
if I swap out the RPI zero for an Arduino are all of the other components interchangeable?
I bought the exact same solar charger and panel. I agree with Stephen you need a bigger panel and LiPo.
Mine took a couple of hours to just top up a 400mAH battery, not a full charge. Make sure your battery is in the shade in your design, my battery got warm and it was in the shade with the panel in the sun. Using a plug pack charger the battery does NOT get warm.
Having used the DRF0264 charger, I would opt for DFR0559. It is reasonably priced, not too large and has many more options. USB charge in, solar charge in, USB power out. The DFR0559 I ordered today so my info is only based on the web page.
Sunflower: Solar Power Manager 5V SKU: DFR0559 $12.60
The SEEED solar panels are pretty basic, cheap but not many frills. Just a bare panel with JST attached to 2 wires. There is no edge protection. The Adafruit are much more expensive but look good quality.
Having used the Arduino extensively and now trying out the Pi Zero; I would suggest the Pi as it is basically a Linux computer with all that comes with that kind of system. Buy one of the kits that includes all the stuff you need to get it working. The link you provided is not enough to get the Pi running. I know its a lot more expensive but you will buy that stuff anyway, certainly a power supply. I bought this starter kit, plugged in a monitor, keyboard and mouse and I was up and running. Raspberry Pi Zero W Starter Kit #### SKU: CE04765 $64.95
But I can see either Arduino or Pi working well for your project, up to you. Arduino is a steep learning curve if you have no experience in programming micros. The Pi is s little more friendly.
As a final observation. I would break the project down into manageable chunks. What you are proposing is excellent but rather complex.
Awesome - thanks heaps for the input James. Great to hear from someone who has experience in a similar project. I’ll take those tips on board. I have no programming experience so I’ll stay with the RPI. No doubt there will be a steep learning curve but hopefully it’ll work out eventually.
Can anyone advise of the best way to connect the pi to the battery (via the solar lipo charger)? I’m assuming it needs to have a micro usb connector at the pi end and two bare wires at the charger end?
The easiest way would probably be to use a USB Breakout and then just a normal micro USB cable.
Ok so I would need to connect the USB to the lipo charger somehow? Could another option be to just upgrade to the Sunflower: Solar Power Manager 5V (https://core-electronics.com.au/sunflower-solar-power-manager-5v.html)?
Yes that is what that board is for