I made a thing (simple VCDO/drone machine)

From circuitbending to homebrew stompboxes & synths, keep the DIY spirit alive!

Moderators: Kent, lisa, luketeaford, Joe.

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

I made a thing (simple VCDO/drone machine)

Post by namke » Wed Jun 20, 2018 7:14 am

Hi All,
I've been working on making useful things out of ATTiny85's, and I'm now fairly happy that the first device is ready for a wider audience.

I'd be interested in getting some wider opinions on what I've done (Friends seem to like it and are interested in buying kits/prebuilt devices, so that's good; I've used it a few times in live performances so that's also good!)

I think that it is a decent starter project (more useful IMHO than yet another multiple), and should take less than 30 minutes to construct.

Here's a video of the first one being assembled:

[video][/video]

And here's an audio demo:

[video][/video]


I'm thinking of selling them as kits or prebuilt, in person or online (also at the gigs that I put on)

Any feedback is welcome :)

Thanks for your attention!

nmarcoux
Learning to Wiggle
Posts: 11
Joined: Mon May 28, 2018 4:37 pm
Location: Massachusetts
Contact:

Post by nmarcoux » Wed Jun 20, 2018 8:04 am

The demo sounds cool but it would be easier to give feedback if you could describe what it's doing. Also, the effects are distracting and make it hard to determine what the device sounds like.

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 8:17 am

nmarcoux wrote:The demo sounds cool but it would be easier to give feedback if you could describe what it's doing. Also, the effects are distracting and make it hard to determine what the device sounds like.
Ok, fair enough (thank you). I suppose a 'what is it' explanation would probably be useful!

(There is a 'raw' demo at about 12 minutes into the construction video, which I forgot to mention :) )

The firmware is a simple "1.5 oscillator" wavetable synth:

Oscillator 1 resets the phase of Oscillator 2 to zero every time that it cycles (this is basically what used to be called hard sync).

Oscillator 2 is a wavetable oscillator (waves below);

VR2 affects the frequency of oscillator 1;
VR3 affects the frequency of oscillator 2.

If the frequencies are integer multiples then the output sound can be quite smooth, but richer sounds are heard when the oscillator frequencies are not harmonically related at all!

The 8 bit PWM output runs at 50kHz sampling rate (250kHz PWM).

There are four basic wavetables available to oscillator 2, as well as four intermediate positions - these are selected with VR1:
  • Sine
    Sine + triangle
    Triangle
    Triangle + square
    Square
    Square + sawtooth
    Sawtooth
    Sawtooth + sine
VR0 changes the waveform randomly to a greater or lesser extent, so as to add some more texture to the output!

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 8:27 am

*Just realised that there is a sticky for 2018 constructions, so I'm moving this over there*

User avatar
FetidEye
demonic space drone
Posts: 2152
Joined: Mon Dec 06, 2010 5:00 pm
Location: Red Zone
Contact:

Post by FetidEye » Wed Jun 20, 2018 8:38 am

cool sounds!

-Personally I'm not that fond of those tiny knobs.
Especially with drone synths, where tuning is important, you will want to finetune the frequencies,
which is hard to do with tiny knobs.
You can mount bigger knobs on those shafts, or use larger potmeters.

-for modular use, it would be key to add CV inputs.
for pitch / wave selection / etc

-if you want to make kits for modular, rethink the layout of the pcb.

note: leave it in this post! the sticky is just for showing. This build deserves a discussion thread!

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 8:47 am

Thank you :)

I agree about the knobs, although one of the design consdierations was to keep it as low cost as possible - and knobs are expensive :)

One of my friends has already asked whether it could be 'hacked' to work in Eurorack (the answer is YES since all the knobs do is send CV to the ATTiny85... There will be a 'Core.2' board with CV input as well as knob control!)


----
FWIW, build instructions are here - they are in the process of being updated as I get feedback from my beta testers!!: https://github.com/minimism/docs/blob/m ... sembly.pdf

User avatar
daynehacks
Common Wiggler
Posts: 156
Joined: Sun Sep 06, 2015 12:52 pm
Location: Grand Forks, BC
Contact:

Post by daynehacks » Wed Jun 20, 2018 10:35 am

