I havent used the adafruit MP3 board, but the FX board is really good with the exception that it doesn't have gigs of space. Having used a different shield you will definitely have to mod the programming, but it should work just fine. Would definitely go for the version with the 3Watt amp

So, after some playing around with the Adafruit FX board, SERIAL MP3 PLAYER V1.0 from CATALEX, and The Citrix EZMP3
The FX is great, but limited in space...cause I want to put more songs on it than I should. I also used the version with a headphone out and no amp; the sound volume was lacking for sure.

The MP3 player from Catalex is cheap and has loud volume, but it picked up a lot of distortion and had pops when tracks ended.Some crazy programming with timers is required for looping. I dont know if it has an "Amp", but it is louder than an FX board that doesnt have an amp.

The citrix EZMP3 shield has good sound, good volume because of the 3W amp, but only plays MP3 and Wav files. There is a pop after a wav file stops playing and a gap when one MP3 stops and another starts. I haven't been able to remedy this, but its not too noticeable.
I used the same headphone jack version on my droid.



I hooked it into a cheap audio amplifier and then out to two 120 watt 4 ohm 3.5 inch speakers. Droid has TONS of volume but with a setup like that you must use a ground loop isolator like this


If I wasn't trying to save as much weight as I was I would probably look at a similar setup in my proton pack.
Almost everything in the current design is 5v or 3v so you could potentially use that. It's basically a two output source with one output sporting 1 amp and the other up to 2. I would use the 2 amp output for the arduino/audio board/led's and the 1 amp for the audio amplifier. I would wire things the same just omit the converters and power the ardiuno from vin instead of the 5v since the output of that brick is a bit unknown. In the diagrams if you see things connected directly to the converter make sure they are also connected directly to the pack. You will need to modify some usb cables to pull the power/grounds.

It's hard to say how stable a voltage that will have under load. One of the reasons I went with larger voltage sources and used the converters.
I am happy to report that I wired it all together and it works! (mostly)

My speakers are really quiet though, which I suspect may be because the 2nd output on that power bank is only putting out 1A; so I think I'm going to try the power bank NotSabbat suggested and see if I get a better result with that. (Nevermind, it appears that one has the same A output on each port as my current one.)

CountDeMonet, would you know how to add the ability to adjust the sound via a potentiometer to this setup?
The voltage on that 1amp power port may be sagging under load. I believe I set the buck converter to 5.5v going into this amp feeding two speakers.

They are loud enough for a quiet room to be quite annoying but if you are doing events and you really want the sound to be loud I'd switch to a larger amp and 4-5 inch speakers. I did that for my droid using one of these amps

feeding these speakers

I use the dial on the larger amp to control volume. In this amp I am feeding the full 12v from the battery to the amp. Very loud :) but it does increase the weight quite a bit. Since my build was for my 6 year old son I needed a solution that was loud enough but not heavy.

Here's a video on controlling audio level with a potentiometer. I think there are a lot of examples out there for it.
I haven't been able to find my multimeter, so I cant confirm the Amp output, but per the graphics on the Amazon link I posted the output on both USB ports was change from 1amp and 2.1amp to 3.4amps.
So, take that as you will ¯\_(ツ)_/¯
It charges phones pretty quickly.

Here is a wall of text describing how I think our setups are similar. There is a TLDR bottom line, well...at the bottom.

So, I have two packs that have full lights and sound. One is a mad scientist project that shoves all kinds of stuff into a pack and is hardly applicable to this conversation, but the other is very similar to what you are putting together, though it does have its own weirdness to it;

It has a single usb cable that is the power input, ie what I connect the power bank to. That usb cable goes to a USB 3.1 splitter. Specifically this one:

https://www.microcenter.com/product/485 ... ub---black

I specifically purchased a USB 3.1 hub because the amp output of .9amps per usb port (of course thats dependent on the input, but I wanted to make sure I had the capacity) and I wanted to be able to just plug stuff in.

I have the Arduino board plugged into one port for power and I have the soundboard wired to the Arduino board for power (I believe. Its been awhile since I have looked at that one) and then I have two USB speakers connected to two other ports in the hub. I followed CountDeMonet's plans almost exactly when wiring up all the lights, etc. to the gun and rest of the pack (except I left the resistors out of the bargraph, but thats another story). I used 2 USB powered speakers from Microcenter (I have the volume on each set at about 80-85% of max) for the sound. The pack isnt the loudest Ive ever heard, but it can be heard well enough at a con to be shown off, so its not bad:

