after our move to Oregon two months ago, i’m finally getting back to a spot where i can do more building and experimentation. that being said, my arduino-based sampler/synth is getting a rebuild to make it more capable and road-worthy.
the LED segment display is currently showing voltage out what should be 5v DC. i think the power adapter might be limited on the amount of current it can provide which is creating a voltage drop. either that or the 3.3v and 5v pins are reading the load from the BJT stage which stabilizes and adds sonic color to the PWM output. also, i’ve dropped in an ATMega2560 board and removed the 328p for added storage and memory for more sample time. with some code revisions, i’m hoping to keep the processor for locking up when adding lots of modulations.
i’ve been pretty Arduino obsessed over the past month. i got in my head this idea about building a midi-controlled digital sampler that uses SD cards for storage after thumbing through the Arduino Cookbook and have finally started to make some headway on the project.
there were some major obstacle to overcome, unfortunately. the first came about when i had some trouble loading the larger libraries (e.g. MIDI.h, SD.h). i spent days trying to figure out what the problem was and even went so far as to update the bootloader to use optiboot. it turned out to be the version of GCC that i was using to compile my sketches. the toolchain setup on Gentoo is no easy task, so i went ahead and just compiled it manually. for those of you tempting to use develop AVR software in a Linux environment, i’d recommend the avr-libc install guide as your path to unbridled success. i myself could never get cross-dev to work with out failing and it needs certain USE flags which it just always overrode when i specified them.
from then on, things were pretty standard. i was able to load SD.h and begin reading files from the card. i used simple voltage dividers to convert the ATMega328’s 5v logic to the SD’s 3.3v like the standard schematic shows and then hacked up the PCMAudio Library to work as i’ve wanted. i borrow some of the techniques from Max’s article on generating real-time audio using PCM. much different than my overall goal, but extremely educational. if you’re baffled by the ATMega328’s use of PWM as i was, Ken Sherif’s article on PWM will clear all that up.
the code’s not worth posting at the moment. it’s a commented out mess of gray. i’ll most likely post it (for my own sake) when i’ve got more of the kinks worked out.