Author Topic: [HELP] XT keyboard converter  (Read 6568 times)

0 Members and 1 Guest are viewing this topic.

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
[HELP] XT keyboard converter
« on: Mon, 13 February 2017, 11:51:10 »
Hi all,

I am attempting to build an XT keyboard converter for my recently acquired IBM Model F XT keyboard.  My plan is to use a Arduino Pro Micro (already have them in my stock pile).  I wired one up according to this post: https://deskthority.net/workshop-f7/how-to-use-a-pro-micro-as-a-cheap-controller-converter-like-soarer-s-t8448.html and installed Soarer's Converter on the board.  I have no issue with the flashing and the Pro Micro enumerates as a Soarer's Converter.  scinfo can talk to the board, as does hid_listen.

The problem is that I don't get any response from the keyboard.  I checked and double checked the wiring, so I am pretty certain I have it wired properly.  I installed a 10K pull-up resistor on the data line.  When I scope the data and clock lines, there really doesn't seem to be any activity, both are pulled high.

I also tried a build of the XT converter from TMK and that doesn't seem to work either. 

I am hoping someone can point me in the right direction for debugging the system.  It's not clear to me if the problem is with the converter or the keyboard, but I don't know enough about the details of either to start debugging.    I am also hopeful that someone might be able to point out something obvious that is missing from my setup.

Is there a good way to debug the XT protocol?  Should I expect to see activity on the clock and data lines even if there is no keyboard connected?  I'd like to at least be able to confirm the converter configuration without having to rely on a keyboard that might not be functional.

Thanks!

Offline Tactile

  • Posts: 1431
  • Location: Portland, OR
Re: [HELP] XT keyboard converter
« Reply #1 on: Mon, 13 February 2017, 12:27:11 »
Well, I don't mind looking stupid for asking the obvious question. Is your Pro Micro a 3.3v or a 5v?

Other than that, I'd suspect the keyboard. As you've seen, the wiring is very simple and there are just no other variables.

And you've probably done this but:

Unplug the USB cable from the Pro Micro

Fire up HID_LISTEN and have it running when you plug the USB cable into the Pro Micro

You should see, in HID_LISTEN, some info from the Soarer's converter, including the keyboard ID and the Code Set. If this info is present and correct that just about covers everything you've done and the fault is probably in the keyboard.
REΛLFORCE

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #2 on: Mon, 13 February 2017, 13:32:51 »
It's the 5v version.  I was able to successfully use one as an ADB converter using TMK for an Apple adjustable keyboard.

The output from hid_listen is the same whether a keyboard is connected or not.  It indicates that it is in Xt mode (set1).  Do you know what it should print for the keyboard ID for a working XT keyboard?

I hope I can figure out what is wrong.  This XT board is near perfect and looks almost brand new.  I don't mind repairing if needed, that means I might need to start being more invasive with the disassembly.

Does anyone know of common Model F XT failures that I can check for?  Do schematics exist for it?

Offline Wingklip

  • Posts: 153
  • Location: Soviet Republic of Australasia
  • I am the one the one the one the one the one
Re: [HELP] XT keyboard converter
« Reply #3 on: Tue, 14 February 2017, 02:39:53 »
Reflash the pro micro, and make sure that you are using the right version of the firmware depending on your atmega chip. Plug it in after and reset to ground. Then wait for some minutes or seconds and your NumLock led should come on if it exists. Otherwise it should just be good to type on. Check your wiring to he pro micro btw as it could be wrong, some online pinouts are wrong so you need to carefully figure out the XT pinouts especially. I recommend using a PS/2 port and soldering that to the pro micro and then adapting the keyboard to PS/2 before conversion.

Might fix the problem.  :D also you will have an option to plug in a PS/2 board in the future without hassle
If you 1v1 me in a cage fight I will use an AK-74 for ranged and an IBM model F 122 for melee

Offline ShawnMeg

  • Posts: 144
  • Location: Parts Unknown
Re: [HELP] XT keyboard converter
« Reply #4 on: Tue, 14 February 2017, 14:35:48 »
Hi all,

I am attempting to build an XT keyboard converter for my recently acquired IBM Model F XT keyboard.  My plan is to use a Arduino Pro Micro (already have them in my stock pile).  I wired one up according to this post: https://deskthority.net/workshop-f7/how-to-use-a-pro-micro-as-a-cheap-controller-converter-like-soarer-s-t8448.html and installed Soarer's Converter on the board.  I have no issue with the flashing and the Pro Micro enumerates as a Soarer's Converter.  scinfo can talk to the board, as does hid_listen.

The problem is that I don't get any response from the keyboard.  I checked and double checked the wiring, so I am pretty certain I have it wired properly.  I installed a 10K pull-up resistor on the data line.  When I scope the data and clock lines, there really doesn't seem to be any activity, both are pulled high.

I also tried a build of the XT converter from TMK and that doesn't seem to work either. 

I am hoping someone can point me in the right direction for debugging the system.  It's not clear to me if the problem is with the converter or the keyboard, but I don't know enough about the details of either to start debugging.    I am also hopeful that someone might be able to point out something obvious that is missing from my setup.

Is there a good way to debug the XT protocol?  Should I expect to see activity on the clock and data lines even if there is no keyboard connected?  I'd like to at least be able to confirm the converter configuration without having to rely on a keyboard that might not be functional.

Thanks!

Post a picture of the Pro Micro and your wiring. 


