"Potentiometers" on new DSI synths - *Rant Warning!*

Discussions about anything analog, digital, MIDI, synth technology, techniques, theories and more.
User avatar
b3groover
Senior Member
Senior Member
Posts: 965
Joined: Thu Apr 10, 2008 7:41 am
Real name: Jim
Band: THEO
Location: Lansing, MI
Contact:

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by b3groover » Sun May 23, 2010 6:44 am

Very enlightening. Thanks fellas!

User avatar
meatballfulton
Moderator
Moderator
Posts: 6128
Joined: Wed Apr 13, 2005 9:29 pm
Gear: Logic Pro X

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by meatballfulton » Sun May 23, 2010 11:38 pm

MIDI resolution has nothing to do with the internal resolution of a synthesizer. Yes, if you pass a CC over MIDI it's 7-bit resolution but that doesn't mean that the internal circuit responding to the knobs on the front panel must be 7 bits...they could be more or less. Many early MIDI synths limited some parameters to as little as 2 bits for a resolution of 4 steps (some, like sustain and portamento on/off only need 1 bit). Some designers will limit controls to MIDI resolution simply because it simplifies the design. Whether using pots or MIDI controllers, smoothing will always be required if you want to eliminate all stepping.

BTW there are ways to get more than 7 bits resolution from CCs without resorting to NRPNs. Take a look at the MIDI spec of many synths and you'll notice that it's standard to have an LSB for CC 0-31 mapped CC 32-63 for 14 bit resolution. In most gear it's only implemented for the bank select (0, 32) and data entry (6, 38) CCs. The reason this works is that if the transmitter sends only 7 bits, the receiver just sees the lower 7 bits as 0. In the opposite case, if 14 bits are transmitted via two CCs then the receiver simply ignored the lower 7 bits. Then just to add more confusion, pitch bend (which is not a CC) is specified as a 14 bit message but most gear always transmits the LSB as 0, reducing the true resolution to 7 bits.

It does break down with gear that uses unusual CC assignments...Access, Nord and Novation fall into this camp :oops:.
I listened to Hatfield and the North at Rainbow. They were very wonderful and they made my heart a prisoner.

cartesia
Expert Member
Expert Member
Posts: 1287
Joined: Sat Jun 02, 2007 7:55 am
Gear: Octatrack
Bass Station 2
Band: TBA

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by cartesia » Tue May 25, 2010 1:55 am

For the record, when using the onboard cutoff control for mopho/tetra, the possible values are actually 0-163 for better resolution. The internal tetra controls are not bound by midi's limitations except for choosing to be somewhat compatible with midi controllers - although in many cases there is no need for greater resolution than 128 (eg oscillator mix, envelope depth, etc)

If you use a midi controller, the 0-128 will be scaled to be 0-163 (so there will be a few jumps of greater than 1 in the 0-163 range if you control it via midi)

mute
Active Member
Active Member
Posts: 640
Joined: Thu May 08, 2008 6:51 pm

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by mute » Tue May 25, 2010 3:17 am

I know its not specificly related to DCOs, but as an ironic twist, on the JX-3P you can hear the filter cutoff slightly stepping, but if you use the Env control instead theres none audible... I believe I've noticed the same thing on my Evolver when using it's control surface but not when I use software/nrpn. As far as screen readout values on the P08, that could just be rounding for display purposes and that alone.

gd
Junior Member
Junior Member
Posts: 192
Joined: Tue Apr 18, 2006 11:54 pm
Location: Ontario

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by gd » Tue May 25, 2010 3:43 am

Chris Hector from DSI posts quite a bit on these forums I would post your questions at either one, he will respond quickly. He is doing much of the programming regarding the encoders/pots of the P08/Mopho/Tetra.
http://prophet5.org/viewforum.php?f=15
or gearslutz
Prophet 08, Mini D, Radias, 2 x JD-990, Juno-60, 2 x JP-8080, Fantom X6, Speakeasy Stereo Rackmount Vintage Tube Preamp ...