https://www.microcenter.com/product/485 ... -sound-bar

As I said everything is run from a single power bank. I have used the one I link above many times and it will run the pack on idle with hum for around 40 hours...In case you need to do that.

I have also used these el-cheapo power bank from microcenter (there is one close to me).

https://www.microcenter.com/product/488 ... nk---black

It is a 2,600mah battery pack with a .8A output and it will run that pack for around 4.5 hours.

I dont know what kind of speakers you are using, so it might be an Amps issue, I dont know. However it is possible to run a pack with very satisfactory sound on a 1.2amp port (or less apparently).

TLDR: One issue that I DID have is that the 3.5mm did not make a good connection in the jack in the sound card, so the sound was super soft at first. I re-seated it a bit and rotated it and now its fine. That may be all that is wrong with yours as well.
After reading through a good portion of this thread, and scouring the github page, I have decided to join this experiment.
Just about all my goodies arrived this week.
I am running the Arduino nano, the adafruit audioFX 16Mb sound board , the bargraph from digikey with the sparkfun breakout board, the Lepy 808 amp and the Pyle 3.5" 120w speakers.
I also got the talentcell 12v 6000mAh power bank from the recent thread.
On top of all that I ordered the parts for a couple of the e-cig fog machine setups.
Some of the mods from the base setup I want to do are to add the interior light to the wand, and the light out by the barrel tip.
I am also thinking about making the momentary switch out on the barrel toggle the movie quotes on and off.
I have also included an a/b switch and a bluetooth dongle that will plug into the power banks USB port and allow the pack to be a bluetooth speaker.
I'm sure I will have some questions.
By the way, this little pile of stuff adds up to over $250.
I decided to go this route because this entire pack build has been about learning new things, and assembling an electrical project like this is a good challenge.
Image238 by banjoben42, on Flickr
Good luck with the build. I really enjoyed building and learning with this project and I hope you do too. You should be able to do all of the added functionality with 2 extra pins. Should be able to do all that with the nano. I helped this guy get the smoke working with the relay and ecig setup. The code is here if you have not seen it. https://github.com/AAWerding/Proton-Pack-Code
Well, It's 11:30 Sunday night. I gotta be up for work at 5, so I gotta call it quits.
I have my nano flashed with the straight code (wand with bar graph) from github, nothing changed. added the libraries and it let me upload it just fine.
I have the .wav files all loaded to the FX board, but not the .ogg theme yet.
I have 5 volts even and the power lights on both boards light up
I have the cyclotron/powercell/ vent light string attached
and I have the toggle switches temporarily wired up
nothing else is attached yet
when I flip the startup switch.........nothing.
I have triple checked my wiring to the github schematic, and checked all my connections. I have also checked voltage on the LED string and it's good.
Tired and need to stop for the night. I hope to come at it fresh tomorrow and figure out what stupid thing I have done.
Does it need to see the sparkfun board before it will work?
With the latest code I am no longer checking the reset on the sound board. If the sound board is not present then it should boot and run the code just slowly. I would start by checking the solder joints for all of the arduino pins as well as the switches. One quick test would be to load up the spirit code and set the powercell pin inside it to the one you are using. That will test the neopixel power and code without worrying about the switches.

I have added the ecig relay code here: https://github.com/CountDeMonet/Arduino ... _Relay.ino

Relay's are pretty simple with arduino you just have to know if they are normally open or closed. I believe this code is expecting normally closed. Basically if the relay is acting opposite of what you expect then reverse the high/low setting everywhere you see digitalWrite(relayPin, LOW); and digitalWrite(relayPin, HIGH); will fix it

