[sdiy] digital control of CV

Roy J. Tellason rtellason at verizon.net
Wed Sep 5 04:11:52 CEST 2007


On Tuesday 04 September 2007 06:55, jure zitnik wrote:
> i don't think any variable acceleration would feel ok,

It sure seems to be implemented with my mouse,  on this 'puter...  A good 
source of cheap encoders,  too.  :-)

> if i were you i'd try setting two fixed step values, one for "slow" rotation
> (step=1) and one for "fast" rotation (eg step=10). then try to set the
> rotational velocity that limits "slow" and  "fast" so the whole thing
> feels comfortable. i can't imagine it would work with a continuous
> variable step.

Browsing mouse driver source listings might prove useful as well.

> also - if i remember correctly thorsten klose implemented something
> like that in midibox, try to look there (the code is available, there
> is also a forum)
>
> cheers,
> jure
>
> On 9/4/07, Tom Wiltshire <tom at electricdruid.net> wrote:
> > On 4 Sep 2007, at 08:26, jure zitnik wrote:
> > > david: encoders have *low* resolution. a few tens of values per
> > > revolution. while they're useful for some things, they feel quite
> > > lousy for let's say cutoff control, try to imagine. 24 values per turn
> > > mean that either you'll have terrible stepping (if you want to cover
> > > the entire range in one turn) or that you'll have to spin the knob
> > > like crazy to get to the other end. i know some implement
> > > "intelligent" acceleration, that is if you turn the encoder faster,
> > > the steps will be bigger (i'm talking about software of course)... but
> > > it just doesn't feel as good as a pot.
> >
> > After a previous thread and discussion with Edward King, I got an
> > alphanumeric LCD display, a pot, a rotary encoder, and a PIC
> > processor together to do some experiments.
> >
> > With a pot connected to an A2D input, I was able to pick an exact
> > value at 10-bit resolution. Eg: "I want 500!" twiddle, twiddle,
> > nudge, nudge. You can get to any value in a few movements. 12-bit
> > resolution was a bit too much, both because of increased AD jitter,
> > and the difficulty of moving a pot with such accuracy. It is hard to
> > set a pot at this resolution, and I wasn't able to reliably get to a
> > particular value.
> >
> > The rotary encoder was a 24-detent affair, like Jure mentions.
> > Obviously single stepping through over a thousand values is possible
> > but very slow. So then I started experimenting with measuring the
> > time between detents, the rotational velocity, and incrementing the
> > count proportionally (as suggested above). This was a disaster.
> > Whilst the count goes up a lot if you turn fast, and slowly if you
> > turn slowly, getting to any particular value is more or less
> > impossible. I found I couldn't control or judge accurately how fast I
> > had to turn to get a given increment. For example, if I want a value
> > of 500, and the current value is 400, I need to turn at a speed that
> > gives me an increment in the tens, say. How fast is that? I had no idea.
> > Obviously having the increment directly proportional to velocity
> > wasn't getting me anywhere, so then I added a velocity curve table
> > between the encoder and the increment, and experimented with various
> > curves to try and improve the response. Again, no real success.
> > Getting this software right is crucial, but difficult , it seems.
> >
> > I'm sure this has to be possible, but I really didn't get any
> > encouraging results. Does anyone know any nice commercial examples or
> > has anyone tried this sort of experiment?
> >
> > Regards,
> > Tom
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy

-- 
Member of the toughest, meanest, deadliest, most unrelenting -- and
ablest -- form of life in this section of space,  a critter that can
be killed but can't be tamed.  --Robert A. Heinlein, "The Puppet Masters"
-
Information is more dangerous than cannon to a society ruled by lies. --James 
M Dakin




More information about the Synth-diy mailing list