User avatar
stikygum
Active Member
Active Member
Posts: 681
Joined: Thu Feb 15, 2007 10:21 pm
Location: SOS - Substance over Style

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by stikygum » Tue May 25, 2010 7:12 am

I forget, is there a coversion kit for older PEKs and MEKs?
"MTV's gaudy overexuberance contributed to the trivialization of the one thing it had been initiated to support, music" - Rik Millhouse

User avatar
RD9
Active Member
Active Member
Posts: 536
Joined: Tue Mar 02, 2010 4:24 am
Location: NY/NJ

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by RD9 » Tue May 25, 2010 7:57 am

stikygum wrote:I forget, is there a coversion kit for older PEKs and MEKs?
The PEK conversion kit (and factory conversion) has been available. The MEK kit is supposed to come out in about 2 months -- mid-July I think.

Pym
Newbie
Newbie
Posts: 13
Joined: Wed May 26, 2010 12:05 am

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by Pym » Wed May 26, 2010 12:34 am

Hey guys, I'll try and check this board out when I can and answer questions, starting now!

The pots are sampled by a 10-bit ADC on the main PIC processor but we're only using 8 bits, converting to stepped values per the parameter the pot is assigned to in the processor. Using a higher resolution results in extremely fine changes that don't translate well while you're turning the pot slowly with your hand. It would indeed result in a smoother sound when you sweep the knob, but the trade off is you would have a much harder time zeroing in on a specific value you wish to reproduce. So on the plus side, it allows us to have a tuned filter that you can increment step by step, giving you a pitched sine wave when it's self-oscillating.

If we had much higher quality encoders that responded with more precision, we could probably get away with 8-10 bits of precision and have fine tuned interpolated sweeps. Trouble is there are no mass produced pots (or encoders for that matter) that we have found that are cheap enough to keep the cost of the instrument as low as it is. One big issue there is consistency, as we found with the encoders: the parts we get have a range of quality that sometimes aren't up to spec. There are a lot of unknowns with hardware that don't surface quickly, so in some cases we play it safe to ensure the stability of the instrument and the performance over the precision. There are some workarounds which would give us the best of both worlds but thus far they're not cheap enough to seriously consider using. As soon as the price of digital potentiometers gets down to a cost we can consider using en masse we might have a really great middle ground! Sadly they are tres expensive so we only use them when absolutely necessary, like converting to a digitally controlled feedback in the Tetra.

It also is much simpler to code. We're a really small company (it's only Dave and myself who do OS code now) and lots of little details just don't get the attention they deserve. I'm trying to remedy some of the bigger issues in my free time, really just because I love the products and think they are so close to reaching their potential, but it means less time to work on new synths and other things that need to be done. You can check the Prophet 5/'08 forum for details on the OS updates I'm putting out and I'll try and put a notice up here if people are interested. I have drastically improved the response of the encoders on both the old and new boards, that's been a major goal of mine since I first played a Prophet, doing a full sweep with an encoder in less than a single revolution so I could do fast tweaks.

I could keep listing the small issues, but hopefully it's enough to say there are a lot of them and they add up quick. We'd really like to make an instrument with all the benefits of analog control merged with the advantages of a master digital processor, and we'll keep trying to do so, it's just going to take time. There are good reasons there isn't anything like that on the market with all these problems solved, so we'll just have to keep trying to move it forward and keep searching for the holy grail of synths

User avatar
b3groover
Senior Member
Senior Member
Posts: 965
Joined: Thu Apr 10, 2008 7:41 am
Real name: Jim
Band: THEO
Location: Lansing, MI
Contact:

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by b3groover » Wed May 26, 2010 1:09 am

Awesome post, thank you. I have a Mopho Keyboard coming tomorrow. My first DSI product. Can't wait to try it out!

