Posts

12.16.17 | Week 16. Blog Debrief

(final week) video of the final thing in action video shown before hands-on example to explain some of the synthesis stuff The housing obviously isn't as polished as it could be, but it can stand up on its own and it can withstand some pretty rough handling without the speakers detaching in any capacity (I can't say the same for the power and ground of the light sensor), which were the main goals of the housing. A more elaborate or even "fixed" sort of housing were initially part of the plan, but since two of the sensors fell through it was ultimately capable of sustaining itself using direct wiring and a single battery. A heartbeat sensor was going to be included as well, and I had the code (mostly) up and running, but polishing it the night before all three of the wires connected to it snapped - it came pre-soldered. I didn't have an opportunity between the night before and the presentation to try soldering it back together. The other sensor was the ac

12.09.17 | Week 15. Blog Debrief

Not a whole lot to show visually this week, although I followed up with Thomas directly to show off some of the new sounds, now that everything's been transposed and stored in memory. There are roughly 30 unique instrument presets and well over 60 unique composition segments, many of which are between 5-10 seconds long apiece. These compositions can be seen in the blog post for the final week. The code is 100% complete from the musical side of things - everything works at a minimum expected standard with a level of consistency, and likewise all of the "canned" aspects like the music and instruments are written out. It's mainly a matter of fully integrating the sensors at this point.

12.02.17 | Week 14. Blog Debrief

Starting this week, I laid out my endgame plans for the project: - The Arduino will use three sensors: colored light, pulse, and accelerometer. - Pulse (or if none is detected, accelerometer) will both adjust the tempo and offset the key (up to 1 octave / 12 semitones in either direction) based on speed or heart rate. - As for actual compositions, there are four or five "layers" to go through, the main three of which were cannibalized from an old composition I wrote in Greg's class back in Fall 2016. The three musical tracks are a fairly barebones variant (uniform note times, volatile instrument changes), a jazzy version with frequent smaller notes splitting up the bigger ones at 90bpm as well as having lengthy instrument "solos", and a drum and bass variant at 192bpm that rapidly cycles through different instruments in a demoscene sort of fashion. - In the ambient state, the Arduino alternates between whistling / theremin tunes and chirpy sounds. - Af

11.25.17 | Week 13. Blog Debrief

(week of thanksgiving break) further refinement of ADSR envelopes, mostly code-side: boop

11.18.17 | Week 12. Blog Debrief

Started working on ADSR envelopes: boop While most of the code (firing / silencing notes, making checks, etc.) is only fired as needed (the entire thing doesn't use loop() in any capacity), the ADSR envelopes are being fired as part of a do-while loop when the note is playing. Due to their nature of changing volume in semi-realtime, achieving properly smooth envelope effects requires a fairly frequent rate of adjustment.

11.11.17 | Week 11. Blog Debrief

Progress videos: release envelope duty cycle soundtest (included with library; original sounds) soundtest (with new sounds) prime theme (release example) thunderstruck (envelopes / wave blending example)

11.04.17 | Week 10. Blog Debrief

Admittedly, I wasn't able to get much done this week because I was "between" availabilities at work - in other words, I had the shifts of two separate schedules and the days off of none, although I should have a lighter work schedule for the rest of the semester. That being said, I did at least figure out I'm going to be using Connor Nishijima's Synth or "Volume 2" library for sound synthesis due to the ease of producing wavetables, volume control, and polyphonic synthesis. I also bought a case for my Arduino.