Shop OBEX P1 Docs P2 Docs Learn Events
TheBlackBox: Release v2.0 - Propeller HSS FX/Sequencer with Digital Audio SPDIF — Parallax Forums

TheBlackBox: Release v2.0 - Propeller HSS FX/Sequencer with Digital Audio SPDIF

Clock LoopClock Loop Posts: 2,069
edited 2018-01-18 09:20 in Customer Projects
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 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
www.youtube.com/watch?v=d6xiQUrkHj8&feature=PlayList&p=0C1CD6112E208114&index=2


Prior videos of a single box running v1.0
www.youtube.com/watch?v=okM2F6MLqdU
www.youtube.com/watch?v=NF1m7U_kBpA
www.youtube.com/watch?v=9qvSWtwnr_Y
www.youtube.com/watch?v=pX1QCD6xmJo

Really old videos: Prototype.
www.youtube.com/watch?v=9Jmz5LirTjs
www.youtube.com/watch?v=nMg8yLtOkA0

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
TERMS OF USE: MIT License & Licensed under the TAPR Open Hardware License (www.tapr.org/OHL)

"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:34 PM GMT
640 x 480 - 336K
1024 x 891 - 1M
1800 x 632 - 1M
1730 x 761 - 2M
1198 x 640 - 1M
1072 x 1200 - 244K
1024 x 768 - 314K

