Jump to content

Analog effects, was "Midifiying a sega genesis"


stryd_one

Recommended Posts

But also, I like to have least parts necessary, so as long as there's no sound theoretical solution for the fine/coarse pots (you might have already provided that but in that case I didn't understand it enough) I'm sticking with one IC for my test case. If I can get that quiet enough (zipper noise not included) I'm willing to expand that into your coarse/fine solution, but I think it would be better if both of us (and as much as possible other midiboxers!) develop their own solution while staying in contact with eachother ofcourse, so we can share experience while building. Then we can test which solution works best, and which solution is the simpelest (hopefully, both are true for the same design, so we'd have one uniform solution to improve on further).

Can you? probably. Can I? Don't believe so.

True bypass is where you want to switch an effect on or off, when it is routed hard in your signal path, e.g. not patchable with a wire. so your first pole is at the input of your effect, and the second one is at your output, so you can short those so truly bypass the entire effect. Non-true bypass is where some parts of the effect still influence your sound, e.g. input and output are not shorted, but some parts in the effect are turned off (clipping in a distortion unit fr example).

True bypass is something I would want on the SID distortion unit, so It can be switched on and off via MIDI.

If it's not in sync it's no use, right? Back to the drawing board then...

Cheers,  Alex.

Well I'm glad that your apprehension isn't something worse than that... I thought maybe I had screwed something up :)

Regarding the dual-SPI or Dual-I2C, it really won't be very hard to implement at all, that part I am 99% confident about. The other 1% is about the circuitry side, but I'm sure I can make the PIC do it. Don't even worry about that bit :)

Thanks for the lowdown on true bypass, I know what you mean now, just didn't know it had a name ;) . I'll keep looking... Found this, thought it might be of interest: http://members.shaw.ca/roma/switching.html

Now, as for the fine/coarse pots and all that jazz... What I was thinking was this:

<insert screeching tyres here>

Now this is hilarious... I typed for an hour or three with all these ideas and diagrams and stuff and just found this: http://www.analog.com/UploadedFiles/Application_Notes/20666174AN582.PDF

Seems I'm re-inventing the wheel ;) Check out that PDF, you'll see where I'm going... and you'll see what I was yet to discover too :) I'm bummed that I just spent a week on this only to find out that analog devices had already done the same work and more, but it's nice to know I was on the right track... some of my schematics are identical to theirs :) Note Figure 6... After thinking all day, I came up with that schematic, no longer than 10 minutes before I found the PDF... laughed my ass off at the irony of it ;D that's a resolution bit-doubler, so it takes it from 6 bit to 12 bit... Using 8 bit/256 step pots will take it to 16bit, which is way more than we would use as NRPN's are 14 bit and I can't think of any more high res realtime MIDI than that...

I want to make it so that you can use a single board with normal 256 step pots like what you're planning, and then have an addon board that shares all the digital lines except the data line, and inserts another digipot (or two) in order to increase the resolution. That way someone can go 8bit (single digipot, 256 steps) and if that turns out to be insufficient, simply rewire to include the fine digipot board - I was thinking of a daughterboard actually... remove jumpers from a DIL connector, and plug on a daughterboard with more pots for higher resolution. Change a constant in the application so it knows that pot X is fitted with the daughterboard and drives it accordingly and upload it again, and you're set to go.

That way, like you said, we can go ahead with making the single-pot board and then maybe expand upon it. Gotta walk before we can run!

Link to comment
Share on other sites

  • Replies 60
  • Created
  • Last Reply

Top Posters In This Topic

Well I'm glad that your apprehension isn't something worse than that... I thought maybe I had screwed something up :)

Regarding the dual-SPI or Dual-I2C, it really won't be very hard to implement at all, that part I am 99% confident about. The other 1% is about the circuitry side, but I'm sure I can make the PIC do it. Don't even worry about that bit :)

Thanks for the lowdown on true bypass, I know what you mean now, just didn't know it had a name ;) . I'll keep looking... Found this, thought it might be of interest: http://members.shaw.ca/roma/switching.html

Now, as for the fine/coarse pots and all that jazz... What I was thinking was this:

<insert screeching tyres here>

Now this is hilarious... I typed for an hour or three with all these ideas and diagrams and stuff and just found this: http://www.analog.com/UploadedFiles/Application_Notes/20666174AN582.PDF