Any chance you are going to release the schematic? I'd love to see what you've got going on! although it doesn't look too crazy.

It does sound pretty rad, and lately I'm seeing more and more tiny85 synth projects.

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 11:06 am

Yes, there do seem to be more and more ATTiny85-based projects these days!

Schematic and firmware can be found on my github - it's pretty straightforward (one of the ideas is that the firmware can be swapped to get different behaviours from the same basic board).

https://github.com/minimism/dr1a

The arduino code needs a bit of a tidy-up because I moved away from using Arduino. I've also been using a 'high voltage' programmer which has implications about the use of the ADC0 pin

User avatar
plushterry
Common Wiggler
Posts: 215
Joined: Mon Oct 02, 2017 6:52 pm
Location: Cornwall

Post by plushterry » Wed Jun 20, 2018 11:16 am

It sounds good. I was sort of expecting the waveforms to be continuously sweepable, that would be more useful IMO.

How much and when?? :hihi:

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 11:37 am

plushterry wrote:It sounds good. I was sort of expecting the waveforms to be continuously sweepable, that would be more useful IMO.

How much and when?? :hihi:
I have another module on breadboard (I messed up the PCB design, so that's being reworked) which will allow waves to mutate -- but that's more likely to be configured for Eurorack ;) I was also being very conservative with the available waveforms - there are much more interesting shapes to play with!

I'm thinking that kit pricing is going to be in the £20 region. I have no real idea what sort of markup I should add over and above the components (Business plan? What's that?!). I could probably do the bare PCBs as well...

I've literally just got the second round of prototype PCBs in, so I need to review them (build one up to see whether it's correct). There are currently 5 first-prototypes bagged up as kits 'ready to go', and there will be 5 'RevB' kits available soon - it depends on how bleeding-edge you'd like to be!!

After that I'd probably have to gauge demand before placing another order...

Image

User avatar
daynehacks
Common Wiggler
Posts: 156
Joined: Sun Sep 06, 2015 12:52 pm
Location: Grand Forks, BC
Contact:

Post by daynehacks » Wed Jun 20, 2018 2:17 pm

namke wrote:
The arduino code needs a bit of a tidy-up because I moved away from using Arduino. I've also been using a 'high voltage' programmer which has implications about the use of the ADC0 pin
"Moved away" meaning you are using atmel studio or something else? or are you still programing the "arduino" language with a different editor/compiler? I like the Arduino thing because its pretty easy for people to get a USBtiny programmer and the arduino software setup to program chips. A bit more complicated when using the RESET pin though like you're saying.

Also, the "build guide" says MCP6002 for an opamp but the schematic shows different. I also see that only half of the opamp is being used, do you have a reason for that? or its just what you had?

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 3:31 pm

Thanks for the comments - it's good to be asked these things as otherwise it'd never get captured!
daynehacks wrote: "Moved away" meaning you are using atmel studio or something else? or are you still programing the "arduino" language with a different editor/compiler? I like the Arduino thing because its pretty easy for people to get a USBtiny programmer and the arduino software setup to program chips. A bit more complicated when using the RESET pin though like you're saying.
Yes, I started it using the Arduino IDE and did a lot of development there, but I found that I was losing a lot of cycles in the interrupt save/restore code (I'm an embedded software engineer, so this is a bit of a busman's holiday) so I switched initially to using Atmel Studio. Since I'm a Mac user, I had to run Atmel Studio on a VM, so once I had 'translated' the code to straight C, I moved to using command-line tools and Make. Just prior to this I bought a TL866 EPROM programmer (for other repair work), which can also program the ATTiny85. The result is that I can type 'make flashcode' and get the program compiled and the processor programmed in less than 5 seconds :) Much quicker than using the Arduino IDE. Using the programmer also means that I can repurpose the reset pin without a problem!

