Gordon Bates
Phoenix, Arizona
[email protected]
GitHub:
https://github.com/JDoes
I.T. Training Course Completion:
https://www.graphingofphotons.com/gordon-bates-it-training-experience
The Mozzi sound synthesis project can be found in a couple of places. Here is the seemingly official page: https://sensorium.github.io/Mozzi/
and the github code is located at: https://github.com/sensorium/Mozzi . Known issues can be found at: https://github.com/sensorium/Mozzi/issues/
I began this project with a solderless breadboard prototype, to get it worked out exactly how I want the circuit built. The first prototype is powered with a wall jack, as seen directly below:
The next iteration was built on a solder breadboard, was built into an electronics parts box I had lying around, and it powered by a 9v battery. It also has a headphone jack built in, so it can be hooked up to the aux port on my car stereo, or used with headphones. I did somewhat customize the functions of the potentiometers, where 0-4 are volume, tempo, filter cutoff, filter resonance, and filter/effect type, respectively.
And here it is all tidy and bundled up. HOW CUTE!!!! <3 <3 <3
The sound core is inspired by Casperelectronics synthesizers: https://www.youtube.com/watch?v=FaoJaLmZaL4
and it uses a Texas Instruments CD4040BE, and a Texas Instruments CD40106BE, both analog IC chips, not necessarily designed for sound synthesis, but physically, they do the job.
The whole rig puts out sound through this DIY speaker kit, which I will describe lower on this page. The link to the speakers is: https://www.gikfun.com/electronic-diy-kits-c-7/mini-electronic-transparent-speaker-box-diy-kit-sound-amplifier-p-548.html?zenid=26ku46bssh34llkhe8dpstoov7
The whole premise of these analog sound synthesizers is the frequency at which a capacitor charges or discharges. The sound you are hearing is of the frequency that the charge cycle is happening. More resistance makes a lower frequency, and less resistance makes a faster frequency- that is exactly what you are hearing when the synth plays. A fun way to illustrate this is by having two branches of a circuit, one for the charging current, and one for the discharge current. Even better- use two different color LEDs. One red LED on the charge side of the circuit, and a white one on the discharge side, and to control the charge and discharge time, a potentiometer is shared between the branches of the circuit. Adjusting the potentiometer makes the light burn fast or slow, which is a representation of the current.
I initially built this project a year or more ago, on a solderless breadboard. I wanted to make it more solid, so I recreated it using some prototyping board and my soldering iron. I also built in headers, so the parts can be swapped out for whatever reason. The next improvement will be a rotary encoder, or some way to adjust the range, which is not written into the code.
This was a DIY module, with only through-hole components, and minimal wiring. Actually, the nice folks at Modular Addict helped me out with the final wiring on this module. Otherwise, the kit was a breeze to build. I went for the full kit from Modular addict, so I could focus on the building aspect. If you're interested in sourcing your own parts, you could make this entirely on your own. Here's the guide for building this module, which also contains a list of materials and specs and stuff.
Barton Musical Instruments:
http://www.bartonmusicalcircuits.com/logic/
http://www.bartonmusicalcircuits.com/logic/documentation.pdf
Modular Addict:
https://modularaddict.com/barton-duallogic
Everything is through-hole for this kit-no surface mount soldering.
Using the parts from Tech Will Save US Synth KIT, instead of using the supplied breadboard, I used a soldered breadboard to complete the project. I did the modification of putting a power switch, and a headphone jack. When a cable is plugged in to the headphone jack, it mutes the built-in speaker.
These are really fun kits to build, even when using the solderless breadboard, which is supplied with the kit. I would recommend trying to find them in bulk for a discount.
https://www.techwillsaveus.com/shop/synth-kit/
As an improvement to wood, cardboard and rubber bands, I decided to print a better holder for my DSO138.
IMG_20191103_124806698
The JYE Electronics DSO138 DIY oscilloscope kit- an oscilloscope for under $30. It works great for all of the sound visualization purposes I have needed it for, so far.
I only did a partial installation on the eurorack faceplate, as I wanted to avoid the power circuit side of this. So for now, I just plug it in to turn it on. If you see the Thingiverse page for the faceplate, you will see that it actually achieves a pretty clean look when the instructions are followed. The four mono jacks serve as a signal-in signal-out, but also a passive multiple--as a fortunate side-effect. This part is actually designed for the scope to sit behind, and there is a window for the screen, as well as buttons and switch sliders as well. I strongly encourage you to see the intended use on thingiverse. It's a very nicely finished product.
https://jyetech.com/
https://jyetech.com/dso-138-oscilloscope-diy-kit/
https://www.thingiverse.com/thing:3631288
This is a HUGE improvement over the previous oscilloscope I had on my rack. The above 'scope requires its very own wall jack, which takes up space on a power strip- no bueno. The below 'scope is from Waveform Magazine: https://waveformmagazine.com/ , and is actually one of many DIY kits that they sell. This particular one is The "Gateway" Oscilloscope- presumably as a reference to the addiction that it fuels: https://waveformmagazine.com/the-gateway-oscilloscope-waveform-diy-project-2-1/
The improvement is mainly how clean it looks, its compact size in comparison to the previous build, the pass-through patch ports, and most of all- the fact that the 'scope is powered by the rack itself (not its very own wall socket). This is also a variation of the DSO-138, but this is the "mini" version.
The part actually made by Waveform Magazine is the power PCB (the blue part), which also has the passthrough patch ports.
This version, the DS)-138 Mini, fits right in the palm of my hand.
Now, I have two scopes in my rack!!!!
Here are some details about the Velleman Mk 171 Voice Changer Kit. It is a DIY kit, starting from a bare PCB, with all through hole components- thank goodness for no surface mount! It does not come with a speaker. For sound, I used a 3W 4-Ohm 2 inch speaker and there was no need for additional amplification. The highest I could get my voltmeter, with the unit turned to high volume, was 1.6 volts going to the speaker.
www.velleman.co.uk/contents/en-uk/p97.html
Rarely ever does keeping junk around for when "I might need it someday" work out, but in this case, it did!!! I had this broken electronic device whose case I kept just for some day like this. It fits so nicely!
This kit is the "MINI ELECTRONIC TRANSPARENT SPEAKER BOX DIY KIT SOUND AMPLIFIER EK1831".
These are the second set of these I have made. You can see them in one of my synthesizers towards the bottom of this page.
There arent really instructions, but as you can see in the photos, the silk screen has the components' values labeled on the PCB, so that's how I did it. The job I did with getting the surface mounts on there was not the best. If you get the corners first, and then dab solder from your solder tip, onto the legs of the component, it turns out a lot better, as I learned from watching a few YouTube videos afterwards. EEVblog has a great video on soldering surface mount ICs without a hot air station.
https://www.gikfun.com/electronic-diy-kits-c-7/mini-electronic-transparent-speaker-box-diy-kit-sound-amplifier-p-548.html?zenid=26ku46bssh34llkhe8dpstoov7
https://www.youtube.com/watch?v=hoLf8gvvXXU&t=6m
The surface mount operational amplifier IC makes it just difficult enough so that I get nervous and wonder if they'll work. These ones worked :)
The way the kit came was with only blue and red LEDs, but I have other colors, so I made them have more variety.
Before the next challenge: assembling and installing into the puzzle-box enclosure- time to test and see if anything needs resoldered.
It's fun to watch the lights bounce with the music! Also, apparently the colors dont change in the same direction- rather, they change pointing inward (or outward, depending on which you make left and right).
Peeling the paper off of the acrylic enclosure took a considerable amount of time, but the pristine shine of perfect acrylic surfaces is so satisfying while it lasts :)
CODE: various projects, as part of a guide, described below. Remember to save your .py file to the board, as main.py, so that it automatically loads and runs every time you reset the board.
This project is from a kit that I received at AIOT DevFest, in Phoenix, AZ, on Jan 25th, 2020. Code for this project is laid out step-by-step in a great guide, wonderfully crafted by the workshop leader Sai Yamanoor. The workshop covered introductory use of: ESP32 Development Board, AM2320 Digital Temperature and Humidity Sensor, VEML6070 UV Index Sensor Breakout, Neopixel in breadboard form factor, Tactile Button, Trim Potentiometer, Red Led.
Here is a Hackster.io article where you can learn more about the ESP32. The specific ESP32 dev board I used was an ESP32s
We used Thonny IDE to program the ESP32, which I installed using pip3 install thonny . You can refer to the thonny website for more specific details and other install methods on Windows, Mac, or Linux. Since I was using a Mac, I ran into an issue with the driver, where the IDE was not seeing the board, so I downloaded and installed a CP210x driver from Silabs (CP210x USB to UART bridge VCP Driver), so that the ESP32 would be visible to my computer.
https://www.aiotdevfest.org/
https://sai-ydev.github.io/mighty_iot/
http://saiyamanoor.com/
https://www.hackster.io/techarea98/getting-started-with-the-esp-wroom-32-4ed58a
https://thonny.org/
https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
Here is Thonny running on my Mac, with a basic few-liner, blinking LED light program:
Here is the circuit running the blinking LED program. The blue potentiometer is there as a dimmer. The RGB LED immediately to the left of the ESP32 was not built in to the circuit at the time of this photo, so it does not affect the blinking LED at all.
IMG_20200125_111904641_HDR
CODE: https://github.com/JDoes/PiCameraProgramming
Code written by me :) based on PiCamera.ReadTheDocs.io, and with help from friends. I put a button on the breadboard, whose functionality is written into some of the programs. The white bracket is a 3D printed part to hold the PiCam in portrait orientation. The Pi uses Raspbian as an operating system.
Programming a PiCam is really a great way to learn about Python in a practical way, as well as learning about hardware and breadboard circuit design. It is really satisfying to get something as enjoyable as pictures as the result of a circuit, some hardware, and a piece of software, all of which you built yourself!
CODE: https://github.com/JDoes/Arduino/blob/master/Ultra_Alarm/Ultra_Alarm.ino
Code not written by me :(
IMG_20190303_152910223_HDR
IMG_20190303_152856345_HDR
CODE: https://github.com/JDoes/Arduino/blob/master/IR_Remote_Servo_Box_2.ino
In order the retrieve the IR signal for different buttons, you need to run this code, and look at the serial monitor in Arduino IDE.
https://github.com/JDoes/Arduino/blob/master/IR_Remote_Detector_With_Mftr.ino
https://github.com/JDoes/Arduino/blob/master/IR_Remote_Detector.ino
Code not written by me :(
An excellent resource or this kind of stuff is Drone Bot Workshop. Specifically, his IR remote video(s). That's where I got the code for this project.
Motorized IR Remote Opening Cigar BoxMultiple versions have been made. Total Wine & More in Phoenix sells the used cigar boxes for really cheap.
Motorized IR Remote Opening Cigar BoxMultiple versions have been made. Total Wine & More in Phoenix sells the used cigar boxes for really cheap.
CODE:
Code not written by me :( but can be found on the ThingPulse GitHub page.
I would highly recommend using the ESP8266 Weather Station Getting Started Guide, by Daniel Eichhorn.
This was one of my first IoT experiences, and the way this particular guide is written is just outstanding!
The data from the ESP8266 can be uploaded to Thing Speak, and then accessed through an app, available on Android (not sure about iOS- dont have an iPhone). The activity of building this program is a great way to learn about APIs and IoT in a very practical way. All of those steps are included in the Getting Started Guide. The graph shown below is from when I had the ESP8266 mounted on the wall by my refrigerator, which lead me to conclude that the shape of the graph was representative of the refrigeration cycle of my fridge turning on and off, and pumping heat into my kitchen throughout the day.
The ThingPulse ESP8266 WiFi Weather Station is an outstanding way to learn some introductory IoT concepts and practical skills.
Screenshot_20190323-103821
Code: https://github.com/JDoes/python
Code written by me :)
Various programs, including efficiency, given energy in and energy out, moment and force balance, and internal forces in a members of a truss system made of equilateral triangles. There are also a few that can do 2D projectile motion calculations, given variations and combinations of angle, speed, time and range.
CodeSkulptor (shown below) is a website that has many built-in Python libraries, and is a great resource for teaching and learning Python, as also has dozens of demo programs, along with their source code, included.
http://www.codeskulptor.org/
This is a screenshot of an energy and efficiency problem, modeling a 2D projectile. I made this program for my physics students to check the answers to their homework assignment, as they worked through the problem set. Give it a try, and you can even customize the code to make it say or do something different, if you want.
http://www.codeskulptor.org/#user47_LMZfFOk4zN_0.py
Annotation 2020-01-10 221106
YouTube Channel:
Now and then, I get a patch going that I really like, so I stream the jam to my YouTube channel, demSounz.
https://www.youtube.com/channel/UCaB_nJR5MGqCRRoakd9WCQQ/videos
For visuals on my channel, I use Open Broadcaster Software (OBS) to stream my screen, where I have a free program called Visual Analyser hooked up to my synth. In addition to an oscilloscope, VA helps in learning what your synth and the various modules are doing, in a more visual way.
Open Broadcaster Software (OBS): https://obsproject.com/
Visual Analyser: http://www.sillanumsoft.org/prod01.htm
IMG_20190909_183442146
Some resources for modular sound synthesis are:
Modular Grid: a website for planning the layout of your modular rack, and for researching and finding stores that sell modules.
https://www.modulargrid.net/
Sweetwater: a store from where I have purchased some of my modules.
https://www.sweetwater.com/
Perfect Circuit: another online store that sells modular gear.
https://www.perfectcircuit.com/
Modular Addict: a website dedicated that has the best selection of DIY modular kits that I have found so far.
https://modularaddict.com/
This is my sound setup, including my ever expanding modular section. This first picture below is my modular in an Arturia RackBrute 6U, an Arturia MiniBrute 2s, and an Arturia Drumbrute. Also below are some of the DIY synth projects that I have built.
https://www.arturia.com/products/hardware-synths/rackbrute-6u/overview
https://www.arturia.com/products/hardware-synths/minibrute-2s/overview
https://www.arturia.com/drumbrute/overview
IMG_20190913_190756379
As I acquired more modules, and started planning the expansion of my rack, a second case was purchased, as shown on the right:
IMG_20191103_124754804
This is the DIY kit of a Befaco 4 Channel CV and Audio Mixer, with both inverted and regular output, which I purchased from Modular Addict.
https://www.befaco.org/en/sinte-modular/mixer-v2/
IMG_20191130_202632503
Befaco 4 Channel CV and Audio Mixer, completed:
This is a Bastl SPA. which is a GrandPa granular sampler control expander. It was designed to bring the GrandPa granular sampler's controls out of the menus and onto nobs, so they are more quickly and easily accessible. The SPA also allows for CV over the parameters controlled by the nobs. Bastl Instruments is a community driven, hand-made electronic musical instrument company in Brno, Czech Republic. They sell many types of electronic instruments, including desktop synths, modular gear, and DIY kits of all kinds.
https://bastl-instruments.com/eurorack/modules/spa
https://bastl-instruments.com/eurorack/modules/grandpa
https://bastl-instruments.com/
All of the pieces had to be soldered onto two PCBs, which make something of a sandwich, and then the face plate is attached by a hex bolt, and the pot' nuts and jack nuts.
IMG_20191229_195255723_HDR
Spa sandwich:
Below (left picture) is the SPA in my rack, sitting next to it's host module, the GrandPa granular sampler.
Below (right picture) is the official smoke test of the newly assembled SPA module. I use a TipTop Audio Happy Ending as my test rack, before placing any of my DIY modules into my main rack.
http://tiptopaudio.com/happyendingkit/
IMG_20191229_205701921_HDR
IMG_20191229_205311978_HDR
The picture below is one of the first sound circuits I made on my own, as opposed to building a kit that had instructions. It is a slight deviation from the unit made in the Casper Electronics Synth DIY Part 1: Oscillators video on YouTube.
Part 1: Oscillators https://www.youtube.com/watch?v=FaoJaLmZaL4
Part 2: Sequencers https://www.youtube.com/watch?v=t7JYOIYqMEY&t=1s
Part 3: Sampler and Looper https://www.youtube.com/watch?v=ECSYLTB_sbw
It uses a Texas Instruments CD40106BE Schmidtt-Trigger as an oscillator, by chaining several oscillators together to get various types of modulation. I also built ON-ON switches into the circuit, as a means of switching between different capacitor values, to achieve different frequency ranges and sound characteristics. One of the On-Ons are used to select between a capacitor and a potentiometer bridging one of the oscillators on the IC.
https://www.ti.com/store/ti/en/p/product/?p=CD40106BE
IMG_20190928_151527198
This is a fun little kit to learn with. It is made by a company called Tech Will Save Us, and they have all kinds of other neat electronics education kits that are designed for kids. It sits together nicely in the product packaging, making it somewhat portable. For extra protection, you can build additional housing around the breadboard and potentiometers. I fount that the pot' nobs are easily struck, and can pull the pots right out of the breadboard pretty easily. Something like this is not really intended to be handled roughly anyways, so it's okay.
https://www.techwillsaveus.com/
Tech Will Save US Synth KIT:
https://www.techwillsaveus.com/shop/synth-kit/