I won't get into the wiring of the relay. You will need to find your power source and hook it up for whatever you buy.
NotSabbat, cliffjacob liked this
AHA!!! I got it.
It was in fact that the sparkfun board that runs the bargraph was not hooked up.
Once I plugged in the power and data wires to that board everything powered up and ran.
I was attempting to see if things would work without building all the extra circuits. apparently that was not the best plan.
Since then I've been blasting breadboard ghosts all over my shop! hahahaha.
NotSabbat liked this
oh, and It is running the new flash with the vent relay added. I have the parts to build the e-cig fog machine already so I made sure to take advantage.
the only other mod I plan to make is that I would like to make the momentary button on the wand tip toggle the movie quotes on and off, and have the amber light next to it indicate if it's active or not.
NotSabbat liked this
Glad you got it sorted. it's been so long since I ran the bargraph code myself I forgot it also will halt on init if not found. I was planning to get around to doing some light flashing alerting when those issues came up but never went back to resolve it. If you remove this line

if (!io.begin(SX1509_ADDRESS)) {
while (1) ; // If we fail to communicate, loop forever for now but it would be nice to warn the user somehow

then it will boot up without the bar graph but likely run really slowly
having a silly problem with the venting i cant wrap my head around
the relay will switch on for a split second and turn off then the vent light will come on
if i add a delay of 5000 for the relay
the relay will switch and my pump will run for 5 seconds then stop after this the vent light will come on
how do i run the relay and the vent light simultaneously for say 5 seconds ?
I am hitting a coding block. Ive connected a second adafruit board to my Arduino board so that I can get audio to play on a separate speaker in my gun.
Im using a Mega board, base code works fine.

Here is the basics of what Ive been adding:

// soundboard pins and setup
#define SFX_RST 23
#define SFX_RX 10
#define SFX_TX 11
const int ACT = 9; // this allows us to know if the audio is playing

// soundboard pins and setup
#define SFX_RSTGun 25
#define SFX_RXGun 12
#define SFX_TXGun 13
const int ACTGun = 8; // this allows us to know if the audio is playing

SoftwareSerial ss = SoftwareSerial(SFX_TX, SFX_RX);
Adafruit_Soundboard sfx = Adafruit_Soundboard( &ss, NULL, SFX_RST);

SoftwareSerial ssGun = SoftwareSerial(SFX_TXGun, SFX_RXGun);
Adafruit_Soundboard sfxGun = Adafruit_Soundboard( &ss, NULL, SFX_RSTGun);

Both boards are connected to the Mega and will work individually on those pins, but when I tried to start both the serials, the pack will no longer turn on.
void setup() {

if (!sfx.reset()) {
while (1);

if (!sfxGun.reset()) {
while (1);
you are trying to init the second software serial with the firsts serial port

SoftwareSerial ssGun = SoftwareSerial(SFX_TXGun, SFX_RXGun);
Adafruit_Soundboard sfxGun = Adafruit_Soundboard( &ss, NULL, SFX_RSTGun);

should be

SoftwareSerial ssGun = SoftwareSerial(SFX_TXGun, SFX_RXGun);
Adafruit_Soundboard sfxGun = Adafruit_Soundboard( &ssGun, NULL, SFX_RSTGun);

Since you switched to the mega I would recommend using the hardware serial ports for communication. I believe it has 3 of them.
CountDeMonet wrote: September 28th, 2019, 4:24 pm you are trying to init the second software serial with the firsts serial port

SoftwareSerial ssGun = SoftwareSerial(SFX_TXGun, SFX_RXGun);
Adafruit_Soundboard sfxGun = Adafruit_Soundboard( &ss, NULL, SFX_RSTGun);

should be

SoftwareSerial ssGun = SoftwareSerial(SFX_TXGun, SFX_RXGun);
Adafruit_Soundboard sfxGun = Adafruit_Soundboard( &ssGun, NULL, SFX_RSTGun);

Since you switched to the mega I would recommend using the hardware serial ports for communication. I believe it has 3 of them.
I did correct that at one point and it didn't work. I was surprised to see that it was still set as "&ss" in the text I copied. Just to make sure I corrected it, uploaded it, tried it again (will not power on), reset the boad and tried turning it on again and still no joy.

It will at least power on until I add "ssGun.begin(9600);" under void set up.

I did try to use the hardware TX and RX, but had zero luck with them. I switched over to the current pins and both boards will work, if not at the same time.
  • 1
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
A Noob Build Thread

Im in the same boat. Ive been trying to take my ti[…]

Earlier today Charles posted this via his Facebook[…]

Calgary Ghostbusters announced their Stantz patch […]

So... less than 24 hours to go, it looks like tomo[…]