I will tidy up the code (and get the Arduino files compiling again) soon I hope.
daynehacks wrote: Also, the "build guide" says MCP6002 for an opamp but the schematic shows different. I also see that only half of the opamp is being used, do you have a reason for that? or its just what you had?
I started using the TLV2472 because it was recommended somewhere as a good op amp for running off of a single supply and offered rail-to-rail input and output. Unfortunately it turns out that it's also more expensive than the ATTiny, and is over-specced for the stuff I wanted to use it for (the reconstruction filter on the PWM output of the processor, which tops out at about 20kHz). I looked around and found the MCP6002, which does the job and is much cheaper. Basically any op-amp allowing single supply operation (0-5v) and rail to rail input/output would do, but budget was always a design constraint.

(Yes, half the chip is not used, but other designs will use both halves)

Hmm, I should probably write this rationale up somewhere ;)

I'll update the schematic soon…

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Wed Jun 20, 2018 4:53 pm

… schematic is now updated with correct part number. :guinness:

User avatar
daynehacks
Common Wiggler
Posts: 156
Joined: Sun Sep 06, 2015 12:52 pm
Location: Grand Forks, BC
Contact:

Post by daynehacks » Wed Jun 20, 2018 7:58 pm

Thanks for all the replies! Its great seeing other peoples thought process'. I might try this one out on a breadboard.

Keep up the great work, and when you come up with a eurorack version I'll be one of the first to want one! :yay:

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Thu Jun 21, 2018 10:31 am

daynehacks wrote:Thanks for all the replies! Its great seeing other peoples thought process'. I might try this one out on a breadboard.

Keep up the great work, and when you come up with a eurorack version I'll be one of the first to want one! :yay:
:) Thanks! One of my reasons for starting this endeavour was to start building my own modular (I don't have one at all), so I am interested in the size (HP) of modules and the spacing of controls... I fear that the way I've laid stuff out will make it rather too wide (especially when adding jacks for CV control as well).

If I mount the PCB at right angles to the panel it can be narrower of course, but then it might be less useful for desktop use.

Obviously more thought is required!

User avatar
FetidEye
demonic space drone
Posts: 2152
Joined: Mon Dec 06, 2010 5:00 pm
Location: Red Zone
Contact:

Post by FetidEye » Thu Jun 21, 2018 12:12 pm

if you position the knobs on the topside and the jacks on the bottom (see other eurorack modules for reference), I think you can fit this pcb in 8hp.
http://www.doepfer.de/a100_man/a100m_e.htm

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Thu Jun 21, 2018 12:42 pm

FetidEye wrote:if you position the knobs on the topside and the jacks on the bottom (see other eurorack modules for reference), I think you can fit this pcb in 8hp.
Yes, I will see if I can arrange it so that it can be oriented in both ways; I think that might be possible too, with a change of pots and socket…

… then of course there is the issue of powering it (that seems to be a bit of a minefield too!!)

Thank you :)

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Thu Jun 21, 2018 5:26 pm

I just made an update to the source files on github: the Master is now Arduino-friendly I believe, and there is a branch (MakeVersion) which is command-line friendly and based on my programming setup (minipro tl866).

I'll test it tomorrow, but I'm pretty sure it'll 'just work' ;)

/\/\/\/\/\/
Common Wiggler
Posts: 69
Joined: Tue May 23, 2017 5:11 pm
Location: UK

Post by /\/\/\/\/\/ » Thu Jun 21, 2018 5:33 pm

Perhaps adding pin-header cv in and outs might suit this for patching with other miniature devices/breadboarded stuff/components. Seems like it could be a nice little sound source anyway.

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Post by namke » Thu Jun 21, 2018 5:55 pm

/\/\/\/\/\/ wrote:Perhaps adding pin-header cv in and outs might suit this for patching with other miniature devices/breadboarded stuff/components. Seems like it could be a nice little sound source anyway.
That's not a bad idea. The pots are just voltage sources, so it is not a big deal to simply not attach them and inject voltages in where the centre pin would be (which I was doing during development! FM isn't audio rate, but textures build up quite nicely anyway!)

Thanks,

User avatar
daynehacks
Common Wiggler
Posts: 156
Joined: Sun Sep 06, 2015 12:52 pm
Location: Grand Forks, BC
Contact:

Post by daynehacks » Sat Jun 23, 2018 7:52 pm

Well I just couldn't wait!

I redid the schematic in Kicad, and added a 5v regulator so It can be powered by 9v batteries or whatever, but mainly I wanted to make it single sided so I could etch it. I ended up needing one jumper wire (not too bad).