Seems I'm re-inventing the wheel ;) Check out that PDF, you'll see where I'm going... and you'll see what I was yet to discover too :) I'm bummed that I just spent a week on this only to find out that analog devices had already done the same work and more, but it's nice to know I was on the right track... some of my schematics are identical to theirs :) Note Figure 6... After thinking all day, I came up with that schematic, no longer than 10 minutes before I found the PDF... laughed my ass off at the irony of it ;D that's a resolution bit-doubler, so it takes it from 6 bit to 12 bit... Using 8 bit/256 step pots will take it to 16bit, which is way more than we would use as NRPN's are 14 bit and I can't think of any more high res realtime MIDI than that...

I want to make it so that you can use a single board with normal 256 step pots like what you're planning, and then have an addon board that shares all the digital lines except the data line, and inserts another digipot (or two) in order to increase the resolution. That way someone can go 8bit (single digipot, 256 steps) and if that turns out to be insufficient, simply rewire to include the fine digipot board - I was thinking of a daughterboard actually... remove jumpers from a DIL connector, and plug on a daughterboard with more pots for higher resolution. Change a constant in the application so it knows that pot X is fitted with the daughterboard and drives it accordingly and upload it again, and you're set to go.

That way, like you said, we can go ahead with making the single-pot board and then maybe expand upon it. Gotta walk before we can run!

Nice work Stryd!

Only a few short questions:

- Why do they need 3 channels to double the resolution, not 2?

- If we want 12 bit, we need 6bit pots instead of 8 bit, right? (I received some 8 bit pot samples a few days ago)

- Can we keep it PDIP?

Cheers,  Alex.

Link to comment
Share on other sites

Only a few short questions:

- Why do they need 3 channels to double the resolution, not 2?

- If we want 12 bit, we need 6bit pots instead of 8 bit, right? (I received some 8 bit pot samples a few days ago)

- Can we keep it PDIP?

Cheers, Alex.

I'll explain this from the beginning, I think you already know most of this, I'm not being condescending or anything, I just couldn't word my analogy very well :-\

Well, pots are like two normal resistors with a single shared pin. You can think of each digipot as a resistor "AB", which is split into two sections at the "W" wiper, becoming resistor "AW", and resistor "WB". In that schem (figure 6), the AW resistor on pot U3 (on the right) goes to pot U2 (the top one), where only the AW side of the pot is used. U3's WB resistor goes to pot U1 (the bottom one). At U1 only the WB resistor is used. This way, the architecture of the split into two resistors is maintained. I'm not sure about this, but it seems to me that if only one of U1 or U2 were in place, then the total resistance on either side of U3 would be mismatched, and this would lead to unstable results. I'm not so sure about that opamp there though, is that to compensate for the voltage drops over the resistors or something? What does that feedback line to the - terminal do? That particular model is SMD :( I'm sure we could find a replacement, but is it needed?

I've also had troubles with Rp. Every value I try, seems to give a log curve instead of the linear response. I think I've got the math mixed up with that resistor...

As for bit depth, I'd prefer to stick to 8bit for all the pots. Sure, we'll end up with some overkill with the daughterboard (or whatever it is) fitted, as they'll go up to 16bit and the lowest two bits will be unused, but.... if we go for 6 bit then the coarse control without the fine control will be too coarse :(

PDIP... Short answer yes, long answer maybe heheheheh The PDIP chips can do it for sure but the better chips for the jobs are SMD... For example with the AD525x and AD523x there is syncronised setting, where you set all four resistors at once, which negates the need for a second data line. They also retain their settings when powered off so that the FX will continue to work. Personally, I don't think those advantages outweight the difficulty that comes with SMD...

If anyone else is reading this thread and thinks they can explain Figure 6 in this document: http://www.analog.com/UploadedFiles/Application_Notes/20666174AN582.PDF it would really be appreciated :)

Link to comment
Share on other sites

OK, so if we take one of those 4 channel ICs you mentioned, effectively we have available one 8bit out and one 16 bit out if we'd want the high resolution, right?

Aren't there IC sockets for SMD chips? I remeber from the old days when you could upgrade the memory of your VGA card in the PC, by placing DRAM ICs in special sockets (I have a few lying around with this option).

Could that be used for the smd ICs? If so, I'd be a little more confident about the SMD route :P

I don't like the fact that SMD ICs won't fit into my breadboard though :-\

About the LOG behaviour: you need to remember how you did this! LOG behaviour is also needed on some effects, where you need to adjust overall volume of the sound since the human ear behaves logaritmically (is that a correct word?) as well.

