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 
 Forum index » DIY Hardware and Software
Digital 2-Voice Keyboard Revisited
Post new topic   Reply to topic Moderators: jksuperstar, Scott Stites, Uncle Krunkus
Page 1 of 1 [10 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
richardc64



Joined: Jun 01, 2006
Posts: 679
Location: NYC
Audio files: 26

PostPosted: Fri Dec 01, 2006 7:09 am    Post subject: Digital 2-Voice Keyboard Revisited
Subject description: An idea whose time has passed?
Reply with quote  Mark this post and the followings unread

Hello again.

I've been playing around with a re-design of the Oberheim Digital 2-voice Keyboard, reducing the number of chips and simplifying the wiring in general. (Yeah, I know a PIC or some other microcontroller would be even simpler, but I'd get bogged down by programming, and I have no intention of having that happen AGAIN. Note the end of my ID.) Below, for comparison is the relevant portion of the original schematic and my revision. (Reduced in size and not meant to be actually readable.)

Would there be any interest in this? Or should I just forget it, save up my Quatloos and buy a PAIA MIDI2CV8, and use my Korg Poly-800 to control my modular stuff, which right now is controller-less. I'd really like to build a stand-alone instrument, though. I have CEM3394s from a dead Six-Trak that would be perfect for it.


both2.gif
 Description:
Old and new Left Channels compared
 Filesize:  11.05 KB
 Viewed:  6062 Time(s)

both2.gif


Back to top
View user's profile Send private message Visit poster's website
Scott Stites
Janitor
Janitor


Joined: Dec 23, 2005
Posts: 4127
Location: Mount Hope, KS USA
Audio files: 96

PostPosted: Sat Dec 02, 2006 7:14 am    Post subject: Reply with quote  Mark this post and the followings unread

Personally I think it's a wonderful idea. A few years ago I marked this as a project for the future (along with, oh, a hundred other things). I don't think it's something that's passed its prime at all.

I prefer scanning CV keyboards over resistor string based keyboards. The duophonic aspect of it would really be nice. The thing about a board like this is that one could hack old keyboards to conform to it (note Chrometuna's 'How to' thread).

I use a scanning keyboard circuit from Thomas Henry's "Build a Better Music Synthesizer", and I love it. Unfortunately, it's copyrighted material, so I don't feel that I can share it freely. I've mentioned it to Thomas before, but I think he believes MIDI->CV is the way most people go, and hasn't expressed any interest in really putting this one back out there.

In any event, when I got back into Synth DIY after a fifteen year hiatus, I realized the first thing I needed was a keyboard, so I put this circuit together. I took an incredibly cheap keyboard kit, scraped off all of the components of the original, and then hacked it into a matrix style keyboard (this particular keyboard had each note going to a pin on a large surface mount IC). So, I used bus wire, an exacto blade, and a soldering iron to form the required matrix. Then I interfaced this to the keyboard circuit with ribbon cable. It's worked wonderfully since 2002 - I mean, other than the fact that the keyboard itself is a poorly selected piece of junk, the circuit works wonderfully.

I'm not anti-MIDI myself, but the idea of a CV/Gate/Trigger keyboard that doesn't require any type of converter to operate really appeals to me.

So, I think anyone who has an old keyboard they'd like to turn into a controller, this circuit would be great.

Cheers,
Scott
Back to top
View user's profile Send private message
Uncle Krunkus
Moderator


Joined: Jul 11, 2005
Posts: 4761
Location: Sydney, Australia
Audio files: 52
G2 patch files: 1

PostPosted: Sat Dec 02, 2006 8:46 am    Post subject: Reply with quote  Mark this post and the followings unread

Yeah,
give us a closer look at your circuit. There's stuff to be learned from everything! Cool

_________________
What makes a space ours, is what we put there, and what we do there.
Back to top
View user's profile Send private message Visit poster's website
richardc64



Joined: Jun 01, 2006
Posts: 679
Location: NYC
Audio files: 26

PostPosted: Sat Dec 02, 2006 10:04 am    Post subject: Reply with quote  Mark this post and the followings unread

You've talked me into it. For the past several months this has been just a mental exercise, thinking out loud to keep my brain from seizing up. As such, I have for the most part omitted IC pin numbers, leaving that for when this gets built -- if ever. Also, most resistor and cap values are 'to be determined.' This is by no means a finished (re)design.

When I first saw the Oberheim digital 2-voice keyboard schematic, my reaction was, 'This looks do-able' -- because I immediately saw that the number of ICs could be reduced and the wiring simplified. The purpose of that cluster of 6 XORs (1-1/2 ICs), 4-input NOR (1/2 IC), 2-input NOR (1/4 IC), and 2-input NAND (1/4 IC), in the original circuit is to compare the value in the 74C174 latch with the keyboard scanning count and provide an active low at the NAND output when the two values are equal. This can be done by a single chip, a 74HC688, called an 8-bit equality detector. This reduces the number of chips and also eliminates the hassle of interconnecting all those XORs, NORs and NAND -- twice! The 74HC688 can be used in other designs that compare groups of bits, Ray;-) Since it compares two 8-bit values, here two P inputs and two Q inputs are held at 0, Gnd, as is the /Enable. (Curious that inputs be designated 'Q' -- that's usually reserved for flip-flops, latch and counter outputs.)

There's one problem with this parts reduction, though. The 74HC family runs on 5 volts, so I can't use the 9 volts the original design calls for. This is fine with me, as I don't understand the use of all those non-symmetric supply voltages in the original, anyway. (The original Digital to Analog Converter looks a bit screwy, too. I've made changes to that, as well.) I've chosen a 74HC4316 for the Sample and Hold switch. This is like a CD4016 analog switch, but includes level translation, so a positive-only logic level can switch on and off a +/- signal. Each switch also has lower 'On' resistance than the 4016. The voltage from the DAC, with Octave Up/Dn and a Tune or Pitch Bend would have to be offset to keep it within the range permitted by the 'HC4316 +/-5V supply.