Comments

  • Clock LoopClock Loop Posts: 2,069
    edited 2009-08-16 03:20
    *********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:09:57 AM GMT
    1280 x 1433 - 2M
    1280 x 894 - 1M
  • GWJaxGWJax Posts: 267
    edited 2009-08-16 15:58
    Nice free hand work on the internals. Plus great job!! Now all I have to do is download your code an take a peek inside. I love the video's you provided a very nice touch to your completed project post..

    Jax

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If a robot has a screw then it must be romoved and hacked into..
  • ManetherenManetheren Posts: 117
    edited 2009-08-17 11:18
    What is the purpose of this project? What does it do?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Tia'Shar Manetheren
  • Clock LoopClock Loop Posts: 2,069
    edited 2009-08-17 23:47
    Manetheren said...
    What is the purpose of this project? What does it do?

    Watch the videos that are at the beginning of this thread.

    If you still don't get it, look up something called a drum machine, a synthesizer, and a sequencer.
  • ManetherenManetheren Posts: 117
    edited 2009-08-18 11:18
    I cannot watch videos from my computer. Thanks for the info.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Tia'Shar Manetheren
  • skylightskylight Posts: 1,915
    edited 2009-08-18 14:02
    nice use of the leds as touch sensors
  • mikedivmikediv Posts: 825
    edited 2009-08-18 16:51
    Clock Loop.. awesome its a good demonstration on how to use multiple props as well , very nice
  • Clock LoopClock Loop Posts: 2,069
    edited 2009-08-18 23:50
    GWJax said...
    Nice free hand work on the internals. I love the video's you provided a very nice touch to your completed project post

    Thanks! No project is complete without multimedia + code + schematics.
    skylight said...
    nice use of the leds as touch sensors
    Thanks, the prop makes it easy.
    mikediv said...
    Clock Loop.. awesome its a good demonstration on how to use multiple props as well , very nice
    Thanks, Yea, my method of prop communications isn't the greatest, but it works.

    I basically just blast the values over the serial, and on the receiving prop I have it look for the start number "say 113" and then after it sees that number, it starts to capture all the data after it for a certain number of bytes. Its pretty simple and allows me to transmit at 115200 baud. Although I use 2 pins for the serial I/O, it could be done with a single pin. This is because I do not use 2 cogs to transmit and receive the data, I do the TX and RX sequentially.


    Overall this design could improve:
    (use a single eeprom, and clock all props from a single master prop.)
    Re-use the TX and RX lines between props as a way to upload the boot program from the master prop, plus do the serial communications on the same lines, after the boot program has been uploaded.

    I am sure the code could use major enhancements also...

    This first revision is the hard and dirty working v1.0

    This is the result of an EE who is out of work due to the financial terrorism that the federal reserve and federal government have chosen to inflict on the hard working class.
    I.E. my job canned me due to cut backs. (insult to injury, the state refused my unemployment claim over a technicality) (combine that with the housing market prices....which resulted in my foreclosure, etc...) Its a horrible time to have lost a job, and owned a house. Wheres my bailout?

    Post Edited (Clock Loop) : 8/20/2009 3:15:17 AM GMT
  • Clock LoopClock Loop Posts: 2,069
    edited 2010-02-27 02:25
    This post is to announce v2.0

    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:10 AM GMT
    1024 x 768 - 314K
    1198 x 640 - 1M
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2010-02-27 16:58
    Awesome project!

    I'm even more impressed by your use of solid core twisted pair to wire your project.
    As a computer technician, I have quite a bit of RG58 here which I've tried to use and
    have had it break internally making it a pain to locate a faulty connection.

    You appear to have had much better luck with it than I have. [noparse]:)[/noparse]

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • Clock LoopClock Loop Posts: 2,069
    edited 2010-02-27 20:44
    Oldbitcollector said...
    I have quite a bit of RG58 here which I've tried to use and
    have had it break internally making it a pain to locate a faulty connection.

    You appear to have had much better luck with it than I have. [noparse]:)[/noparse]

    OBC

    You have to pull all the wires out of the plastic at once. DO NOT USE THE STRING.
    Then separate them carefully. The bundle of wires along with the string tears the plastic.
    But the string alone will kink wires and pull them, possibly causing internal breaking.
    It depends on how old and abused it is. My stuff is from an office, about 10 yearold cat5.
  • Clock LoopClock Loop Posts: 2,069
    edited 2010-10-07 13:40
    I have added two images that include two ccfl tubes, and an inverter to provide the light for the led detection.

    http://forums.parallax.com/attachment.php?attachmentid=74269&d=1286483888


    http://forums.parallax.com/attachment.php?attachmentid=74270&d=1286483914
  • RobotWorkshopRobotWorkshop Posts: 2,307
    edited 2010-10-08 07:32
    This is a neat project and it's interesting to see how you wired everything up including the Propellers! I went through my old links and found a site that has some projects which may give you a couple other ideas.....

    http://www.electronicpeasant.com/projects/ledlamps/ledcolor.html

    http://www.electronicpeasant.com/projects/syncase/syncase.html

    http://www.electronicpeasant.com/projects/thermio/thermio.html
  • Clock LoopClock Loop Posts: 2,069
    edited 2010-10-08 10:47
    Looks like someone has more time (junk and parts) on their hands than me.

    Nice links, but the items you linked are not really anything new.

    One was a led spiral wired without a pcb.

    Another was a bunch of guitar effects all stuffed into a single box (something that was done with the prop already "open stomp" http://www.parallax.com/tabid/699/Default.aspx

    The last was a tube amp of some sort. Perhaps someone could make a tube amp with the prop, but not me.

    I just focus on using the prop projects with a minimal amount of other parts.

    The fact that I don't use circuit boards in my design is due to cost, not due to a lack of skill or capability. I would like to use circuit boards, it would sure save me many many many hours of wiring.

    But I am getting better at making the wiring neat and organic looking.
    http://forums.parallax.com/attachment.php?attachmentid=74270&d=1286483914
  • Clock LoopClock Loop Posts: 2,069
    edited 2018-01-18 08:47
    If the forum killed this project links, go here to find it.

    https://hackaday.io/acser


    Moderators, feel free to move this to Projects... Its not robotics, its a music synthesizer.. More of a project than a robot?
  • JDJD Posts: 570
    Cool project :cool:

    I watched the demo video on the hackaday site, you should link that over here too. Do you have any songs you made with it?
  • Clock LoopClock Loop Posts: 2,069
    edited 2018-01-25 01:21
    Haven't made any songs .. i did a mix with the video of "jason nevins its like that".. i played two of the "blackbox", clock synced, live..
    Its challenging and fun, what I would really like to try is like 10 of them all linked up.

    Most of what you saw on hackaday was what i have.. on you tube.
    It was mostly improv on what dials and sounds I played at times, once you play an instrument enough you can do stuff..


    No one joined my band so i stopped playing. :0







    I should make this into a pcb... yet another project...
  • JDJD Posts: 570
    WOW.. haha Good job :D I used to DJ years back, and it's super fun once you get the beat matched so you can just have fun with it. Outstanding Propeller project :D
Sign In or Register to comment.