Shanesaw
Active Member
Active Member
Posts: 324
Joined: Wed Jun 08, 2005 9:44 pm
Gear: Ultranova, Minibrute, Microbrute, Spark, microKORG, microX,
Location: Long Beach, California

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by Shanesaw » Wed May 26, 2010 2:32 am

Excellent! i appreciate that Pym, thanks and keep up the good work at DSI!

OT: Tried out the Mopho keyboard today. Pretty damn cool.
"There was never a notion that a synthesizer would be used by itself for anything" - Robert Moog (1934-2005)

User avatar
StepLogik
Expert Member
Expert Member
Posts: 1493
Joined: Fri Dec 29, 2006 4:16 am
Gear: Gauntlets of Ogre Power, Vorpal Sword, Chain Mail +3, Ring of Invisibility, Staff of the Magi, Boots of Speed
Location: Boston, MA

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by StepLogik » Wed May 26, 2010 2:59 am

Pym wrote: It also is much simpler to code. We're a really small company (it's only Dave and myself who do OS code now) and lots of little details just don't get the attention they deserve. I'm trying to remedy some of the bigger issues in my free time, really just because I love the products and think they are so close to reaching their potential, but it means less time to work on new synths and other things that need to be done.
Have you guys considered open-sourcing some or all of the code? The more mundane code that just operates the synth (pot and switch scanning, LCD updates, MIDI parsing, envelope generation, etc) could be opened-sourced allowing skilled programmers to patch in their optimizations. Obviously, Dave might have some concerns since the code is his IP but the real value of the DSI line are their analog guts.

For software projects like this, bug lists tend to languish and grow. Having a vast resource pool of programmers with a vested interest (they paid for the instrument!) in improving the quality of their purchase can be a powerful resource. The trick is just managing and testing the patches from the wild.

Pym
Newbie
Newbie
Posts: 13
Joined: Wed May 26, 2010 12:05 am

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by Pym » Thu May 27, 2010 1:06 am

This is another one of those things that in theory would be awesome, but starting to look down the road to getting there is a lot of work to setup, get rolling, and maintain. If it was something like an Arduino based backend it would be more likely that we could do something like that, since it's relatively well understood by hobbyists. As it is, the OS isn't really programmer friendly, nor do we use a repository system as there are only two people coding. If we had more man hours to get such things setup there are indeed some great benefits to open sourcing (I come from a linux sys admin background and was involved in a handful of such projects). Trouble is it takes a significant amount of time away from things that directly help the company and when you're small, there just isn't ever enough time to go around!

All that being said, if other people took the time to start down that path I'd definitely give advice and help as I could, even to the point of compiling a feature into the code if it was well written and easy to implement.
StepLogik wrote: Have you guys considered open-sourcing some or all of the code? The more mundane code that just operates the synth (pot and switch scanning, LCD updates, MIDI parsing, envelope generation, etc) could be opened-sourced allowing skilled programmers to patch in their optimizations. Obviously, Dave might have some concerns since the code is his IP but the real value of the DSI line are their analog guts.

For software projects like this, bug lists tend to languish and grow. Having a vast resource pool of programmers with a vested interest (they paid for the instrument!) in improving the quality of their purchase can be a powerful resource. The trick is just managing and testing the patches from the wild.

User avatar
pflosi
Synth Explorer
Synth Explorer
Posts: 3620
Joined: Tue Nov 13, 2007 6:14 pm
Gear: more than 150 characters...
Location: zürich
Contact:

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by pflosi » Thu May 27, 2010 10:48 am

I was about to post the NRPN comment too. The Andromeda uses a resolution of more than 16000 steps, for example. No stepping audible.

Although I'm not a big supporter and user of midi, it's not the protocols fault - the possibility for NRPN is there. It's the designer's fault.

