What's new
What's new

Yasnac 2000G keypad wedge - BTR workaround


Hot Rolled
Jun 30, 2007
Disclaimer: This is the story of a project that makes no sense as a moneymaker, but is a fun challenge and a vehicle to learn and try some new skills.

So I have a 1981 Takamatsu EM-2 turning center that uses Yasnac 2000G. It had a BTR that the previous owner could never get to work. I tried using an Arduino controller and program developed by Benjamin at BarchDesign but could not get that to work either. I then stepped back to try to get the original tape reader working and that also did not work so I determeined that there was probably broken on a board somewhere. I spend quite a bit of time swapping parts and trying to capture signals with an oscilliscope. Since this is a 40+ year old machine I really don't want to cause more damage trying to fix things. Inputting ever program by hand through the keypad also made it so I was not using the machine.

In talking with Rootboy he suggested making a keyboard wedge - which is just a device that sits between the keypad and the controller to trick the controller that buttons are being pressed. Originally I was going to make a simple system where the arduino would be pushing it's own voltage on the controller to mock a closed button on the keypad but I was worried about one small mistake or uncontrolled voltage spike bricking my machine. So I opted for a more complex wiring job using optocouplers to keep the arduino voltages and yasnac voltages completely seperate. Optocoulers are basically relays. If you are not familiar with keypad arrays they are not simple 1:1 switches. The buttons are laid out in a matrix so that less wires and inputs can be used. However this requires that the controller does a little dance where once it gets a signal that a button is pushed it runs a sequence of voltages across one side of the array to determine exactly which button is presses. There are much better explainations on the web than this one.

The pictures below show the pinout that I created of the rows and columns of the original keypad as a wiring schematic. Also the "Y" cable that taps my device between the keypad and the controller. There was quite a bit of soldering to build this!

The device works by me operating the keypad to put the machine in edit mode and then I push the start button on my device. It then reads a txt file character by character of an SD card and sets the appropriate optocoupler HIGH to mimick a button push. The optocoupler then lets the yasnac push it's own voltages across the coupler to determine what button is pressed. There are 2 delays in the program logic. One that holds the button down for a certain time, and another that delays before the next button push is micmiced. This is needed for the old control to keep up and not miss characters. I can actually double push a button faster with my finger that the controller can keep up. Everything needs to be deliberate and slow. Through experimetation I can reliable write 3.8 characters per second.

Including an LED screen in the device was invaluable in debugging since I programed it to display what it was doing and what button it was pressing.

Well that's it - just a little challenge to keep the cobwebs out of the brain.


  • IMG_6618.jpeg
    509.2 KB · Views: 6
  • yasnac pinout.JPG
    yasnac pinout.JPG
    269.4 KB · Views: 5
  • IMG_6617 (1).jpeg
    IMG_6617 (1).jpeg
    802.1 KB · Views: 5
  • IMG_6580.jpeg
    1 MB · Views: 4
  • IMG-1773.jpg
    2.8 MB · Views: 4
  • IMG_6578 (1).jpeg
    IMG_6578 (1).jpeg
    668.6 KB · Views: 5