TheBlackBox v2.0 - Propeller HSS Fx-Sequencer, has LEDS as buttons & indicators.
Clock Loop
Posts: 2,069
TheBlackBox: Release v2.0 - Propeller HSS FX/Sequencer with Digital Audio SPDIF output.
This is to announce v2.0.
Major changes, are use of a single eeprom and crystal.
Improved programming / commenting.
More videos of TWO black boxes operating together using the clock sync feature(new in 2.0)
-future input of accelerometer, theremin, and piano interface. Plus other input methods.
-uses VIEWPORT as a tool to do diagnostic and virtual interfacing.
-each prop communicates at 250Kbps using the "fullduplexserial" object.
Description: Propeller BlackBox Audio Sequencer V2.0
This device is an audio waveform creation and 32 step sequencer.
(for musicians, mostly electronica dj's) (aka... bassline sequencer, drum machine, 303, 909, etc.)
This device creates audio, it does NOT accept audio INPUT. (yet)
Features:
-Live fx mode to allow direct output of the current waveform set by 12 different potentiometers.
-The sequencer allows the fx to be loaded into any one of 32 steps in the sequencer.
- SPDIF audio output or analog output via a switch (not both at the same time)
- analog output to a monitor(at the same time as spdif/analog output above (headphones or studio speakers) to allow auditioning before outputting live.
- 3 encoders that allow - BPM, main volume, and BPM jumps(1/3, 1/2, 1/4, 3/4, 2/3) and a switch for jump direction. (main volume and bpm jump programming not complete yet)
- BlackBox to BlackBox CLOCK sync, input rca, output rca.(serial @ 150Kbps, works over 1 foot rca cable) (this is so many of these devices can be connected to one main BEAT CLOCK MASTER.)
- 32 LEDS are used as sequencer step indication, ALONG with using the 32 LEDS as buttons to load waveform
- 2 leds that start/stop the sequencer and live fx waveform.
- fully open source that uses the HSS code to generate the audio.
Schematic: See attachment BlackBoxV2.pdf
Block Diagram See attachment BBv2Block.pdf
- AudioSequencer(U1) prop uses all 8 cogs and has 18 I/O free.
- PotReader(U2) prop uses all 8 cogs and has 6 I/O free.
- LedReader16(U3) prop uses 5 cogs and has 8 I/O free.
- LeadReader32(U4) prop uses 5 cogs and has 4 I/O free.
Source Code:See attachment BlackBoxV2.zip fully commented.
Bill of Materials:
4- propeller chips, U1, U2, U3, U4
34- LEDS
1-tri color led. (common anode)
12- 1.5uf tantalum capacitors
12- potentiometers, I have used 20k and 100k, requires small programming changes
3- quadrature encoders
7- switches(on/on)
3- 1/8in stereo plugs
3- rca jacks
1- 5mhz crystal
1- 32kb eerpom (I used 256kb- (24lc256)
20- 10k resistors
4- 1k resistors
16- 470ohm resistors
2- 220ohm resistors
3- 560ohm resistors
2- 22ohm resistors
2- 10ohm resistors
12- 0.1uf nonpolar caps
2- 10uf polar caps
1- BlackBox(or any color you like to hold it all)
1- 3.3v power supply. (500ma)
!- Lots of wire, time and solder.
Pictures and Video: See Attachment:
BlackBoxV2Face.jpg
BlackBoxV2Inside.jpg(see post with viewport image attachment)
BBv2plugs.jpg
YoutTube videos:
Video demonstration of two black boxes, one controlling the other using the clockin/clockout located on prop U4. v2.0
Prior videos of a single box running v1.0
Really old videos: Prototype.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License
"Permission is hereby granted, free of charge, to any pers...........................
..............................OMITTED FOR FORUM...............................................
.................. OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "
The dsp/fpga king is dead, long live the prop.
Post Edited (Clock Loop) : 3/7/2010 12:22:07 PM GMT
This is to announce v2.0.
Major changes, are use of a single eeprom and crystal.
Improved programming / commenting.
More videos of TWO black boxes operating together using the clock sync feature(new in 2.0)
-future input of accelerometer, theremin, and piano interface. Plus other input methods.
-uses VIEWPORT as a tool to do diagnostic and virtual interfacing.
-each prop communicates at 250Kbps using the "fullduplexserial" object.
Description: Propeller BlackBox Audio Sequencer V2.0
This device is an audio waveform creation and 32 step sequencer.
(for musicians, mostly electronica dj's) (aka... bassline sequencer, drum machine, 303, 909, etc.)
This device creates audio, it does NOT accept audio INPUT. (yet)
Features:
-Live fx mode to allow direct output of the current waveform set by 12 different potentiometers.
-The sequencer allows the fx to be loaded into any one of 32 steps in the sequencer.
- SPDIF audio output or analog output via a switch (not both at the same time)
- analog output to a monitor(at the same time as spdif/analog output above (headphones or studio speakers) to allow auditioning before outputting live.
- 3 encoders that allow - BPM, main volume, and BPM jumps(1/3, 1/2, 1/4, 3/4, 2/3) and a switch for jump direction. (main volume and bpm jump programming not complete yet)
- BlackBox to BlackBox CLOCK sync, input rca, output rca.(serial @ 150Kbps, works over 1 foot rca cable) (this is so many of these devices can be connected to one main BEAT CLOCK MASTER.)
- 32 LEDS are used as sequencer step indication, ALONG with using the 32 LEDS as buttons to load waveform
- 2 leds that start/stop the sequencer and live fx waveform.
- fully open source that uses the HSS code to generate the audio.
Schematic: See attachment BlackBoxV2.pdf
Block Diagram See attachment BBv2Block.pdf
- AudioSequencer(U1) prop uses all 8 cogs and has 18 I/O free.
- PotReader(U2) prop uses all 8 cogs and has 6 I/O free.
- LedReader16(U3) prop uses 5 cogs and has 8 I/O free.
- LeadReader32(U4) prop uses 5 cogs and has 4 I/O free.
Source Code:See attachment BlackBoxV2.zip fully commented.
Bill of Materials:
4- propeller chips, U1, U2, U3, U4
34- LEDS
1-tri color led. (common anode)
12- 1.5uf tantalum capacitors
12- potentiometers, I have used 20k and 100k, requires small programming changes
3- quadrature encoders
7- switches(on/on)
3- 1/8in stereo plugs
3- rca jacks
1- 5mhz crystal
1- 32kb eerpom (I used 256kb- (24lc256)
20- 10k resistors
4- 1k resistors
16- 470ohm resistors
2- 220ohm resistors
3- 560ohm resistors
2- 22ohm resistors
2- 10ohm resistors
12- 0.1uf nonpolar caps
2- 10uf polar caps
1- BlackBox(or any color you like to hold it all)
1- 3.3v power supply. (500ma)
!- Lots of wire, time and solder.
Pictures and Video: See Attachment:
BlackBoxV2Face.jpg
BlackBoxV2Inside.jpg(see post with viewport image attachment)
BBv2plugs.jpg
YoutTube videos:
Video demonstration of two black boxes, one controlling the other using the clockin/clockout located on prop U4. v2.0
Prior videos of a single box running v1.0
Really old videos: Prototype.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License
"Permission is hereby granted, free of charge, to any pers...........................
..............................OMITTED FOR FORUM...............................................
.................. OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "
The dsp/fpga king is dead, long live the prop.
Post Edited (Clock Loop) : 3/7/2010 12:22:07 PM GMT
Comments
http://forums.parallax.com/attachment.php?attachmentid=68139
*********OLD VERSION***********
****THIS POST IS FOR V1.0
*** IF ANYONE NEEDS TO CONTACT ME, YOU CAN DO SO VIA EMAIL: ThereIsNoElectron (at) gmail (dot) com
link to thread in the prop sub forum. --> http://forums.parallax.com/forums/default.aspx?f=25&m=364607&g=376391#m376391
WATCH THESE VIDEOS TO SEE WHAT ITS ALL ABOUT.
www.youtube.com/watch?v=okM2F6MLqdU
www.youtube.com/watch?v=NF1m7U_kBpA
www.youtube.com/watch?v=9Jmz5LirTjs
www.youtube.com/watch?v=9qvSWtwnr_Y
www.youtube.com/watch?v=pX1QCD6xmJo
The hard work done by the HSS developer, http://www.andrewarsenault.com/hss/
and his choice to give the code away for free has spawned this monstrosity.
This project uses:
4 props, (4 - .075uf bypass caps 4 power pins)
4 - eeproms
4 - crystals
12 - 80k Potentiometers (you can substitute)
1 - quadrature encoder, (bpm)
34 - LEDS
4 - 56ohm resistors,
12 - 0.015uf caps, (104 ceramic)
12 - 330ohm resistors.
handfull of 1k ohm resistors,
hand full of - 10k ohm resistors
3 - 560ohm resistors
1 - tricolor led
2 - switches,
3 - 1/8in audio jack.
1 - RCA jack
1- 3.3v regulator
An enclosure case, and a power supply. (300ma 6vdc)
PROP 1: 8 cogs used.
-runs 1 analog HSS engine. - 2 cogs
-runs 1 analog or digital HSS engine. - 3 cogs (if digital 3, analog 2)
-runs sequencer, reads switches, runs fx. - 1 cog (heartbeat led runs in sequencer loop.)
-talks to prop 2 (full duplex serial 115200) (potientiometer prop) - 2 cogs. Sends beat. Gets Fx/leds/encoder
- 4 I/O for audio
- 6 I/o for switches
-2 i/o for serial
-1 i/o for heartbeat
PROP2 - 8 cogs used.
- talks to prop 1 (full duplex serial 115200) audio prop. Sends fx potentiometers, sends led states, sends encoders. - 2 cogs. Gets beat.
- talks to prop 3 (Gets 1-16 leds)(fx start, seq start) Sends beat - 2 cogs.
- talks to prop 4 (Gets 17-32 leds, encoders) Sends beat. - 2 cogs.
- reads frequency, LFO pots. - 1 cog. (for a more fluid response, only 2 are read)
- reads all other pots - 1 cog.
12 - i/o for potientiometers
6 - i/o for communications
PROP3 - 6 cogs used
- heartbeat led - 1 cog
- reads and lights FxStart - 1 cog
- reads and lights SeqStart - 1 cog
- reads and lights 1-16 leds when beat changes. - 1 cog
- communicate with PROP2 (full duplex serial 115200) sends 1-16leds, fxstart, seqstart. Gets beat. - 2 cogs
21 - i/o for leds
2 - i/o for comms
1 - i/o for heartbeat
PROP4 -6 cogs used.
- heartbeat led - 1 cog
- reads encoders - 1 cog
- reads and lights 17-32 leds when beat changes. - 1 cog
- communicate with PROP2 (full duplex serial 115200) sends 17-32leds, encoders. Gets beat. - 2 cogs
***- reads and sends midi beat sync - 1 cog. ***FUTURE***
17 - i/o for leds
2 - i/o for comms
2 i/o for midi
2 i/o for bpm encoder (i have 6 i/o for 3 encoders)
1 - i/o for heartbeat
*********OLD VERSION***********
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License
"Permission is hereby granted, free of charge, to any pers...........................
..............................OMITTED FOR FORUM...............................................
.................. OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "
The dsp/fpga king is dead, long live the prop.
Post Edited (Clock Loop) : 3/7/2010 1:10:56 AM GMT
Nice!
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Visit the: The Propeller Pages @ Warranty Void.
www.youtube.com/watch?v=9qvSWtwnr_Y
Well, only 1 prop is the sound generator. It outputs 3 audio signals. 2 are analog and run in seperate HSS engines on the same prop.
1 is a digital spdif signal (also runs a HSS engine)that runs to an rca jack and a 1/8in jack.
A switch chooses between having the main output be digital or analog.
The monitor output is always analog.
Two switches let one choose where the fx sound goes and where the sequencer goes.
The choices are MAIN out or Monitor out.
This is so one can have headphones on before outputting to the main mix.
Or you could have the sequencer outputting on the main line while the fx is running on the monitor (so you can listen to fx before you load it into the sequencer)
All this is to allow live playing of the device.
PROP 1: 8 cogs used.
-runs 1 analog HSS engine. - 2 cogs
-runs 1 analog or digital HSS engine. - 3 cogs (if digital 3, analog 2)
-runs sequencer, reads switches, runs fx. - 1 cog (heartbeat led runs in sequencer loop.)
-talks to prop 2 (full duplex serial 115200) (potientiometer prop) - 2 cogs. Sends beat. Gets Fx/leds/encoder
- 4 I/O for audio
- 6 I/o for switches
-2 i/o for serial
-1 i/o for heartbeat
PROP2 - 8 cogs used.
- talks to prop 1 (full duplex serial 115200) audio prop. Sends fx potentiometers, sends led states, sends encoders. - 2 cogs. Gets beat.
- talks to prop 3 (Gets 1-16 leds)(fx start, seq start) Sends beat - 2 cogs.
- talks to prop 4 (Gets 17-32 leds, encoders) Sends beat. - 2 cogs.
- reads frequency, LFO pots. - 1 cog. (for a more fluid response, only 2 are read)
- reads all other pots - 1 cog.
12 - i/o for potientiometers
6 - i/o for communications
PROP3 - 6 cogs used
- heartbeat led - 1 cog
- reads and lights FxStart - 1 cog
- reads and lights SeqStart - 1 cog
- reads and lights 1-16 leds when beat changes. - 1 cog
- communicate with PROP2 (full duplex serial 115200) sends 1-16leds, fxstart, seqstart. Gets beat. - 2 cogs
21 - i/o for leds
2 - i/o for comms
1 - i/o for heartbeat
PROP4 -6 cogs used.
- heartbeat led - 1 cog
- reads encoders - 1 cog
- reads and lights 17-32 leds when beat changes. - 1 cog
- communicate with PROP2 (full duplex serial 115200) sends 17-32leds, encoders. Gets beat. - 2 cogs
***- reads and sends midi beat sync - 1 cog. ***FUTURE***
17 - i/o for leds
2 - i/o for comms
2 i/o for midi
2 i/o for bpm encoder (i have 6 i/o for 3 encoders)
1 - i/o for heartbeat
Post Edited (Clock Loop) : 8/14/2009 3:17:07 AM GMT
The leds will only register my finger blocking the light proplerly when GROUNDING MY SELF TO THE DC GND.
( a benefit of this random nature of noise in the system, it allows one to activate the fx and modulate the frequency
That says to me I have noise, and need to filter it. I use a cell phone charger as my power source, this device uses about 200ma power, it takes the 300ma 6vdc power and regulates it to 3.3v using a LDO regulator with 220uf, 10uf, 1uf filter caps. A 10k resistor is across all caps to discharge at power cycle.
Next is to try a power supply with a ground. (cell phone chargers are 2 prong)
If anyone wants to improve my code, make suggestions or what not. Feel free.
The code is partially commented. And will get better and more comments as time passes.
Because it involves so much code, I don't know if I should put this into the obex or just leave it here as a finished project. And or make a finished project thread in the finished project thread.
Post Edited (Clock Loop) : 8/14/2009 10:24:04 PM GMT
[noparse]:)[/noparse]
Perhaps this should be called..
TheBlackBox: Release v1.0
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License
"Permission is hereby granted, free of charge, to any pers...........................
..............................OMITTED FOR FORUM...............................................
.................. OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. "
The dsp/fpga king is dead, long live the prop.
And a new video showing the BPM range.
www.youtube.com/watch?v=pX1QCD6xmJo
Post Edited (Clock Loop) : 8/15/2009 10:48:39 PM GMT
Good work.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Share the knowledge: propeller.wikispaces.com
Lets make some music: www.andrewarsenault.com/hss
See first post in this thread.
The file attached is the viewport output.
Nothing special yet.
I don't understand viewport very well yet.
But I hope I can include a virtual interface to the black box using viewport.
The image attached is the second box that was also made by freehand wiring.
This would have been done with a pcb if funds were not limited.
Post Edited (Clock Loop) : 2/27/2010 5:51:18 AM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
Yes, the PotReader (U2) prop launches a cog that first starts a counter to generate the 5mhz.
It is definetly a "master must run" scenario.
All 3 props (U1, U3, U4) get clocked from one of U2's counter outputs. (U2, P0)
Trying to tie ANYTHING to either crystal's output will distrupt the operation of the props resonator circuit.