Cheers, Alex.

[edit]

addition: It is mentioned that this cascade story is a low-cost version of a 12bit DAC, but less precise and all. Instead of re-inventing the wheel (AOUT already provides a high-end 8-channel 12bit DAC with additional gates) perhaps we should research that OTA-thing for the 12-bit part instead. Digipots can be used where 8-bit is sufficient. Do you agree?

[/edit]

Link to comment
Share on other sites

OK, so if we take one of those 4 channel ICs you mentioned, effectively we have available one 8bit out and one 16 bit out if we'd want the high resolution, right?

Aren't there IC sockets for SMD chips? I remeber from the old days when you could upgrade the memory of your VGA card in the PC, by placing DRAM ICs in special sockets (I have a few lying around with this option).

Could that be used for the smd ICs? If so, I'd be a little more confident about the SMD route  :P

I don't like the fact that SMD ICs won't fit into my breadboard though  :-\

About the LOG behaviour: you need to remember how you did this! LOG behaviour is also needed on some effects, where you need to adjust overall volume of the sound since the human ear behaves logaritmically (is that a correct word?) as well.

Cheers,  Alex.

Yeh those number sound right. I was thinking about maybe finding a way to reconfigure the board... With that 6 channel chip you could have 6 coarse, or 3 coarse and a fine, or two fine... The PDIP thing seems to be the go, the only downside is the one extra data line, no biggie.

About the log stuff:

http://www.edn.com/article/CA46509.html or

http://sound.westhost.com/pots.htm (down the bottom) or

http://www.geofex.com/Article_Folders/potsecrets/potscret.htm

but my problem isn't implementing log tapers at the moment, it's avoiding them.. actually I think it's reverse log or something, but yeh, it's this

"Second, it is also important to choose an Rp,

equal to a step resistance of the digital

potentiometer, to achieve the fine 22N

adjustment"

"Rp = RAB / 2^N"

So RAB I assume is Resistance between A and B pins, so 10K, divided by 2 to the power of N, I assume N is the bit depth, so it would be 10000/256=39.something (which I've been rounding up to 40 in my previous posts), that is the resistance for each step. When i simulate the resistances put out by Rp and U3, i get this killer taper, it's pretty useless. I actually think that my calculation of the effect of Rp on U3 is wrong... I'll keep working on that today.

Now you might have noticed that the tricks for log tapers don't work so well in variable resistor connections (as opposed to voltage dividers), and this is another factor I keep forgetting to mention about those AD525* pots - they have log tapering built in....

Link to comment
Share on other sites

OK I found out why I kept getting that log taper, it's because I had worked the schematic out wrong, because I was unaware of the design of the digipots - on these, the resistance is set on the wiper terminal, not only in two parts on the A and B terminals. This is what analog knew that I didn't ;)

More examples of scaling pots with parallel resistors:

http://ww1.microchip.com/downloads/en/AppNotes/00691a.pdf

http://www.edn.com/article/CA341452.html

Oh and it seems I was right about the amp being used to level things out... And about the equation used to calculate Rp. Yay! FWIW, for an 8bit 10K pot, it's closest available value is a paralleled 430 and 43ohm resistor, which equals 39.09 Ohms, not far from the intended 39.0625 Ohms

I've got a nasty big excel document here with the values mapped out if you're interested in seeing pages and pages of data that result in a graph that looks like this: X ;D Very very boring stuff... But you can imagine my excitement at seeing those boring straight lines :D

So, we've found a way, confirmed in theory by microchip and analog devices and EDN, to get a good resolution out of the digipots. Now if we can just get them to keep that nasty digital noise off the audio buss....

How's that part faring?

Link to comment
Share on other sites

OK I found out why I kept getting that log taper, it's because I had worked the schematic out wrong, because I was unaware of the design of the digipots - on these, the resistance is set on the wiper terminal, not only in two parts on the A and B terminals. This is what analog knew that I didn't ;)

More examples of scaling pots with parallel resistors:

http://ww1.microchip.com/downloads/en/AppNotes/00691a.pdf

http://www.edn.com/article/CA341452.html

Oh and it seems I was right about the amp being used to level things out... And about the equation used to calculate Rp. Yay! FWIW, for an 8bit 10K pot, it's closest available value is a paralleled 430 and 43ohm resistor, which equals 39.09 Ohms, not far from the intended 39.0625 Ohms

