electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
go to the radio page Live at electro-music.com radio 1 Please visit the chat
poster
 Forum index » DIY Hardware and Software » Les Hall's Projects including eChucK
The Karplus Strong eChucK DIY Project
Post new topic   Reply to topic Moderators: Inventor
Page 3 of 24 [577 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: Previous 1, 2, 3, 4, 5, ..., 22, 23, 24 Next
Author Message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Sun Aug 30, 2009 5:30 pm    Post subject: Reply with quote  Mark this post and the followings unread

I don't have Eagle, so I can't look at your schematics, so given that I'm stuck... what are your design properties of the KS model?

i.e. filter type?
length range?
excitation?
weirdness?

How did you implement? - guessing a SRAM and a logic state machine?? Or a dsPIC?

What sort of things are adjustable from the outside (to the musician)?

Sorry if I've missed something.

Interesting project.

We will be hearing some samples? Cool

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sun Aug 30, 2009 5:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

ScottG, you can get a freeware version of EAGLE CAD by searching for that string in google. I am planning to expand the board with filter options and such things, but I don't know quite how yet.

As far as I know there does not exist a Karplus-Strong board for DIY so it will be a nice thing once it gets done.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
wmonk



Joined: Sep 15, 2008
Posts: 528
Location: Enschede, the Netherlands
Audio files: 15

PostPosted: Mon Aug 31, 2009 12:27 am    Post subject: Reply with quote  Mark this post and the followings unread

Traditional K-S synthesis uses a first-order low pass filter. I suggest adding such a filter to the board (LPF, -6dB/octave slope, variable cutoff and resonance, voltage controlled cutoff)

@ScottG: I think Les will do an analog board.
Back to top
View user's profile Send private message
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Mon Aug 31, 2009 12:35 am    Post subject: Reply with quote  Mark this post and the followings unread

I don't know how to create a voltage-controlled cutoff frequency. Maybe with a voltage-controlled resistor but they are expensive. What I am thinking of lately is to make the K-S board be patchable with an external filter if desired.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Mon Aug 31, 2009 7:22 am    Post subject: Reply with quote  Mark this post and the followings unread

Use an OTA with capacitor to ground at the output. If you use one OTA stage, you will get a simple single pole filter. The control current will change Fc. I would think an LM13700 would work. You can get ideas for this by looking at the filter circuits you'll find in the datasheet. If you need two filters - then the LM13700 is convenient since it's a dual OTA.

EDIT ADD: Is this a BBD delay line? Interesting idea.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
yerpa58



Joined: Mar 08, 2008
Posts: 57
Location: Wisconsin
Audio files: 4

PostPosted: Mon Aug 31, 2009 7:57 am    Post subject: Reply with quote  Mark this post and the followings unread

Why would you want to add an analog filter? The K-S algorithm is a digital filtering algorithm, it cannot be easily duplicated with analog circuitry. Basically, your CV analog filter would post-process the K-S tone, much like putting a stompbox after a guitar. Thats not a bad thing!

You can hear an example of the fraktal synthesizer doing two K-S strings with and without vibrato at:

http://www.youtube.com/watch?v=8QzSL3Nc2Qk

Enjoy!
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Mon Aug 31, 2009 12:55 pm    Post subject: Reply with quote  Mark this post and the followings unread

ScottG wrote:
Use an OTA with capacitor to ground at the output. If you use one OTA stage, you will get a simple single pole filter. The control current will change Fc. I would think an LM13700 would work. You can get ideas for this by looking at the filter circuits you'll find in the datasheet. If you need two filters - then the LM13700 is convenient since it's a dual OTA.

EDIT ADD: Is this a BBD delay line? Interesting idea.


Thanks for the part suggestion, I will look into that ScottG. Yes, it is a BBD delay line.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Mon Aug 31, 2009 12:59 pm    Post subject: Reply with quote  Mark this post and the followings unread

yerpa58 wrote:
Why would you want to add an analog filter? The K-S algorithm is a digital filtering algorithm, it cannot be easily duplicated with analog circuitry. Basically, your CV analog filter would post-process the K-S tone, much like putting a stompbox after a guitar. Thats not a bad thing!

You can hear an example of the fraktal synthesizer doing two K-S strings with and without vibrato at:

http://www.youtube.com/watch?v=8QzSL3Nc2Qk

Enjoy!


yerpa58, I am attempting an analog implementation of KS using a Bucket Brigade Device. Why not digital? I want everyone to be able to use off-the-shelf parts to build it. A digital chip like a PIC would require special programming and programmers which not everyone has. I know it's a tough challenge to get KS working in analog form but I think I'm up to the challenge. If I'm wrong maybe I'll go digital. See earlier in this thread for videos of people doing KS in analog form on modulars.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
yerpa58



Joined: Mar 08, 2008
Posts: 57
Location: Wisconsin
Audio files: 4

PostPosted: Mon Aug 31, 2009 1:54 pm    Post subject: Reply with quote  Mark this post and the followings unread

Inventor, you will probably find some very interesting sounds by using your bucket brigade approach. Please don't let me discourage you. However, I think "PIC chip or DSPic" whenever I see 4000 series CMOS chips in a circuit, and bucket brigade chips might get hard to find. They were common in chorus, flange, and reverb applications before the advent of cheap microprocessors and memory.

Thanks for pointing out the video links, I'll check 'em when I get home.
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Mon Aug 31, 2009 2:27 pm    Post subject: Reply with quote  Mark this post and the followings unread

yerpa58 wrote:
Inventor, you will probably find some very interesting sounds by using your bucket brigade approach. Please don't let me discourage you. However, I think "PIC chip or DSPic" whenever I see 4000 series CMOS chips in a circuit, and bucket brigade chips might get hard to find. They were common in chorus, flange, and reverb applications before the advent of cheap microprocessors and memory.

Thanks for pointing out the video links, I'll check 'em when I get home.


Oh yes, yerpa58, a dsPIC would be an excellent way to go on this project and I may end up there if the analog doesn't work. The whole board could be greatly simplified that way.

The current plan is to make a Boolean Sequencer board and a Karplus-Strong board, that way people can order just what they want or combine the two to make a stand-alone music toy. It's going to be designed for either stand-alone use or embedding into a modular.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Mon Aug 31, 2009 3:50 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hey Les, I was just looking at the LM13700 datasheet, they have exactly the kind of filter you need, a single pole lowpass. This should closely emulate the normal single pole IIR filter one would use in the digital domain. See attached image.

Note that the control current is done in this schematic with a resistor and a voltage feed. This works, but is _crappy_. What you want is to remove the resistor and supply a current source (either linear or expo) to feed the Iabc (control current) pin.

I know _nothing_ about expo current sources, so I can't help with that, but I've done linear current sources interfacing with LM13600/LM13700. What you need to be mindful of is that Iabc must be absolutely restricted to no more than 2ma - or chip death results. That isn't terribly hard to manage though. There should be members on this forum who can help with that bit. I wouldn't think a filter like this would need temperature compensation assuming you want to do an expo source.

You may or may not need an opamp stage after the filter to give the correct gain for the K-S loop. The buffer (darlington) will be only a voltage gain of 0.999999. If you need more gain, you'll need that opamp stage.

EDIT ADD: The schematic came from a National Semiconductor datasheet.

EDIT ADD: I will want to hear sound samples of this assuming you do it all on your board (which I would suggest).


lowpass_single_pole.gif
 Description:
LM13700 LowPass Single Pole Filter
 Filesize:  9 KB
 Viewed:  43382 Time(s)

lowpass_single_pole.gif



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Wed Sep 02, 2009 4:24 pm    Post subject: Reply with quote  Mark this post and the followings unread

On second thought, I see no need for any kind of calibration of the CV to the filter. In that case, it would be easy to keep the 30K resistor shown in the schematic and supply a control voltage stiffened by an opamp buffer. 30K was chosen because the span between -rail and +rail is 30 volts. Doing it this way, you will eliminate the complications and parts count of a current source.

Connect the output of an opamp buffer to the 30K resistor. The CV can go from -rail to +rail. At -rail, the Iabc current is essentially zero. This will change the character of the loop and affect the sound, but it doesn't need calibration or tuning. The lower the CV, the more drumlike the sound would be and the faster it would decay.

Last edited by JovianPyx on Wed Sep 02, 2009 4:29 pm; edited 1 time in total
Back to top
View user's profile Send private message Visit poster's website
Dan Lavin



Joined: Nov 09, 2006
Posts: 649
Location: Spring Lake, Mi, USA
Audio files: 21

PostPosted: Wed Sep 02, 2009 4:29 pm    Post subject: Reply with quote  Mark this post and the followings unread

Les,

sounds like Scott just volunteered to help you design this! Wink I'd take him up on it!! Smile
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Wed Sep 02, 2009 4:33 pm    Post subject: Reply with quote  Mark this post and the followings unread

I just think it's a cool idea and I wanna hear what it sounds like Cool Cool Cool

I don't do PCBs except stripboard because I suck at it, so this will also be interesting to see finished out.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Wed Sep 02, 2009 4:35 pm    Post subject: Reply with quote  Mark this post and the followings unread

Haha, thanks for the notion antman and thanks for the design suggestion ScottG. The only thing is that with this design the board becomes a +15V / -15V supply board. Also the BBD Chip runs off of +5V. How low can the supply on this chip go? I'll have to look up the datasheet next week, as I am so busy this week.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Wed Sep 02, 2009 4:45 pm    Post subject: Reply with quote  Mark this post and the followings unread

Oh, I see the supply minimum is 10V, or in other words +/- 5V. So we could run the stand-alone version from two 9V batteries. But that would require level shifting into the BBD chip. Then again the BBD will run off of +10V so some level shifting and clamping might do the job. I'll have to rethink all of this.

I was just going to make the BBD time adjustable via CV, but it looks like people will want to adjust the filter via CV also, so that's a nice feature as well. That way one could hook up CV inputs to completely change the circuit characteristics. Hmm, lots to think about...

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Wed Sep 02, 2009 5:06 pm    Post subject: Reply with quote  Mark this post and the followings unread

I think a fully functional standalone KS loop with filter would be a unique module. If I were a modular guy, I'd want at least two. Each one is essentially a voice of it's own. They can be played as strings or as drums or as alien instruments in between. Sequencer fun...
_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Dan Lavin



Joined: Nov 09, 2006
Posts: 649
Location: Spring Lake, Mi, USA
Audio files: 21

PostPosted: Wed Sep 02, 2009 7:03 pm    Post subject: Reply with quote  Mark this post and the followings unread

Les/Scott,

seriously, I think you two would be a great design team for this. Your skills compliment each other. I wouldn't mind helping on the pcb if you need it.

Les what were your thoughts on the prototype pcb? Were you going to hire that out to a pcb shop or etch yourself? I've had really good success with Express PCB's 3 for $51 deal....kinda forces you into a small pcb, but I always look at that as a challenge. Since you were using Eagle, maybe you had something else in mind?

-Dan
Back to top
View user's profile Send private message
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Wed Sep 02, 2009 10:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

Dan, that deal sounds really good. How big are the boards and what do you get (solder mask, screenprint)?

Dan/Scott if you guys want to help out i'm all for that.

I did check out the LM13700 datasheet, and it's a very nice part - excellent for all sorts of voltage control applications. We need the filter to range from about 100 Hz cutoff to about 1 kHz cutoff, which I'm sure it can do easily. I also like the use of the spare as the VCO for the BBD chip.

I'm still not sure how to work out the power situation though. If we run it from +/- 15V supply then it really won't be much of an eChucK board, but maybe that's the evolution that we need. Then again the thing might work down to +/- 9V so it can be run off of two 9V batteries. I think all of the parts will work off of a minimum of +/- 5V so maybe we just need +/- 5V regulators on board and run everything off of that.

Les

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
wmonk



Joined: Sep 15, 2008
Posts: 528
Location: Enschede, the Netherlands
Audio files: 15

PostPosted: Wed Sep 02, 2009 11:44 pm    Post subject: Reply with quote  Mark this post and the followings unread

Ray Wilson uses the LM13700 a lot in his designs. (Check his filters and the soundlab). The soundlab runs on two 9V batteries, so I think it isn't a problem.
www.musicfromouterspace.com
Back to top
View user's profile Send private message
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Thu Sep 03, 2009 2:26 am    Post subject: Reply with quote  Mark this post and the followings unread

Thanks wmonk, I took a look at the Sound Lab VCF. It looks like a fully customized design for the task, which is nice for that product. Of course we cannot duplicate the circuit or even use part of it, but that's OK since the LM13700 datasheet has such excellent circuit examples.

Attached you will see a block diagram of the circuit that I just put together a moment ago. Please have a look at it and offer any design suggestions that you may have. This circuit will barely fit on a 3"x4" circuit board (the Eagle CAD limit), if it fits at all, but it is packed with features.

Note that we can bias up the VCF and VCD inputs so that if you don't hook up a control voltage, you can just use pots to adjust the filter and delay characteristics. There's another pot for loop gain, and a trigger input. The noise source is fixed, but we can add a bypass to permit any desired signal to be used as the noise burst, which will shape the sound.

I like the way this board is shaping up.

Les


KS_BlockDiagram.jpg
 Description:
Karplus-Strong Circuit Block Diagram
 Filesize:  45.69 KB
 Viewed:  725 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

KS_BlockDiagram.jpg



_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Thu Sep 03, 2009 7:31 am    Post subject: Reply with quote  Mark this post and the followings unread

Looks good to my eyes.

Just curious here - in my digital experiments with KS, I used an impulse to excite the waveguide and got what I would call a struck string sound (similar to a hammer dulcimer). I understand that the classic KS demonstration does, as you have, use noise. I'm wondering if using a straight impulse as an optional excitation source would be good? In my implementation, the impulse was calculated to be a proportion of the waveguide length with 1/2 being bassier than lesser proportions.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Dan Lavin



Joined: Nov 09, 2006
Posts: 649
Location: Spring Lake, Mi, USA
Audio files: 21

PostPosted: Thu Sep 03, 2009 8:09 am    Post subject: Reply with quote  Mark this post and the followings unread

Les,
The $51 for 3 pcbs at Expresspcb are for 2.5" X 3.8" double-sided boards. There's no screenprint legend or mask...but for prototypes, it works. For the production stuff, you can upgrade from there.

I think the 2.5" X 3.8" will probably work for the sequencer portion, but looking at your BOM on the voice boards....well it looks very iffy....and not in a good way. I've been known to work miracles on cramming stuff in a small pcb, but I'm not making any promises. Let's see what you end up with first. -Dan
Back to top
View user's profile Send private message
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24075
Location: The Netherlands, Enschede
Audio files: 277
G2 patch files: 320

PostPosted: Thu Sep 03, 2009 10:03 am    Post subject: Reply with quote  Mark this post and the followings unread

ScottG wrote:
I'm wondering if using a straight impulse as an optional excitation source would be good?


It would be nice to have options on the exciter I think, that is, in my experiments with the G2 it was nice to try different stuff ... f.i. a steady signal fed in is fun for resonator type of effects ... an attenuater would be in place then BTW to make sure the KS won't clip.

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 224

PostPosted: Thu Sep 03, 2009 12:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

Yeah, like what Blue Hell said. Cool

I think a socket for trigger pulse directly into the BBD would be good so that you can do whatever, square, tri, saw, single cycle sine, whatever ya plug in. Normalize it for noise.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic Moderators: Inventor
Page 3 of 24 [577 Posts]
View unread posts
View new posts in the last week
Goto page: Previous 1, 2, 3, 4, 5, ..., 22, 23, 24 Next
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software » Les Hall's Projects including eChucK
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use