The RIGHT CHANNEL logic is the same as the LEFT, with the corresponding 'R' signals substituted for 'L.' Note that either circuit alone can function as a mono keyboard if the xTAKEN input to the 4-input NOR at the bottom left is held low. Note also that 'Left' and 'Right' do not refer to pressed key locations on the keyboard, but to which CV and Gate channel has 'First' priority as set by the MODE switch. The two channels could just as legitimately be called A&B or 1&2.

If my understanding of the logic is correct, the pulse that clocks the 74HC174 happens only when a key is first pressed, to store the scan count for comparison on suceeding scans. This can possibly be used to derive a Trigger, but the pulse would have to be stretched. There will be leftover gates and inverters with which to do this. (Or not.)

The full Left-Right schematic is Here and my thoughts on the complete re-design begins Here. As you'll see, I've been doing more than "playing around" with this idea. Any feedback will be appreciated.

(Hmmm...it might be worthwhile to eliminate the 4316 and the opamp that follows it and build a separate DAC for each channel and hang them off the 'HC174s' outputs. I've never entirely trusted S/Hs anyway. I gotta think about this some more.)


left.gif
 Description:
Left Channel Logic
 Filesize:  10.22 KB
 Viewed:  4380 Time(s)

left.gif


Back to top
View user's profile Send private message Visit poster's website
Scott Stites
Janitor
Janitor


Joined: Dec 23, 2005
Posts: 4127
Location: Mount Hope, KS USA
Audio files: 96

PostPosted: Sat Dec 02, 2006 11:55 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
This can be done by a single chip, a 74HC688, called an 8-bit equality detector.


That's a particularly nice discovery!

Quote:
(Hmmm...it might be worthwhile to eliminate the 4316 and the opamp that follows it and build a separate DAC for each channel and hang them off the 'HC174s' outputs. I've never entirely trusted S/Hs anyway. I gotta think about this some more.)


Thomas' design closely follows the PAiA circuit you mentioned in the keyboard hack thread (IIRC, that schematic was sort of 'hidden' with some other documentation there - it may still be there, but hard to find). I think mainly where Thomas and John differed was that Thomas much preferred triggers and gates, where John though only a gate was required.

But that's neither here nor there. What is here and there is that both Thomas' and John's designs eschewed sample and holds. The XOR gate circuitry you've so neatly circumvented was used for a slightly different purpose than the Oberheim design. In these designs, the note data is latched. When a note was detected on each scan the XORs compared the detected value to the value of the previous latched note data. If that value changed, the XORs detected it and sent a strobe to latch the new value. The data on the latch was fed directly to the DAC, eliminating the need for a S&H. I'm sure your low parts count method would fit nicely with that as well.

Cheers,
Scott
Back to top
View user's profile Send private message
Scott Stites
Janitor
Janitor


Joined: Dec 23, 2005
Posts: 4127
Location: Mount Hope, KS USA
Audio files: 96

PostPosted: Sat Dec 02, 2006 12:01 pm    Post subject: Reply with quote  Mark this post and the followings unread

I might add that the strobe generated when the new value was detected also helped to generate the trigger. With each new note, a trigger was generated. Purty spiff.

Another very nice trick Thomas used was to use a full bit adder to manipulate the data and get the octave up/down function on the keyboard.

Cheers,
Scott
Back to top
View user's profile Send private message
richardc64



Joined: Jun 01, 2006
Posts: 679
Location: NYC
Audio files: 26

PostPosted: Sun Dec 03, 2006 10:30 am    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
This can be done by a single chip, a 74HC688, called an 8-bit equality detector.


[quote="Scott Stites"]
Quote:
That's a particularly nice discovery!


The 'HC688 was invented after the Oberheim design, but it's far from new. My info is from a 1988 National Databook. I've seen it used in home-brew computer designs for Address detection/decoding.

Quote:
(Hmmm...it might be worthwhile to eliminate the 4316 and the opamp that follows it and build a separate DAC for each channel and hang them off the 'HC174s' outputs...)


[quote="Scott Stites"]
Quote:
The data on the latch was fed directly to the DAC, eliminating the need for a S&H. I'm sure your low parts count method would fit nicely with that as well.


Oh, I'm pretty sure it would work, but unsure about what it would do to the parts count. My goal is to keep it lower than the original.

Scott Stites wrote:
Another very nice trick Thomas used was to use a full bit adder to manipulate the data and get the octave up/down function on the keyboard.


I remember that! I think I have it in my Electronotes "archive."

[ sigh ] What I need is a "single chip" keyboard brain that wouldn't have to do it all: just give me a count for the keyboard and data for the CVs and Gates. Look, I've even started the process by designing a 40-pin DIP (NOT a *&^%$#@! SOIC) pinout! Scan Mode selects a 8x8 matrix for a 5 Octave keyboard or a 7-bit count for 6 octaves or more. Too complicated? OK, just give me a Count Out and Key In and I'll deal with that appropriately. Output Mode selects 8, 4, 2-voice or Unison. Eight is too many? OK, 4-voice will be enough. Just as well, then I could use a single 4052 instead of two 4051s to demux the CVs and Gates. No Split, Velocity or Aftertouch, just CVs and Gate on/off. A "companion" uC could convert data out to MIDI.

Someone design this, please!!!

(Scott, did you start the Klee Users Guide yet? I got lost really early in that thread.)


single_chip.gif
 Description:
It should be easy -- for someone who knows how!
 Filesize:  6.31 KB
 Viewed:  5955 Time(s)

single_chip.gif


Back to top
View user's profile Send private message Visit poster's website
toppobrillo



Joined: Dec 10, 2005
Posts: 766
Location: oakland, ca
G2 patch files: 1

PostPosted: Sun Dec 03, 2006 8:27 pm    Post subject: Reply with quote  Mark this post and the followings unread

i have some quad-DACs with built-in latches from TI, this would lower parts count, give you 4 CV outs/ easy arpeggio...[w/ simonton's 'orgasmatronic glide'?] it would be simple enough to sequence re-trigs to 4 places [voices]

yes the magnitude comparator would simplify it too... ah! thats what you use it for! heheh ideas ideas...
Back to top
View user's profile Send private message Visit poster's website
richardc64



Joined: Jun 01, 2006
Posts: 679
Location: NYC
Audio files: 26

PostPosted: Mon Dec 04, 2006 9:28 am    Post subject: Reply with quote  Mark this post and the followings unread

topp wrote:
i have some quad-DACs with built-in latches from TI, this would lower parts count, give you 4 CV outs...


I have some from AnalogDevices. They're pretty cool, BUT, in this design, the latch outputs are needed for comparison with the count AND the latches in the quads are addressed like memory; only one at a time can be written. If the keyboard is set for Unison, both channels -- that is, both latches -- get strobed simultaneously. Can't do that with the quads. They'd be good with my 'Single Chip Dream' above, though. (They'd really simply the internal logic of that non-existent device! Each channel would'nt need to be constantly refreshed: just once for key on and again for key off.)

As silly as I think S/Hs are in a digital design, that might be the most efficient way to go, in this case.
Back to top
View user's profile Send private message Visit poster's website
Scott Stites
Janitor
Janitor


Joined: Dec 23, 2005
Posts: 4127
Location: Mount Hope, KS USA
Audio files: 96

PostPosted: Mon Dec 04, 2006 12:40 pm    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
(Scott, did you start the Klee Users Guide yet? I got lost really early in that thread.)


Not yet. Another tangent this weekend. Like the Zipster said, CMOS is like Leggo blocks. Too much fun to stay away from for long Very Happy

Short version of the manual would be this:

1. Plug LFO into clock input.

2. Connect outputs to VCO, VCF, etc.

3. Connect gate bus outputs to EG, Drum Voice, etc.

4. Flip switches. Turn pots.

Very Happy

Cheerios,
Scott
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: jksuperstar, Scott Stites, Uncle Krunkus
Page 1 of 1 [10 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software
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