I've got a nasty big excel document here with the values mapped out if you're interested in seeing pages and pages of data that result in a graph that looks like this: X ;D Very very boring stuff... But you can imagine my excitement at seeing those boring straight lines :D

So, we've found a way, confirmed in theory by microchip and analog devices and EDN, to get a good resolution out of the digipots. Now if we can just get them to keep that nasty digital noise off the audio buss....

How's that part faring?

I'm still waiting for the parts from Reichelt to arrive, until then I don't have much to build or report  :(

I'm pretty confident we'll get a working sollution, either the noise will be neglectable because of good star topology grounding, or we'll use a separate analog ground if the noise can't be made quiet enough.

Anyway, as soon as the parts are in, I have a few other things to sort out first (PSU design, Distortion design), so don't expect any results from me soon on the digipots.

Cheers,  Alex.

Link to comment
Share on other sites

Is there a commonly used value or values for the pots in the analog FX?

Currently I have only researched some distortion FX units. Most use 100K pots, LIN for the FX settings (Drive, Tone) and LOG for the volume (Level) setting, but I've also come across a schematic that uses 500k for every pot. I have to state my knowledge is very limited though. ;)

Cheers,  Alex.

Link to comment
Share on other sites

  • 3 weeks later...

Hey people;

I published a page in the wiki on “midifying analog gearâ€.

http://www.midibox.org/dokuwiki/doku.php?id=midiboxfx_-_midifiying_analog_gear

there is a section about voltage controlled resistors, with example schematics of the  vactrol, FET and OTA options. I’ve also made sections for digipots/motorized pots, but these are just copied text from stryd’s summary ealier in this thread.>> maybe someone else can write about the results we have so far with digipots?

About the VCR’s; i think it would be nice if the people that are interested take a look at the examples, try to figure out how the circuits work, hopefully do some experiments with them, and then report back here and say what they think of them; pros/cons, limitations and suggestions for improvements or different approaches. If we have some satisfying results (a small VCR circuit with good response, flexible enough to be used in a range of  possible situations) we could make a pcb etc.

The next 2 weeks i won’t be home much but after that i’ll be checking out the OTA for midifiying some parameters of a diy tr-909kick circuit ...

In case of the vactrol; i have a feeling that it’s design is quite flexible, it may only need some adjusting, but the OTA probably needs some extra circuitry.

:P Pff, more tomorrow, i’m off too bed

Link to comment
Share on other sites

  • 2 weeks later...

Lemme bring me post over here where it belongs:

PS before I forget:

Here are some notes about switching audio with an opto:

http://www.silonex.com/audiohm/softswitch.html, But we don't need to be as quiet as the ideas shown there.... Just an interesting link for future use in MIOS effect control vactrol stylee....  :)

Also another method I don't think you guys have covered....It's a costly one but purist-approved.. ;)

Relay attenuator...It can be built to exactly emulate a potentiometer in a circuit, perfect for anything that passes audio signal through a pot.....

A basic explanation is here: http://jos.vaneijndhoven.net/switchr/index.html, and you will find a lot more on the subject by googling "relay attenuator".  This type of rig can easily emulate any pot taper you want.....But again is only for people who have a spare case of relays sitting around or who need a setup that has better sonic characteristics than a real pot and a fat wallet.... :)

Is an opamp buffer stage on the digipot (to get rid of zipper/preserve sonic integrity) out of the question for what you guys are doing?  Sorry I have not been keeping up in class.  ;)

If I ever have any tinker time again I'll be testing some PGAs for audio quality and useability, I have an unrelated project that could really be simplified with these....If I can slow down enough to code an app for them...... :-\

Wow shifted gears 3 times in one post, without pushing in the clutch!  ;D

Best

Smash

Link to comment
Share on other sites

TK i'm still thinking about using a AOUT_LC with a S&H:

- can the AOUT_LC be used for single channel 16 bit operation?

- what frequency is AOUT_LC driven with now?

- how many 16 (if even possible) bit channels would the PIC be able to multiplex?

Link to comment
Share on other sites

Yeh but how? Just LFO's and Envelopes? You could get 14-bit from (N)RPN's too but if it's for LFO's you could use the circuit on ucapps.de to generate CV and save yourself the trouble :)

Oh yeh Smash, the buffers are built into the IC's I picked out :)

Link to comment
Share on other sites

  • 1 month later...
  • 7 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...