I used the Arduino code and it compiled and uploaded fine. I used it with the 10k resistor so I didnt need to use the high voltage programmer, what an awesome trick.

It works great and sounds awesome! I was only a little sad the LED doesn't do anything :cry:


Image
Image

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Great work!

Post by namke » Sun Jun 24, 2018 4:45 am

daynehacks wrote:Well I just couldn't wait!

I redid the schematic in Kicad, and added a 5v regulator so It can be powered by 9v batteries or whatever, but mainly I wanted to make it single sided so I could etch it. I ended up needing one jumper wire (not too bad).
Good work :yay: (I currently lack the chemicals to do PCBs at home, but I might have to start!) My very first stripboard prototype used a 7805 but I realised that I was throwing away 4/9 of the energy from the battery - hence changing to 3xAAA (or AA) batteries :)
daynehacks wrote:I used the Arduino code and it compiled and uploaded fine. I used it with the 10k resistor so I didnt need to use the high voltage programmer, what an awesome trick.
I'm very pleased that the code worked for you, to be honest that's the bit which I was most worried about because people have different setups/programmers. Which programmer did you use (I used to use an Arduino Uno configured as a programmer (like this)
daynehacks wrote:It works great and sounds awesome! I was only a little sad the LED doesn't do anything :cry:
Sorry 'bout that. I guess it could easily be made to change state when the wavetable changes due to the perturbation control? :)
Last edited by namke on Sun Jun 24, 2018 9:47 am, edited 1 time in total.

User avatar
Phitar
Ultra Wiggler
Posts: 799
Joined: Sat Feb 21, 2015 7:54 am
Location: Northern Virginia, USA

Post by Phitar » Sun Jun 24, 2018 6:48 am

Sounds very nice! Quite an audio spectrum for so few parts. I definitely want to build one!

Good work!
At the Enrichment Center we promise never to value your safety above your unique ideas and creativity. - Portal

Your package is moving within the USPS network and is on track to be delivered by the expected delivery date. :confused:

Any perceived hostility from me is only a stupid perception by you.

User avatar
daynehacks
Common Wiggler
Posts: 156
Joined: Sun Sep 06, 2015 12:52 pm
Location: Grand Forks, BC
Contact:

Re: Great work!

Post by daynehacks » Sun Jun 24, 2018 9:48 am

namke wrote: I'm very pleased that the code worked for you, to be honest that's the bit which I was most worried about because people have different setups/programmers. Which programmer did you use (I used to use an Arduino Uno configured as a programmer (like this
I use a USBtinyISP programmer with a ZIF adapter I found on tindie.
daynehacks wrote:It works great and sounds awesome! I was only a little sad the LED doesn't do anything :cry:
namke wrote: Sorry 'bout that. I guess it could easily be made to change state when the wavetable changes due to the perturbation control? :)
Please do! A led that changes with the wave for would make it just a little more fun. (I love blinky things)

Honestly, this is the best sounding tiny85 synth I've heard yet. The waves coming out look beautiful and it doesnt have very much 8bit/video game sound. I think you've done a great job. This will make a wonderful euro module, and would be even better if you can make it follow the 1v/oct "standard".

namke
Learning to Wiggle
Posts: 39
Joined: Sun Aug 20, 2017 2:47 pm
Location: York, UK
Contact:

Re: Great work!

Post by namke » Sun Jun 24, 2018 12:00 pm

daynehacks wrote:Honestly, this is the best sounding tiny85 synth I've heard yet. The waves coming out look beautiful and it doesnt have very much 8bit/video game sound. I think you've done a great job. This will make a wonderful euro module, and would be even better if you can make it follow the 1v/oct "standard".
>blush< Thank you!

I'm just laying out a Eurorack version, so that will be soon I hope. I think that only three controls will be CV controllable (with ADC0 it would be too easy to reset the processor with a CV which was too low - and besides, the use of a random LFO on the wave-select input would have much the same effect).

1v/oct should be doable, probably with an offset and a trim panel control (current CV scale is around 5/8 v/oct since the oscillator has an 8 octave range and runs from 5v :)

Post Reply

Return to “Music Tech DIY”