IBM Model F122 X 2 internal Soarer's || IBM Model M122 internal Soarer's || AEK II SKCM Salmon ALPS external adb_usb converter ||  AEK M0115 SKCM Orange ALPS click mod external adb_usb converter || AEK M0115 SKCM Salmon ALPS external adb_usb converter ||

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #5 on: Thu, 16 February 2017, 00:45:09 »
Hi all, thanks for the help so far.  I was able to test my converter with a Model F AT and it worked like a charm.  So that confirms that I at least wired up the Pro Micro properly and correctly flashed Soarer's converter.  As best I can tell, the XT and AT connector pinouts should be the same so I don't think that the wiring for XT is the issue.

The Model F XT board that I have appears to be an early sample.  All the devices on the board are dated mid-1981 and the microcontroller is in a ceramic housing.  I don't know if these early variants are different then the later ones I have seen.  Specifically, i wonder if there where every any Model F XT boards that required the connection of the reset pin.  This keyboard has that pin wired on the cable (but I can't tell if it's connected on the PCB).  I suppose it's possible I just have a bum keyboard :(


Offline hasu

  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [HELP] XT keyboard converter
« Reply #6 on: Thu, 16 February 2017, 03:46:08 »
I installed a 10K pull-up resistor on the data line.  When I scope the data and clock lines, there really doesn't seem to be any activity, both are pulled high.

I think XT keyboard should send signal when key is depressed even without converter, but pull-up resistors are needed on both clock and data lines.


If you are willing to get pic of scope when key like 'K' is depressed with pull-up resistors and no converter, it would be useful to improve TMK XT converter code.

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #7 on: Thu, 16 February 2017, 23:32:52 »
Thanks Hasu.

I appreciate the work on the TMK converter.  I successfully used it as an ADB converter for an Apple keyboard.  Great stuff.

Is a 10K pull-up for both data and clock ok?  I have seen other forum posts indicate that 1K is required.  Let me know your thoughts.  I will try to find some time this weekend to test.  If things are working on the keyboard, then i will capture a trace for you.

Offline hasu

  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [HELP] XT keyboard converter
« Reply #8 on: Thu, 16 February 2017, 23:59:32 »
Thanks Hasu.

I appreciate the work on the TMK converter.  I successfully used it as an ADB converter for an Apple keyboard.  Great stuff.

Is a 10K pull-up for both data and clock ok?  I have seen other forum posts indicate that 1K is required.  Let me know your thoughts.  I will try to find some time this weekend to test.  If things are working on the keyboard, then i will capture a trace for you.

I think 10K works well unless you use long or coiled cable but not sure.

http://www.reenigne.org/crtc/PC-XT.pdf
According to pp146 and pp148 of tech reference keyboard has 2K pull-ups and system side has 4.7K, btw.

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #9 on: Fri, 17 February 2017, 23:08:55 »
Ok, thanks for the input and the link.  I will try this weekend and let you know what I find out.

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #10 on: Mon, 20 February 2017, 17:20:32 »
Ok, mystery solved.  Turns out that the Pro Micro that was I was using didn't have the voltage jumper (SJ1) soldered, which meant that VCC was Vusb minus the regulator drop.  My PC has a USB voltage of about 4.3v, and the keyboard was getting about 4.0v, which turns out to be too low.  When I tried the setup on another machine with a higher USB voltage,  the keyboard and converter worked fine.  Once I jumpered SJ1, the keyboard and converter work on the PC with low USB voltage, since the keyboard now sees 4.3v.

Hasu, as requested, I have attached a screenshot from a scope capture of the 'K' key without the converter attached.  This was from the keyboard side, so the only pull-ups are the 2K resistors in the keyboard.

Offline Tactile

  • Posts: 1431
  • Location: Portland, OR
Re: [HELP] XT keyboard converter
« Reply #11 on: Mon, 20 February 2017, 18:42:46 »
Did you have any problem or odd symptoms flashing the Pro Micro with the open jumper?
REΛLFORCE

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #12 on: Mon, 20 February 2017, 23:06:12 »
I haven't tried to put the Pro Micro into bootloader mode since the change.  When I get the chance, I will test and report back.  Since the jumper just bypasses the voltage regulator, I don't expect any problems.

Offline hasu

  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [HELP] XT keyboard converter
« Reply #13 on: Tue, 21 February 2017, 03:04:09 »
Hasu, as requested, I have attached a screenshot from a scope capture of the 'K' key without the converter attached.  This was from the keyboard side, so the only pull-ups are the 2K resistors in the keyboard.

Thanks a lot!
That pic is very helpful for me to understand XT protocol.

Offline megahertzcoil

  • Thread Starter
  • Posts: 34
Re: [HELP] XT keyboard converter
« Reply #14 on: Tue, 21 February 2017, 10:59:17 »
Thanks a lot!
That pic is very helpful for me to understand XT protocol.

No problem.  Let me know if you need me to capture any other traces or if you need timing measurements.  I put the keyboard back together, but it's pretty easy to open it and probe the signals.

Offline kuished

  • Posts: 8
Re: [HELP] XT keyboard converter
« Reply #15 on: Sun, 11 March 2018, 03:41:26 »
Ok, mystery solved.  Turns out that the Pro Micro that was I was using didn't have the voltage jumper (SJ1) soldered, which meant that VCC was Vusb minus the regulator drop.  My PC has a USB voltage of about 4.3v, and the keyboard was getting about 4.0v, which turns out to be too low.  When I tried the setup on another machine with a higher USB voltage,  the keyboard and converter worked fine.  Once I jumpered SJ1, the keyboard and converter work on the PC with low USB voltage, since the keyboard now sees 4.3v.

Hasu, as requested, I have attached a screenshot from a scope capture of the 'K' key without the converter attached.  This was from the keyboard side, so the only pull-ups are the 2K resistors in the keyboard.

Thanks for this! I had the exact same problem using a Pro Micro. It was puzzling because it worked on AT keyboards but not my IBM F XT. After bridging the (S)J1, it worked perfectly.