However once I took a look at the keyboards, I found that a serial scanning infrastructure was already in place.
Upon doing more poking, this serial scanner structure was available for the two keyboards, pedal, stop action and Pistons. Even better, all the wiring was already in place! So if I could figure out how to replace the computer with a midi interfaced microcontroller, I'd be golden.
I was able to pretty quickly interface To a keyboard by itself. It is a simple chain of shift registers. The challenge was to figure out how the motherboard was wired for the pedal and Pistons.
This shows the single board computer plugged into the motherboard.
After a couple of hours of poking around, I determined how the other two channels of pedal and Pistons were interfaced. On the right you can see two columns of shift registers. One is for the pedal and one for the Pistons. On the bottom is my microcontroller.
Incidentally, the date codes on the chips indicate that this instrument was built in 1987.
The motherboard interfaced with everything at 12v. Fortunately, the shift registers were all cmos, and after data sheet review and some timing analysis, I determined how fast they could be driven. The biggest reverse engineering issue was finding how the interface between the computer and the shift register chains was made. Rodgers had about 4 levels of buffering. One level, a level shifter, didn't run at speed at 3.3v. So after removing that from the circuit everything worked.
The micro was programmed in assembly, and every byte of memory in the lower page was used.
The lights interface was not reverse engineered or used, though it works on a shift register principle, but in the other direction. It would be straightforward to implement these.
After finishing the interface, cleaning up was an order of business. All tone generation and switching circuitry was removed, as well as the inefficient and now hopelessly over specified power supply and amplifier.
No comments:
Post a Comment