<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Thanks a lot for your input Tom.</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
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).</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
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.
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Of course this is just my speculation, as I don't have a working unit to sniff. <br>
</div>
<div>
<div id="appendonsend"></div>
<div style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> Tom Wiltshire <tom@electricdruid.net><br>
<b>Sent:</b> Thursday, September 9, 2021 11:54 PM<br>
<b>To:</b> ackolonges fds <ackolonges@hotmail.com><br>
<b>Cc:</b> mark verbos <markverbos@gmail.com>; synth-diy@synth-diy.org <synth-diy@synth-diy.org><br>
<b>Subject:</b> Re: [sdiy] Ensoniq Keyboard Module Communication</font>
<div> </div>
</div>
<div class="" style="word-wrap:break-word; line-break:after-white-space">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.<br class="">
<div><br class="">
<blockquote type="cite" class="">
<div class="">On 9 Sep 2021, at 12:27, ackolonges fds via Synth-diy <<a href="mailto:synth-diy@synth-diy.org" class="">synth-diy@synth-diy.org</a>> wrote:</div>
<br class="x_Apple-interchange-newline">
<div class="">
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
Thanks a lot for your reply mark.</div>
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
<br class="">
</div>
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
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.<span class="x_Apple-converted-space"> </span><br class="">
</div>
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
<br class="">
</div>
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
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!<br class="">
</div>
<div class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<div id="x_appendonsend" class=""></div>
<div class="" style="font-family:Calibri,Helvetica,sans-serif; font-size:12pt"><br class="">
</div>
<hr tabindex="-1" class="" style="display:inline-block; width:731.078125px">
<div id="x_divRplyFwdMsg" dir="ltr" class=""><font class="" style="font-size:11pt" face="Calibri, sans-serif"><b class="">From:</b><span class="x_Apple-converted-space"> </span>mark verbos <<a href="mailto:markverbos@gmail.com" class="">markverbos@gmail.com</a>><br class="">
<b class="">Sent:</b><span class="x_Apple-converted-space"> </span>Thursday, September 9, 2021 10:47 PM<br class="">
<b class="">To:</b><span class="x_Apple-converted-space"> </span>ackolonges fds <<a href="mailto:ackolonges@hotmail.com" class="">ackolonges@hotmail.com</a>><br class="">
<b class="">Cc:</b><span class="x_Apple-converted-space"> </span><a href="mailto:synth-diy@synth-diy.org" class="">synth-diy@synth-diy.org</a> <<a href="mailto:synth-diy@synth-diy.org" class="">synth-diy@synth-diy.org</a>><br class="">
<b class="">Subject:</b><span class="x_Apple-converted-space"> </span>Re: [sdiy] Ensoniq Keyboard Module Communication</font>
<div class=""> </div>
</div>
<div class="" style="word-wrap:break-word; line-break:after-white-space">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.
<div class=""><br class="">
</div>
<div class="">Mark<br class="">
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On Sep 9, 2021, at 3:15 AM, ackolonges fds via Synth-diy <<a href="mailto:synth-diy@synth-diy.org" class="">synth-diy@synth-diy.org</a>> wrote:</div>
<br class="x_x_Apple-interchange-newline">
<div class="">
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
Hi All,</div>
<div class="" style="font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Helvetica,sans-serif; font-size:12pt">
<br class="">
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?<br class="">
<br class="">
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.<br class="">
<br class="">
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.<br class="">
<br class="">
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?<br class="">
<br class="">
Thanks so much in advance for any help or ideas you may have.<br class="">
</div>
<span class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">_______________________________________________</span><br class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<span class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">Synth-diy
mailing list</span><br class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<a href="mailto:Synth-diy@synth-diy.org" class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px">Synth-diy@synth-diy.org</a><br class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<a href="http://synth-diy.org/mailman/listinfo/synth-diy" class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px">http://synth-diy.org/mailman/listinfo/synth-diy</a><br class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<span class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">Selling
or trading? Use<span class="x_x_Apple-converted-space"> </span></span><a href="mailto:marketplace@synth-diy.org" class="" style="font-family:Helvetica; font-size:14px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px">marketplace@synth-diy.org</a></div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</div>
<span class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">_______________________________________________</span><br class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<span class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">Synth-diy
mailing list</span><br class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<span class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important"><a href="mailto:Synth-diy@synth-diy.org" class="">Synth-diy@synth-diy.org</a></span><br class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<span class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important"><a href="http://synth-diy.org/mailman/listinfo/synth-diy" class="">http://synth-diy.org/mailman/listinfo/synth-diy</a></span><br class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none">
<span class="" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:normal; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">Selling
or trading? Use <a href="mailto:marketplace@synth-diy.org" class="">marketplace@synth-diy.org</a></span></div>
</blockquote>
</div>
<br class="">
</div>
</div>
</body>
</html>