[sdiy] Ensoniq Keyboard Module Communication
markverbos at gmail.com
Thu Sep 9 14:39:10 CEST 2021
The keyboard scan on start up is cycling through the keyboard scan cycle the first time and storing that map of the baseline pressure level. After that the current pressure is the difference between the read value and the stored value. Early touchplate keyboards had trims on the keys to deal with the variation between keys due to the length of the traces or what’s close to the keys or whatever. This sucks. Digital “calibration” is much better.
> On Sep 9, 2021, at 2:21 PM, ackolonges fds <ackolonges at hotmail.com> wrote:
> Thanks a lot for your input Tom.
> Sorry I didn't mention it, but I did already power up the KPC board and monitor the communication lines. Unfortunately no communication was forthcoming from either the UART or SPI lines despite everything else on the CPU seeming to be working fine (address lines clocking etc.). The service manuals often mention automatic calibration procedures for the keybed upon startup - ie. "what to do when a keybed calibration error shows up on startup" etc. (answer: perform a well-known fix on the coil boards that I have carried out, or replace the entire assembly).
> So, this leads me to believe that the KPC (keybed board) is probably waiting to receive some sort of 'perform your calibration now and tell me that it's fine' message from the main board before it starts streaming data.
> Of course this is just my speculation, as I don't have a working unit to sniff.
> From: Tom Wiltshire <tom at electricdruid.net <mailto:tom at electricdruid.net>>
> Sent: Thursday, September 9, 2021 11:54 PM
> To: ackolonges fds <ackolonges at hotmail.com <mailto:ackolonges at hotmail.com>>
> Cc: mark verbos <markverbos at gmail.com <mailto:markverbos at gmail.com>>; synth-diy at synth-diy.org <mailto:synth-diy at synth-diy.org> <synth-diy at synth-diy.org <mailto:synth-diy at synth-diy.org>>
> Subject: Re: [sdiy] Ensoniq Keyboard Module Communication
> What makes you think that *you* need to communicate with *it*? I don’t see much need for the Mainboard to talk to the key scanner, to be honest. Couldn’t it be that the KPC board just spits out data? In which case, the problem becomes understanding the data you’re looking at, but that should be somewhat easier at least, since you can press keys and see how the data changes.
>> On 9 Sep 2021, at 12:27, ackolonges fds via Synth-diy <synth-diy at synth-diy.org <mailto:synth-diy at synth-diy.org>> wrote:
>> Thanks a lot for your reply mark.
>> I did manage to get some schematics for the KPC and coil boards for the keyboard, and my current understanding is similar to yours in that each key has a high-frequency resonating circuit, with the distance of the metal pieces on the keys from the coils on the board board manifesting itself as a change in that frequency. The KPC board has an ASIC that reads all of those key frequencies and sends that info to a CPU on the board that then uses UART (and potentially SPI) to communicate that information to the mainboard.
>> Indeed, if I absolutely can not get any information on the UART commands needed to communicate with that board I'll have to attempt to create a custom board to read the keys directly. It would certainly be easier to just use the PCB that comes with the keys if possible though!
>> From: mark verbos <markverbos at gmail.com <mailto:markverbos at gmail.com>>
>> Sent: Thursday, September 9, 2021 10:47 PM
>> To: ackolonges fds <ackolonges at hotmail.com <mailto:ackolonges at hotmail.com>>
>> Cc: synth-diy at synth-diy.org <mailto:synth-diy at synth-diy.org> <synth-diy at synth-diy.org <mailto:synth-diy at synth-diy.org>>
>> Subject: Re: [sdiy] Ensoniq Keyboard Module Communication
>> I have spent some time staring at the design not so long ago while I was deep into a Buchla repair with a polyphonic aftertouch keyboard. Buchla touchplates would send a square pulse to the key and your touch act as a capacitor to ground, so when the level of the signal is measured slightly after it being sent to the key, more capacitance/longer slew = lower level. In the Buchla 400 I have here, Don integrated a physical, weighted piano keyboard and used a system remarkably similar to the Ensoniq system. That system is coils that the key mechanism moves closer to or farther from, sort of the opposite of the you become the capacitor concept. Anyway, the system scans all the keys and sends all the readings in series (it looks like a bar graph on a scope) to an A to D converter which is read as the pressure for each key. The gate on/off or note on/off if you like is generated from that pressure signal by setting thresholds for on and off. My pet project has been the opposite of yours i.e. grafting a touchplate keyboard onto an SQ-80.
>>> On Sep 9, 2021, at 3:15 AM, ackolonges fds via Synth-diy <synth-diy at synth-diy.org <mailto:synth-diy at synth-diy.org>> wrote:
>>> Hi All,
>>> I was wondering if anyone knows anything about the KPC boards that run the Polyphonic aftertouch keyboards that come in some of the Ensoniq units?
>>> I have acquired two keybed modules (with KPC boards) that I believe came from parted out dead EPS 16+'s some years ago, and I would like to build my own synthesizer around one of them. In order to do this, I'll need to try and reverse engineer the communication lines (UART and/or SPI) from (and to?) the KPC board in order to attempt to acquire key-presses and polyphonic aftertouch info from it.
>>> I suppose that I need to conduct an initialization or 'handshake' before the unit will start sending out events, but without an Ensoniq unit available to analyse I have no way of finding out what messages the KPC board needs to receive.
>>> Is there anyone out there with one of those Ensoniq keyboards with Polyphonic Aftertouch who has the capability to run a sniff of the UART / SPI lines to the KPC board? Or any info or ideas relating to communications with these keybeds?
>>> Thanks so much in advance for any help or ideas you may have.
>>> Synth-diy mailing list
>>> Synth-diy at synth-diy.org <mailto:Synth-diy at synth-diy.org>
>>> http://synth-diy.org/mailman/listinfo/synth-diy <http://synth-diy.org/mailman/listinfo/synth-diy>
>>> Selling or trading? Use marketplace at synth-diy.org <mailto:marketplace at synth-diy.org>
>> Synth-diy mailing list
>> Synth-diy at synth-diy.org <mailto:Synth-diy at synth-diy.org>
>> http://synth-diy.org/mailman/listinfo/synth-diy <http://synth-diy.org/mailman/listinfo/synth-diy>
>> Selling or trading? Use marketplace at synth-diy.org <mailto:marketplace at synth-diy.org>
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Synth-diy