User avatar
StepLogik
Expert Member
Expert Member
Posts: 1493
Joined: Fri Dec 29, 2006 4:16 am
Gear: Gauntlets of Ogre Power, Vorpal Sword, Chain Mail +3, Ring of Invisibility, Staff of the Magi, Boots of Speed
Location: Boston, MA

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by StepLogik » Thu May 27, 2010 1:48 pm

Pym wrote:This is another one of those things that in theory would be awesome, but starting to look down the road to getting there is a lot of work to setup, get rolling, and maintain. If it was something like an Arduino based backend it would be more likely that we could do something like that, since it's relatively well understood by hobbyists. As it is, the OS isn't really programmer friendly, nor do we use a repository system as there are only two people coding. If we had more man hours to get such things setup there are indeed some great benefits to open sourcing (I come from a linux sys admin background and was involved in a handful of such projects). Trouble is it takes a significant amount of time away from things that directly help the company and when you're small, there just isn't ever enough time to go around!

All that being said, if other people took the time to start down that path I'd definitely give advice and help as I could, even to the point of compiling a feature into the code if it was well written and easy to implement.
Hmmm. I had just assumed you would have code version control, continuous integration, automated unit testing, etc. However, I can definitely understand not having this capability. Although it has been a while since I've done firmware development, I remember that the hardware was always the focus and the firmware tended to not get the care and attention to details that "pure" software projects typically get.

It would be a challenge to ramp up. If you open-source the code, you definitely need a unit testing environment where you can quickly evaluate patches for inclusion in the main branch. I've seen many approaches to this for firmware projects, but typically the firmware is loaded into a CPU on a "test board" where a computer or other device simulates the hardware (switches, pots, LCD displays, devices on the address buses, etc) and verifies all functions of the firmware. Building such a test environment can be a large project - almost like adding a new product to the line. But, it is very much worthwhile if you plan on doing many software releases since it greatly speeds up the testing process and reduces the high labor/time cost and error rate associated with manual testing.

I'm guessing you guys are coding in C and using PIC's development/debugging tools?

Pym
Newbie
Newbie
Posts: 13
Joined: Wed May 26, 2010 12:05 am

Re: "Potentiometers" on new DSI synths - *Rant Warning!*

Post by Pym » Thu May 27, 2010 6:58 pm

Yeah, that's one of the problems in a very small company, the time spent automating or streamlining stuff often isn't worth the effort. If we put the effort into hardware test platform it's time we couldn't put into a product that we would be making money off of (and be really cool and fun to work on) so we naturally end up making new stuff.
We are indeed coding in C mostly (some assembly) and using PIC's tools. This is one of the reasons it would be difficult to open source the code... it would be almost 1000$ to get a programming tool and the compiler. That and the PIC tools aren't exactly that great, I've spent a lot of time debugging their code, especially when I was getting the USB stack working.

I'm definitely a big fan of test driven code, but it will be a while before I migrate everything over to a more simple process. I'll keep all this in mind as I go along, maybe I can suggest a way to interface the MIDIBox project into one of our synths or something. Who knows!
StepLogik wrote:Hmmm. I had just assumed you would have code version control, continuous integration, automated unit testing, etc. However, I can definitely understand not having this capability. Although it has been a while since I've done firmware development, I remember that the hardware was always the focus and the firmware tended to not get the care and attention to details that "pure" software projects typically get.

It would be a challenge to ramp up. If you open-source the code, you definitely need a unit testing environment where you can quickly evaluate patches for inclusion in the main branch. I've seen many approaches to this for firmware projects, but typically the firmware is loaded into a CPU on a "test board" where a computer or other device simulates the hardware (switches, pots, LCD displays, devices on the address buses, etc) and verifies all functions of the firmware. Building such a test environment can be a large project - almost like adding a new product to the line. But, it is very much worthwhile if you plan on doing many software releases since it greatly speeds up the testing process and reduces the high labor/time cost and error rate associated with manual testing.

I'm guessing you guys are coding in C and using PIC's development/debugging tools?

Post Reply