Author Topic: TMK IBM PC Keyboard Converter  (Read 139557 times)

0 Members and 1 Guest are viewing this topic.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
TMK IBM PC Keyboard Converter
« on: Tue, 03 December 2019, 05:59:31 »
IBM PC Keyboard Converter

The converter translates IBM PC keyboard protocols into USB to use classic keyboards with modern computer. It supports both IBM XT and AT protocols(including PS/2 and Terminal), and all of scan code set 1, 2 and 3 with one firmware.

Pin configuration is compatible for Soarer's, this firmaware works on existent Soarer's converter hardwares.

This project is intended to integrate and supersede existent TMK XT, PS/2 and Terminal converters.
- IBM XT converter: https://geekhack.org/index.php?topic=94649.0
- PS/2 converter: https://geekhack.org/index.php?topic=14618.0
- IBM Terminal converter: http://geekhack.org/index.php?topic=27272.0

You can buy  preassembled TMK converter here to support this project.

Thanks



Trouble Shoot
Check these first if you have a problem.

- Check your wiring 100 times if you are using your own DIY converter
- Pull-up resistors
- Reset pin(for XT keyboards)
- Use TMK 'Default Prebuilt Firmware'



Update
2023-10-27 Add support for hot keys of Silitek SK-7100P
2023-06-16 Add support for 'TERM FUNC' key on Siemens F500 in AT protocol
2023-02-17 Fix for XT startup problem
2022-09-08 Add support for SIEMENS PCD 2 Keyboard. Make 'Magic commands' enabled again.
2022-08-20  Fix keymap editor layout for Full-key: All hidden keys of IBM Model-M are supported now
2022-07-22 Confirm support and fix for IBM 5576-002
2021-11-08 Add support for AX keyboard
2021-11-06 Add support for Televideo DEC style keyboard
2021-10-28 Update: Add AT/XT auto-switching support, parity error detection, ConnectPro KVM support
2021-08-17 Fix XT keymap for ISO key.
2021-07-07 Add support for secondary interface and PS/2 Mouse(IntelliMouse, ExplorerMouse and Logitech PS/2++ too)
2021-06-03 Add support for Zenith Z-150 AT, IBM 5576-001(ID:AB92) and IBM 1394204(ID:7F7F)
2020-11-22 Add adhoc Z-150 AT support(Let me know your result)
2020-11-22 Fix Pause key for enhanced XT keyboard
2020-07-05 Fix for Timeout error(ERR:20)
2020-07-02 Add support for hidden keys of IBM AT 84-key to Editor
2020-06-03 Improvement for XT protocol and keyboard error recovery
2020-05-11 Add handler for keyboard buffer full to prevent key stuck
2020-05-11 Add adhoc start bit error recovery for XT keyboards
2020-04-28 Add support G80-2551 and possibly other terminal keyboards(whose id is AB86)
2020-04-11 Keymap Editor is available
2020-03-02 firmware update for XT protocol handling and many other fixes



REQUEST FOR HELP
Test in the field and feedback from users are needed to improve this converter.
Please report your result and your keyboard model number.
Also debug outputs on hid_listen would be helpful to know how keyboard is recognized.

The converter needs to be tested especially with these keyboards:
- IBM 5576-002/003 - Please report your result. Also check this and Code Set 2 table.
- Copam K-430 (supported now)
- IBM 5576-001 Supported now!  2021-06-01
- Zenith Z-150 AT (supported now)
- Zenith Z-150 XT black label (supported now)
- IBM PC XT 83-key (supported now)
- IBM PC AT 84-key (supported now)
- IBM RT to add LED support
(Let me know if you still have any issue)



Keyboard support
- PC XT (keyboard of IBM 5150 5160)
  - 83-key: 1501100 1501105
- PC AT (keyboard of IBM 5170)
  - 84-key: 6450200 6450225
- PC Terminal (keyboard of IBM 5271/3270 PC)
  - 122-key: 6110344 6110345 1397000
  - 102-key: 1390680 1395764 1392595
- Other compatible keyboards (see below)

Confirmed Keyboards
Let me know if you find any issue with these keyboards using the latest firmware.

XT Keyboards
- IBM PC XT 83-key: 4584656, 2020-06-02, 2023-02-17
- Leading Edge DC-2014
- KeyTronic E03600 XT/AT (after Timeout error Fix)
- Zenith Z-150 XT, black label, Heath(92-803)
- Chicony KB-5191 in XT mode
- Focus FK-2001
- Siemens F500 XT(2020-11)
- Sanyo N860-2905
- Commodore G80-0560/e (PC-5/PC-10)

AT(PS/2) Keyboards
- IBM PC AT 84-key,
- DS-2001,
- Northgate Omnikey
- KeyTronic E03600 XT/AT
- DTK SPK 101
- FK-8000
- Focus FK-2001
- Siemens S26381-K257-L120 (Some keys may be not useful.)
- SIEMENS PCD 2 Keyboard (Weirdness)
- APC-H410E
- Toshiba JIS AT101
- Dell AT101 - GYI3PVAT101
- Wang 724
- Unicomp Model M
- IBM P70 Keyboard
- Zenith Z-150 AT #661 OK
- Focus FK-2002
- AX keyboard (Refer to mapping)
- Tandberg TDV 5020 (Refer to mapping)
- IBM 5576-002
- Siemens F500 AT(2023-06)
- Unknown DEC compatible with MiniDIN-6P
Silitek SK-7100P

Terminal Keyboards
- IBM 122-key Terminal: 6110345, 6111070, 6110344, 1390702(Model M)
- Cherry G80-2551
- IBM 5576-001
- IBM 1394204 101-key (Use 122-key layout on Keymap Editor and see this for mapping.)
- Televideo DEC style (Use Full-key layout on Keymap Editor and see this for mapping.)
- IBM RT should work. (Use 122-key layout on Keymap Editor and see this for mapping.) - No LED support yet. See 'REQUEST FOR HELP' above and help me.

AT/XT Keyboards
- RT8255c+
- RT-101+
- C260 Enhanced Keyboard (Deyi foam and foil)
- Northgate Omnikey 101
- Zenith ZKB-2
- BTC-5161 - Part number: BTC5339  (AT/XT Auto-Switch, works as AT)
- NTC KB-6252EA
- Copam K-430 (AT/XT Auto-Switch, works as AT)








Keymap Editor
You can edit keymap on web browser and download the latest prebuilt firmware here.

http://www.tmk-kbd.com/tmk_keyboard/editor/#ibmpc_usb



Flash
Check this about how to flash firmware.
https://github.com/tmk/tmk_keyboard/wiki#flash-firmware



Firmware
Source code: https://github.com/tmk/tmk_keyboard/tree/master
See project README also. https://github.com/tmk/tmk_keyboard/tree/master/converter/ibmpc_usb

Default Prebuilt Firmware
You can download the latest prebuilt firmware with default keymap here.
https://github.com/tmk/tmk_keyboard/tree/master/converter/ibmpc_usb/binary

Build Firmware
If you are not familiar to these things use Keymap Editor.
Code: [Select]
git clone https://github.com/tmk/tmk_keyboard.git
cd converter/ibmpc_usb
make -f Makefile.<variant> clean
make -f Makefile.<variant>
where <variant> is atmega32u2, atmega32u4 or at90usb1286.
You will see firmware hex file in the directory.
Check this page as well. https://github.com/tmk/tmk_keyboard/wiki#build-firmware

Build Options:
These options in Makefile makes firmware size lager and you can disable these to reduce its size.
- `IBMPC_SECONDARY` - enables secondary interface for converter with PS/2 Mini-DIN-6 connector
- `IBMPC_MOUSE_ENABLE` - enables PS/2 mouse support




Converter Hardware
The firmware supports ATmega32u4, ATmega32u2, AT90USB1286 by default, Teensy2/2++ or Pro Micro can be used.

Wiring
Wire controller pins below to keyboard signals, besides VCC and GND. This pin configuration is compatible for Soarer's converter.

Pull-up resistors of 1-4.7K Ohm on both Data and Clock line are needed absolutely, without them it won't work in some cases.

- Data    PD0
- Clock   PD1
- Reset   PB7(or PB6 for Pro Micro)

Optional secondary interface for PS/2 connector uses these pins.
- Data2    PD2
- Clock2   PD3

See this wiki for pull-up resistor.

Connector pinouts
More



Reset pin (for XT)
Old Type-1 IBM XT keyboards need Reset pin to initialize its controller on startup. Also some clones such as Zenith Z-150 XT and  Leading Edge DC-2014 are known to need it. Type-2 IBM XT keyboard and other XT clones don't need.

You should have wiring for the Reset pin if you want to support all of XT keyobards.

See this and this for difference between XT Type-1 and Type-2.  It is difficult to discriminate between Type-1 and Type-2 without looking into its internal electronics.

AT, PS/2 and Terminal keyboards don't require the pin. But it won't harm for the keyboards so you can make converter compatible with XT, AT, PS/2 and Terminal keyboards safely with having the Reset pin.



Pro Micro Caveat
Pro Micro is not recommended unless you are already familiar or have skill and time enough.
Don't ask Pro Micro specific question/help here like which pins to be used and how to flash.
More
You have to use VCC pin to power your keyboard, not RAW pin.
RAW pin is not for 5V power supply directly from USB line. The name may be confusing but it is used for external power input, not output. You get only around 4.6V due to protection diode(D2 in schematic) forward voltage drop(0.4V typically) on RAW pin.
And you have to make J1 solder bridged, without this you will get same voltage as RAW pin or lower.
With J1 solder bridge you can get raw power(possibly 5V) directly from USB line on VCC pin. Note that RAW pin doesn't give 5V even with the solder bridge.
Check this wiki for detail. https://github.com/tmk/tmk_keyboard/wiki/Pro-Micro#j1-solder-bridge

PD0, PD1 and PB6 are maked on Pro Micro PCB as 3, 2 and 10 respectively.

https://github.com/tmk/tmk_keyboard/wiki/Pro-Micro#pinout








Debug
Use hid_listen to see debug outputs from the converter.

https://github.com/tmk/tmk_keyboard/wiki#debug

You will see debug ouputs like this.
Code: [Select]
TMK:95aba6dd/LUFA

USB configured.

Keyboard start.
rAA rBF rBF wF5 rFA wF2 rFA rBF rBF wF4 rFA ID: BFBF
kbd: Terminal
wF8 rFA 


Scan Code Map
https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-Keyboard-Converter#default-mapping

Check this default mapping if your keyboard is not consistent with keymapping code or Keymap Editor layout.
Use hid_listen to see scan code of questioned key and find it in the default mapping table.

Sigrok Decoder
You can use this protocol deocoder with sigrok PulseView to see commands and data for debug. The docoder supports only AT protocol, not XT at this time.
More
Cheap $10-20 logic analyzer that is compatible with sigrok works well for this job. Get one and try. 1MHz sample rate is actually good enough for the protocol.

https://github.com/tmk/tmk_keyboard/wiki/Signal-Capture-for-debug#sigrok


Or instead of using logic analyzer you can use 'Signal Capture' firmware on your converter hardware to capture signal(this won't always work). See below.


Signal Capture Firmware
With this firmware you can capture signals from keyboards without logic analzyer.

https://github.com/tmk/tmk_keyboard/wiki/Signal-Capture-for-debug/#signal-capture-firmware




Issues
Let me know here or on github if you have any problem.
https://github.com/tmk/tmk_keyboard/issues







Media keys support
Media keys are mapped to F13-F24 by default. You can remap on Keymap Editor.

Check this wiki entry.
https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-Keyboard-Converter#media-keys



Mouse support
Default firmware is built with Mouse support. Just plug mouse to PS/2 converter or AT/XT converter using adapter.

- PS/2 mouse protocols are also supported now. 2021-08
  - Default mouse - 3-button
  - IntelliMouse - 3-button with v-wheel
  - ExplorerMouse - 5-button with v-wheel
  - Logitech PS/2++ - 8-button with v and h-wheel

Confirmed Mouses
- Logitech MX510



Dual device support
Supported only by PS/2 converter. To use secondary interface you need Y-splitter cable.
You can host two devices at same time regardless of any combination(keyboard/mouse, 2 keyboards or 2 mouses).



AT/XT protocol auto-switching keyboard
Some keyboards support both AT and XT protocol and can detect host protocol automatically without physical switch.  TMK IBMPC converter selects AT protocol in preference to XT with such keyboards.
https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-Keyboard-Converter#atxt-auto-switching




Converter Implementation and Protocol Considerations
Check TMK wiki pages.
- https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-Keyboard-Converter
- https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-XT-Keyboard-Protocol
- https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-AT-Keyboard-Protocol



Solved Issues:
More
« Last Edit: Thu, 11 January 2024, 19:49:25 by hasu »

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #1 on: Sun, 05 January 2020, 20:05:56 »
anyone? please check first post.


Quote
REQUEST FOR HELP: Try and report your result.
Post your keyboard model number here, also debug outputs on hid_listen would be helpful.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #2 on: Mon, 06 January 2020, 12:00:47 »
I have a few ATMega32u4s sitting around waiting to be turned into Soarer's Converters, and probably the necessary resistors. I have both the standard IBM Model F XT, and AT. I also have some AT/XT switchable Uniteks and a DC-2014, although it already currently has a Soarer's converter I built inside of it. I know a guy that has an old RJ11 Wyse too (among other old weird things), if any of that may be helpful for testing.

What exactly is it that you wish to accomplish? An open-source alternative to Soarer's Converter? I would think that the AT/PS2 keyboards should all work just about the same, right? My F AT works with modern systems with a 5 pin din to PS2 adapter. There's certainly no shortage of random old PS2 boards that must be available to you.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #3 on: Mon, 06 January 2020, 18:46:54 »
I have a few ATMega32u4s sitting around waiting to be turned into Soarer's Converters, and probably the necessary resistors. I have both the standard IBM Model F XT, and AT. I also have some AT/XT switchable Uniteks and a DC-2014, although it already currently has a Soarer's converter I built inside of it. I know a guy that has an old RJ11 Wyse too (among other old weird things), if any of that may be helpful for testing.
Report on those keyobards would be definitely helpful. As for DC-2014 this firmware is compatible to Soarer's hardware you can just program it to test. This doesn't break your existent keymap settings of in eeprom, so you just need to program Soarer's firmware again to restore.

I really want to know my firmware with the IBM model F AT and XT(I don't own any unfortunately), they are very original and legitimate test samples for the keyboard  protocols.

I don't know much about RJ11 Wyse but I guess some of them uses Wyse specific protocol, not AT or XT.

Quote
What exactly is it that you wish to accomplish? An open-source alternative to Soarer's Converter? I would think that the AT/PS2 keyboards should all work just about the same, right? My F AT works with modern systems with a 5 pin din to PS2 adapter. There's certainly no shortage of random old PS2 boards that must be available to you.

Yes, I like to make this useful open-source converter and I will have to improve it.
I believe that there are still unexpected behaviours of keyboards and bugs on my code that cuases problems. It is difficult to find them without testing with real keyboards.


Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #4 on: Mon, 06 January 2020, 19:07:53 »
I tested with IBM 122-key Terminal 6110345 and it worked well.

The converter recognizes like below.
Quote
Waiting for new device:.......
Listening:


TMK:5a759850/LUFA


USB configured.

Keyboard start.
err: 2A
rAA rBF rBF wF5 rFA wF2 rFA rBF rBF wF4 rFA ID: BFBF
kbd: Terminal
wF8 rFA r3B rF0 r3B r3B rF0 r3B r3B rF0 r3B

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #5 on: Tue, 07 January 2020, 09:48:25 »
My DC-2014 doesn't have any resistors soldered to the Pro Micro (I figured that would be fine with such short wires, but I think the reset pin should still be easily accessible to flash your firmware and it does appear to be wired the same. My general-use Soarer's converter at home doesn't even have the XT reset wire soldered to it ... and that's encased in hot glue now. I really should pry it back out and resolve that though. Worst case, I'll rig up a fresh controller and get back to you, maybe tonight. I'll have to lug the F AT and DC-2014 home from work.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #6 on: Tue, 07 January 2020, 18:08:48 »
It works without pull up resistors in most cases, you don't have to modify your exisitent converter, this conveter should work if Soarer's does.
XT reset is needed only for Old Type-1 IBM XT keyboard and some of XT clones.

Don't use short wire intead of pull up resistor, it may harm on the pin.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #7 on: Wed, 08 January 2020, 09:43:05 »
What I mean is that the wires are very short, since I put the converter inside the case of the keyboard. I like to move that one around so I removed the original cable and have a short micro usb extension cable peeking out of the case. The one I have in a hardware store junction box needs to be freed from the hot glue to add the reset wire anyway, so I may as well add resistors to it as well.

Tonight, hopefully, I will get to this. My box jades for a keyboard mod are coming in today as well, so possibly not, but it all gives me an excuse to keep the soldering iron hot.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #8 on: Fri, 10 January 2020, 22:08:35 »
Sorry about the delay. I don't get enough sleep on weekdays. Here's a fun one. It looks like the K151L worked in both AT and XT mode. Neither the F AT, nor F XT worked. The Leading Edge DC-2014 didn't work either. I did notice that the lock lights did seem to come on if I enabled them from another usb keyboard on the F AT, but the F AT lock light did not work. The F XT spewed out garbled keypresses the entire time that it was connected.

With the F AT, interestingly, it would say it was an XT keyboard until I hit the reset button I added to the Pro Micro. Here's the results of HID_Listen for that board, including after having hit the reset button:



For the F XT I unplugged the converter so that it would stop listening for me to copy the entire text ... it is a long one:

* IBM Model F XT output.txt

Here's the results from the DC-2014:



Here are the results of the K151L in AT mode:



And here are the results of the K151L in XT mode:



Let me know if you need anything else.


Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #9 on: Sat, 11 January 2020, 07:07:08 »
Thank you for the report!

As for Model F AT, can you try procedure below?
1. connect keyboard to converter
2. plug it into usb port
When you connect keyboard after usb plugin, the converter tries to recognize the keyboard as possible, but it requires several key strokes and the keys are ignored. You better connect keyboard before plugin to computer basically.

For Model F XT and DC-2014, the converter seems to miss signal, could you try attached firmware?

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #10 on: Sat, 11 January 2020, 18:19:22 »
Thank you for the report!

As for Model F AT, can you try procedure below?
1. connect keyboard to converter
2. plug it into usb port
When you connect keyboard after usb plugin, the converter tries to recognize the keyboard as possible, but it requires several key strokes and the keys are ignored. You better connect keyboard before plugin to computer basically.

For Model F XT and DC-2014, the converter seems to miss signal, could you try attached firmware?

Well, with every keyboard I tested I made sure that their 5 pin din connectors were plugged into the Pro Micro before I connected the Pro Micro to the computer. I did the following with all of them:

1) Start HID_listen

2) Connect keyboard to Pro Micro

3) Connect Pro Micro to usb port on the computer

What I did with the F AT, since it was being detected as an XT keyboard for some reason when doing this, was short the reset contact to ground with a momentary button I added (while everything was still plugged in), since I figured I would need such functionality if we would be doing a lot of this.

This almost makes me want to pick up a female PS/2 adapter to wire into it as well to see what happens with random generic boards I have lying around, but I suppose they would probably work just about like the Unitek, right? I did also add a 1k resistor between data - ground and clock - ground as well, just in case (2 separate resistors). I added both of those resistors and the proper XT reset wire before I started testing your firmware.

Your alternative firmware seems to work with the DC-2014, but the XT behaved similarly to before. I would plug the Pro Micro into the computer with the keyboard already attached, no keypresses seemed to register, and HID_listen would freak out until I unplugged it. It looks like the output was a bit different this time though?

* IBM Model F XT output with alternative firmware.txt (1 kB - downloaded 351 times.)
« Last Edit: Sat, 11 January 2020, 18:39:55 by Maledicted »

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #11 on: Sat, 11 January 2020, 18:41:22 »
Just note that Pull-up register is placed between 5V and signal line, not ground. 1-10K Ohm would be fine.
To confirm your converter hardware setup before testing my firmware, you can use well-tested Soarer's converter firmware.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #12 on: Sat, 11 January 2020, 18:45:12 »
Just note that Pull-up register is placed between 5V and signal line, not ground. 1-10K Ohm would be fine.
To confirm your converter hardware setup before testing my firmware, you can use well-tested Soarer's converter firmware.

Right. 5V, not ground. My mistake. What you describe is actually how I wired it. I had previously used all of these keyboards successfully with Soarer's firmware, but I could re-test with this specific Pro Micro, and the new modifications if you like. I imagine they'll all work.

Alright, interesting results. With Soarer's converter flashed to the Pro Micro, it works with everything (including the F AT) except for the F XT, it continues to spit random things out in HID_listen. I think it might dislike the reset wire that the DC-2014 requires. I may solder an on/of switch in if I desolder the reset wire and the F XT suddenly works again with Soarer's converter.

Even with the reset wire desoldered, it is doing the same thing. Is it possible that the F XT isn't happy with a 1k ohm resistor between clock - 5v/vcc and data - 5v/vcc? I know that this keyboard worked with this very same Pro Micro without the resistors.

I think I'll throw together another basic Soarer's converter from scratch, without the resistors. I have a few more Pro Micros lying around anyway.

It just keeps getting stranger. I desoldered the resistors and resoldered the XT reset wire and the F XT did nothing. If I disconnected the XT reset wire as well, it went back to freaking out. My computer even bluescreened. I wonder what version of Soarer's firmware I originally used with this keyboard now. I'm most recently using one that somebody modified to make the Pro Micro's PB6/ contact/pin 10 into the keyboard reset line, since Soarer's firmware apparently didn't account for this on the Pro Micro.

Now the Pro Micro itself is spurting out random characters. I tried reflowing all of the solder and flashing another version of Soarer's but that didn't change anything ... I'll build a new one.
« Last Edit: Sat, 11 January 2020, 19:41:40 by Maledicted »

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #13 on: Sat, 11 January 2020, 20:36:27 »
Just note that Pull-up register is placed between 5V and signal line, not ground. 1-10K Ohm would be fine.
To confirm your converter hardware setup before testing my firmware, you can use well-tested Soarer's converter firmware.

Right. 5V, not ground. My mistake. What you describe is actually how I wired it. I had previously used all of these keyboards successfully with Soarer's firmware, but I could re-test with this specific Pro Micro, and the new modifications if you like. I imagine they'll all work.

Alright, interesting results. With Soarer's converter flashed to the Pro Micro, it works with everything (including the F AT) except for the F XT, it continues to spit random things out in HID_listen. I think it might dislike the reset wire that the DC-2014 requires. I may solder an on/of switch in if I desolder the reset wire and the F XT suddenly works again with Soarer's converter.

Interesting.
There are two types of IBM XT. Type-1 requires reset line to start up while Type-2 doesn't. But on Type-2 reset line is not connected to its controller so I believe reset line doesn't bother Type-2. Converter with reset line should work regardless of whether your XT keyboard is Type-1 or Type-2.
https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-XT-Keyboard-Protocol#type-1-vs-type-2

If your XT is Type-1 and you use ProMicro you will have to use this modified version of Soarers' firmware to support reset line on pin 10(PB6). I belive you already know and use this on DC-2014, though.
https://deskthority.net/viewtopic.php?p=187874#p187874


Quote
Even with the reset wire desoldered, it is doing the same thing. Is it possible that the F XT isn't happy with a 1k ohm resistor between clock - 5v/vcc and data - 5v/vcc? I know that this keyboard worked with this very same Pro Micro without the resistors.

I think I'll throw together another basic Soarer's converter from scratch, without the resistors. I have a few more Pro Micros lying around anyway.

I don't think 1K pull-up resistors are problem but it is still worth trying without them.

Thanks for your time.


Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #14 on: Sat, 11 January 2020, 20:48:50 »
I redid all of the wiring on the Pro Micro with some good high quality silicone wire, cleaned up all of the old solder first with some wick. It seems to work with other keyboards again, with Soarer's firmware. I didn't know that some F XTs required the reset wire and that some did not, I figured it was weird "XT-like" boards that used it. I do know that my F XT refused to work on initial boot of my operating system unless I unplugged the converter and plugged it back in, without the reset wire. The F XT is still doing the same thing as before even with Soarer's firmware. I may take it apart and take a look inside. I got it with a cut cable, so I snipped a MIDI cable and soldered it in.

Let me know if there's anything else you want me to try with the F AT with your firmware in the mean time.

F XT cable tests good, all wires make a good connection to the controller and none are bridged. I should have known. I made sure this thing would never break. Mine must be a type-2, there are only 4 wires running from what's left of the original cable to the controller.

Alright, I built an entirely new Soarer's converter and the F XT is now working with that. I thought there may be something wrong with the other converter, but I think there was something flaky with the usb cable, grounding maybe, since once I removed the usb extender it would work. I still can't get the F AT or F XT to work with either version of your firmware though. At least the F XT doesn't spit out random keypresses though. So, I've tried 3 different usb cables and 2 different Pro Micros, one with and without the pullup resistors and a complete rewire, with the same results (once whatever was going on with the XT was resolved).

With a little more testing, I also noticed that the K151L was only working when I connected while it was in XT mode. If i switched it to AT mode, it would continue to work, but if I connected it while it was already in AT mode, it would not.

So, with the original firmware the K151L worked in XT mode. With the alternative firmware the DC-2014 worked.
« Last Edit: Sun, 12 January 2020, 03:59:12 by Maledicted »

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #15 on: Sun, 12 January 2020, 06:05:54 »
Let me know if there's anything else you want me to try with the F AT with your firmware in the mean time.

I found description of power-on-reset on original 84-key AT in IBM tech reference, it is  rather slower than I expected.
Could you try this new attached firmware and show me output of hid_listen when press a, s, d and f key? I need to know numbers of Ixxx and Rxxx in particular, like below.

Code: [Select]
TMK:ee0200d6/LUFA

USB configured.

Keyboard start.
I401
rAA R1163
wF5 rFA wF2 rFA rAB r83 wF4 rFA ID: AB83
kbd: AT
L1175
wED rFA w00 rFA wED rFA w02 rFA r1C rF0 r1C r1B rF0 r1B r23 rF0 r23 r2B rF0 r2B r34 rF0 r34



Quote
Alright, I built an entirely new Soarer's converter and the F XT is now working with that. I thought there may be something wrong with the other converter, but I think there was something flaky with the usb cable, grounding maybe, since once I removed the usb extender it would work. I still can't get the F AT or F XT to work with either version of your firmware though. At least the F XT doesn't spit out random keypresses though. So, I've tried 3 different usb cables and 2 different Pro Micros, one with and without the pullup resistors and a complete rewire, with the same results (once whatever was going on with the XT was resolved).

Do you test my firmware with the "new Soarer's converter", right?
Sorry but can you share output of hid_listen for F XT with this new firmware again?  Pressing a, s, d and f key would be helpful.


Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #16 on: Sun, 12 January 2020, 22:17:44 »
I tried both previous firmwares with both the newly assembled Pro Micro, and the previous one that I had re-wired. The results were the same other than the F XT no longer spewed out random keypresses (most of the time). I noticed that with your latest firmware the F XT spewed out random keypresses on the rebuilt Pro Micro and did not on the one that I just newly built specific for this testing. That makes no sense to me since I wired them exactly the same way this time, with the extra XT wire soldered, and no resistors.

The XT did now give results with the new firmware, on the newly-assembled Pro Micro, when pressing the a,s,d, and f keys, although that didn't seem to translate into actual character signals that the computer understood when I tried to type out text. HID_listen detected nothing at all when I used the latest supplied firmware to press the a,s,d, and f keys on the F AT. I have attached the results of your requested test with the F XT:

* Ibm Model F XT output second alternative firmware, asdf pressed.txt (0.65 kB - downloaded 385 times.)

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #17 on: Wed, 15 January 2020, 15:18:45 »
I don't mean to double post, but do you have everything you need, or is there anything else I can test for you while I have all of the boards in one place? I jump around between buildings at work, and use the DC-2014 especially at work, but also the F AT. I have been keeping them at home the last few days for testing this.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #18 on: Thu, 16 January 2020, 17:43:42 »
Maledicted,
Thank you for your service so far! I really appreciate.
I don't want to prevent you from using your keyobards anymore, feel free to place them back to where they should be when you need.

I'm debuging my code on keyboard protocol recoginition and signal handling and this will take some time. If this is not in time for your test, others in the community will help me in the end.

Thanks agian!

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #19 on: Fri, 17 January 2020, 09:14:45 »
Absolutely, anything I can do. Thank you for putting all of that effort into an open source project for the community at large.

Actually, since I posted that, I won another F AT and DC-2014 on Ebay, so I should have at least one of each available no matter what now. lol

Have others with the same boards helped elsewhere? I wouldn't be surprised if none had. I imagine a lot of people go, "Soarer's firmware works for me. I'm good." since all of these boards work fine already. I think it is pretty important to expand on the functionality of Soarer's work though myself, and being open source like that, TMK seems to have the potential to become the one catch-all solution in time.

Offline gravesgeek

  • Posts: 1
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #20 on: Sun, 02 February 2020, 12:43:35 »
Hi, I am new to the community with my model m, unicomp ultracompact.
I found a 1987model m122 with stepped key and DIN 5 plug and 1981 model f xt with DIN 5 plug from a local flea market for 30 and 40 USD, respectively.

But the problem is I am not an electronics man (MD. actually). I can find someone from the medical device maintenance dept. for soldering. But I don't think they can handle the programming.

Is there any guide for building converters from the beginning?

Is there a software with a simple interface for remapping the keys or this can be don only by code writing?

Thanks to everybody.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #21 on: Sun, 02 February 2020, 19:43:10 »
Hi, I am new to the community with my model m, unicomp ultracompact.
I found a 1987model m122 with stepped key and DIN 5 plug and 1981 model f xt with DIN 5 plug from a local flea market for 30 and 40 USD, respectively.

But the problem is I am not an electronics man (MD. actually). I can find someone from the medical device maintenance dept. for soldering. But I don't think they can handle the programming.

Is there any guide for building converters from the beginning?

Is there a software with a simple interface for remapping the keys or this can be don only by code writing?

Thanks to everybody.

Hello gravesgeek, welcome to the keyboard obsession. You're probably best off posting a separate thread on this, but the M122 should work with most any 5-pin din to ps2 adapter with any modern computer that has a ps2 port. For the F XT, or to use either through a usb port, you'll need to build or buy a converter and flash it either with Soarer's converter firmware, or Hasu's. Pre-made converters with Soarer's firmware are readily available on Ebay.

For remapping, there are programs like SharpKeys, which seemed easy enough to me the last time I used it, but that was years ago. The zip downloads for Soarer's firmware contain documentation on how to remap keys and apply that remapping to the converter (which would, conveniently, mean that all computers you use with the converter would have that same mapping). Google searches reveal the same.

For the process of wiring and flashing, this is a simple/detailed guide:

https://deskthority.net/viewtopic.php?t=19035

Offline hking0036

  • Posts: 343
  • Location: NC, USA
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #22 on: Tue, 04 February 2020, 11:41:50 »
I can try this out - my kbd is Terminal F122 6111070. It's got french legends on the CMD keys up top but other than that I believe it is identical to 6110344.

Here is the output:
Code: [Select]
Waiting for device:.....
Listening:


TMK:5a759850/LUFA


USB configured.

Keyboard start.
rAA rBF rBF wF5 rFA wF2 rFA rBF rBF wF4 rFA ID: BFBF
kbd: Terminal
wF8 rFA

I have been using the terminal_usb converter for some time, and it has worked very well. Is there a particular intent for this FW?

P.S. Looking in unimap_trans.h, it seems that 0x58 is bound to 0x14 for Type-3 sets, but isn't marked.
« Last Edit: Tue, 04 February 2020, 14:53:03 by hking0036 »
Realforce RF87UB 45g Uniform | Leopold FC660C w/ TMK | IBM Model M - 3/24/1997 | IBM Model F 122 - 11/25/1985 ANSI'd w/ TMK | IBM Model F XT in a box

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR HELP] TMK IBM PC Keyboard Converter [2020-03-02]
« Reply #23 on: Mon, 02 March 2020, 00:00:34 »
REQUEST FOR HELP:

Updated firmware for XT protocol handling and many other fixes. 2020-03-02
Could someone try this prebuilt firmware and report your result and your keyboard model number? Also debug outputs on hid_listen would be helpful.

https://github.com/tmk/tmk_keyboard/tree/master/converter/ibmpc_usb/binary

The converter need to be tested with keyboards below particularly.

- IBM PC XT 83-key
- IBM PC AT 84-key

Thank you

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR HELP] TMK IBM PC Keyboard Converter [2020-03-02]
« Reply #24 on: Tue, 03 March 2020, 10:30:18 »
REQUEST FOR HELP:

Updated firmware for XT protocol handling and many other fixes. 2020-03-02
Could someone try this prebuilt firmware and report your result and your keyboard model number? Also debug outputs on hid_listen would be helpful.

https://github.com/tmk/tmk_keyboard/tree/master/converter/ibmpc_usb/binary

The converter need to be tested with keyboards below particularly.

- IBM PC XT 83-key
- IBM PC AT 84-key

Thank you

I'll do this this evening, if I get the chance. I have ... way too many additional keyboards I could be testing with now too.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #25 on: Tue, 03 March 2020, 17:10:41 »
I can try this out - my kbd is Terminal F122 6111070. It's got french legends on the CMD keys up top but other than that I believe it is identical to 6110344.

Here is the output:
Code: [Select]
Waiting for device:.....
Listening:


TMK:5a759850/LUFA


USB configured.

Keyboard start.
rAA rBF rBF wF5 rFA wF2 rFA rBF rBF wF4 rFA ID: BFBF
kbd: Terminal
wF8 rFA

I have been using the terminal_usb converter for some time, and it has worked very well. Is there a particular intent for this FW?

P.S. Looking in unimap_trans.h, it seems that 0x58 is bound to 0x14 for Type-3 sets, but isn't marked.

I did miss this post for no reason. Thank you for the test and insight.

Fixed the scancode in comment at this commit.
https://github.com/tmk/tmk_keyboard/commit/a4d4f14942a906d540c1f5aaf9d65fb6be17686b#diff-b9793345227e846a48d134c1e5f548f4

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #26 on: Tue, 03 March 2020, 21:18:59 »
REQUEST FOR HELP:

Updated firmware for XT protocol handling and many other fixes. 2020-03-02
Could someone try this prebuilt firmware and report your result and your keyboard model number? Also debug outputs on hid_listen would be helpful.

https://github.com/tmk/tmk_keyboard/tree/master/converter/ibmpc_usb/binary

The converter need to be tested with keyboards below particularly.

- IBM PC XT 83-key
- IBM PC AT 84-key

Thank you

I'll do this this evening, if I get the chance. I have ... way too many additional keyboards I could be testing with now too.

Also, can you try this XT converter firmware with your IBM XT keyboard?
https://geekhack.org/index.php?topic=94649.0

You can get the firmware for ATMega32u4 here.
https://github.com/tmk/tmk_keyboard/tree/master/converter/xt_usb/binary

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #27 on: Fri, 06 March 2020, 17:30:07 »
Well, On my Pro Micro with the pullup resistors, the flash failed and it appears to have nuked the bootloader. Probably my own fault for trying to flash it while connected to an unpowered hub. Not sure if I'll bother to try to unbrick it or not. It appears to have successfully flashed both variations of the bootloader to another Pro Micro I use without the resistors, but even after a second flash, your first all-in-one firmware didn't seem to function at all with a working F AT or XT. hid_listen searches endlessly and detects nothing, even after shorting reset to ground and/or pressing keys. The XT-specific firmware seemed to do the same. Flashing back to Soarer's firmware instantly restores functionality.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #28 on: Fri, 06 March 2020, 18:48:38 »
Maledicted, Thanks for the test.
Hmm, I don't see why it fails, we are missing something perhaps. I like to see feedback from others.


It would be really helpful if someone else can test.
Please  check the first post and this.
https://geekhack.org/index.php?topic=103648.msg2871066#msg2871066

Thanks

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #29 on: Sun, 08 March 2020, 23:11:05 »
Maledicted, Thanks for the test.
Hmm, I don't see why it fails, we are missing something perhaps. I like to see feedback from others.


It would be really helpful if someone else can test.
Please  check the first post and this.
https://geekhack.org/index.php?topic=103648.msg2871066#msg2871066

Thanks

Any time, hasu. You're doing great things for this community. I could try the updated firmware with he DC-2014 as well, if you like, maybe as a control. I also have ... a lot of other old XT and AT protocol boards now. NEC, Samsung, Zenith, etc, though I imagine the beige label Z-150 isn't even on your radar, and most of the rest are probably similarly functional to anything else that cloned the AT protocol.

Offline ivanthetolerable

  • Posts: 17
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #30 on: Thu, 12 March 2020, 10:27:53 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #31 on: Thu, 12 March 2020, 10:32:23 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Which controller are you using? Which resistors, if any? How are you flashing? I wonder if I should pick up an authentic Teensy or two. I don't own an F122, but you would think the protocol would be be close enough to the standard XT.

That's a great username by the way, and a cool F122. Is that a GBC LCD cover/sticker? I'm using one of those same Optiplexes as an HTPC at the moment.
« Last Edit: Thu, 12 March 2020, 10:36:04 by Maledicted »

Offline ivanthetolerable

  • Posts: 17
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #32 on: Thu, 12 March 2020, 10:55:47 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Which controller are you using? Which resistors, if any? How are you flashing? I wonder if I should pick up an authentic Teensy or two. I don't own an F122, but you would think the protocol would be be close enough to the standard XT.

That's a great username by the way, and a cool F122. Is that a GBC LCD cover/sticker? I'm using one of those same Optiplexes as an HTPC at the moment.

I'm just using a standard Teensy 2.0. I tried it on my F XT with no issues too.

The GBC is the cover I took off when I replaced the screen with a backlight LCD and glass protector. Didn't want to throw it out.. This Optiplex is just a standard work machine.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #33 on: Thu, 12 March 2020, 12:17:07 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Which controller are you using? Which resistors, if any? How are you flashing? I wonder if I should pick up an authentic Teensy or two. I don't own an F122, but you would think the protocol would be be close enough to the standard XT.

That's a great username by the way, and a cool F122. Is that a GBC LCD cover/sticker? I'm using one of those same Optiplexes as an HTPC at the moment.

I'm just using a standard Teensy 2.0. I tried it on my F XT with no issues too.

The GBC is the cover I took off when I replaced the screen with a backlight LCD and glass protector. Didn't want to throw it out.. This Optiplex is just a standard work machine.

Resistor configuration? What steps did you follow to flash? I really should get a Teensy then and see if the problem is with my using Pro Micros.

Those backlight mods are tempting. I still have my atomic purple GBC I got for Pokemon Red version when it came out.

Sure, it is just a standard work machine, which is nice. Business class desktops last literally forever, and even LGA 1155 i3s are more than enough for 99% of all tasks. Nice and easy to take apart and work in too.

Offline ivanthetolerable

  • Posts: 17
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #34 on: Thu, 12 March 2020, 13:01:52 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Which controller are you using? Which resistors, if any? How are you flashing? I wonder if I should pick up an authentic Teensy or two. I don't own an F122, but you would think the protocol would be be close enough to the standard XT.

That's a great username by the way, and a cool F122. Is that a GBC LCD cover/sticker? I'm using one of those same Optiplexes as an HTPC at the moment.

I'm just using a standard Teensy 2.0. I tried it on my F XT with no issues too.

The GBC is the cover I took off when I replaced the screen with a backlight LCD and glass protector. Didn't want to throw it out.. This Optiplex is just a standard work machine.

Resistor configuration? What steps did you follow to flash? I really should get a Teensy then and see if the problem is with my using Pro Micros.

Those backlight mods are tempting. I still have my atomic purple GBC I got for Pokemon Red version when it came out.

Sure, it is just a standard work machine, which is nice. Business class desktops last literally forever, and even LGA 1155 i3s are more than enough for 99% of all tasks. Nice and easy to take apart and work in too.

I didn't use any resisters. Just a stanard Teensy and this guide. Before I used this https://geekhack.org/index.php?topic=17458.0

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #35 on: Thu, 12 March 2020, 17:35:59 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Which controller are you using? Which resistors, if any? How are you flashing? I wonder if I should pick up an authentic Teensy or two. I don't own an F122, but you would think the protocol would be be close enough to the standard XT.

That's a great username by the way, and a cool F122. Is that a GBC LCD cover/sticker? I'm using one of those same Optiplexes as an HTPC at the moment.

I'm just using a standard Teensy 2.0. I tried it on my F XT with no issues too.

The GBC is the cover I took off when I replaced the screen with a backlight LCD and glass protector. Didn't want to throw it out.. This Optiplex is just a standard work machine.

ivanthetolerable,
Great. Thank you.
Can you share model nubmer for your  "F XT" and "F122" so that I'll update first post?


Maledicted,
I believe *decent* ProMicro should work and the converter doesn't require Teensy.

EDIT: ProMicro has several variants of pcb design and there are many clones by small vendors in the market, though. I believe SparkFun's should work at least.
https://www.sparkfun.com/products/12640

But we may miss something, I'll get ProMicro to test this firmware. What is source(site or URL) of your ProMicro so that I get same as yours?
Also can you post some pics of your ProMicro and its wiring, I can find something perhaps?



And I'll work on TMK keymap editor for this converter once I can believe it works well after getting some more reports.
« Last Edit: Thu, 12 March 2020, 17:52:39 by hasu »

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #36 on: Fri, 13 March 2020, 07:29:17 »
I believe I have only used these, which have worked perfectly with Soarer's firmware:

KeeYees Pro Micro ATmega32U4 5V 16MHz Micro USB Development Board Module Microcontroller for Arduino IDE Leonardo Bootloader (Pack of 3pcs)

I can get pictures after work today. They shouldn't look out of the ordinary though. Wouldn't surprise me if it is just the controllers, they're pretty cheap. lol

I did order some real Teensy 2.0s, with headers. I already have some Dupont wires lying around, so I might try to set up something modular, but semi-permanent for this stuff. Could even swap different controllers in then too I suppose. Might eventually pick up one of those Sparkfun Pro Micros to try too.

Do you ever plan on supporting the beige label Zenith Z-150. It doesn't work with the vast majority of computers with ps/2 ports, and doesn't work at all with Soarer's firmware. I found only one computer, out of 4 or 5 I tested, that had 100% function with it.
« Last Edit: Fri, 13 March 2020, 08:34:48 by Maledicted »

Offline ivanthetolerable

  • Posts: 17
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #37 on: Fri, 13 March 2020, 07:54:04 »
Currently working on my F122. Using AutoHotkey to create layers of macros

Which controller are you using? Which resistors, if any? How are you flashing? I wonder if I should pick up an authentic Teensy or two. I don't own an F122, but you would think the protocol would be be close enough to the standard XT.

That's a great username by the way, and a cool F122. Is that a GBC LCD cover/sticker? I'm using one of those same Optiplexes as an HTPC at the moment.

I'm just using a standard Teensy 2.0. I tried it on my F XT with no issues too.

The GBC is the cover I took off when I replaced the screen with a backlight LCD and glass protector. Didn't want to throw it out.. This Optiplex is just a standard work machine.

ivanthetolerable,
Great. Thank you.
Can you share model nubmer for your  "F XT" and "F122" so that I'll update first post?


Maledicted,
I believe *decent* ProMicro should work and the converter doesn't require Teensy.

EDIT: ProMicro has several variants of pcb design and there are many clones by small vendors in the market, though. I believe SparkFun's should work at least.
https://www.sparkfun.com/products/12640

But we may miss something, I'll get ProMicro to test this firmware. What is source(site or URL) of your ProMicro so that I get same as yours?
Also can you post some pics of your ProMicro and its wiring, I can find something perhaps?



And I'll work on TMK keymap editor for this converter once I can believe it works well after getting some more reports.

F XT is 4584656
f 122 is 6110344

Offline ivanthetolerable

  • Posts: 17
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #38 on: Wed, 18 March 2020, 12:20:59 »
One thing I have noticed while using this firmware for the last week is that it often up and doesn't detect my keypresses, or will randomly send a different key. This doesn't happen on my other Model F using Soarers firmware on the same Teensy. Has anyone else noticed this?

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #39 on: Wed, 18 March 2020, 12:28:57 »
I think I posted about that earlier on, in the few cases in which I had the F XT ... somewhat functional, but that was with a generic Chinesium Pro Micro as well. At some point my F AT and Leading Edge DC-2014 were working perfectly, but I certainly didn't use them as long as you have continuously. I do have some Teensies now. I do still plan to flash one and see how that goes with my boards. I just haven't gotten around to it.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #40 on: Thu, 19 March 2020, 01:05:29 »
ivanthetolerable,
The issue happens on F XT only, or both XT and 122?
Does your converter has pull up resistors? This is not root cause  probably but it may help a bit.

Maledicted,
Good to hear that It works with F AT now, it is what I expected with my fix.



I think AT protocol(AT, PS/2 and Terminal keyoards) part works as expected now.

As for XT protocol the converter has had serious problem with IBM XT keyboard.
To support various XT keyobards including IBM XT and clones, the converter should read signal(start bit) at exact timing, within a few micro second.
I guess USB interrupt can prevent this, perhaps. I'll look into.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #41 on: Thu, 19 March 2020, 08:11:20 »
ivanthetolerable,
The issue happens on F XT only, or both XT and 122?
Does your converter has pull up resistors? This is not root cause  probably but it may help a bit.

Maledicted,
Good to hear that It works with F AT now, it is what I expected with my fix.



I think AT protocol(AT, PS/2 and Terminal keyoards) part works as expected now.

As for XT protocol the converter has had serious problem with IBM XT keyboard.
To support various XT keyobards including IBM XT and clones, the converter should read signal(start bit) at exact timing, within a few micro second.
I guess USB interrupt can prevent this, perhaps. I'll look into.

I actually haven't tested it again since I bricked that one Pro Micro. I just know the F AT did work at some point, conditionally, with the old firmware. I need to rig up one of those Teensies still.

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #42 on: Sun, 22 March 2020, 07:38:05 »
ivanthetolerable, Maledicted or someone else,
Could you try new firmware with IBM XT keyboard?

With the latest fix I removed USB related intterupt routine that can interfere XT signal handling.

https://raw.githubusercontent.com/tmk/tmk_keyboard/master/converter/ibmpc_usb/binary/ibmpc_usb_atmega32u4.hex

hid_listen output would be helpful for me when you find glitch with the converter.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #43 on: Mon, 23 March 2020, 18:57:20 »
ivanthetolerable, Maledicted or someone else,
Could you try new firmware with IBM XT keyboard?

With the latest fix I removed USB related intterupt routine that can interfere XT signal handling.

https://raw.githubusercontent.com/tmk/tmk_keyboard/master/converter/ibmpc_usb/binary/ibmpc_usb_atmega32u4.hex

hid_listen output would be helpful for me when you find glitch with the converter.

I finally stopped being lazy and made a completely modular setup including a Teensy 2.0. Through the use of a lot of dupont connectors and some quick and dirty modification of a breadboard, I can quickly connect or disconnect the XT reset wire and quickly connect or disconnect the pull-up resistors to clock and data, and even swap the Teensy out entirely should I brick it.

The IBM F XT seemed to work immediately. For whatever reason, the IBM F AT did not work at all until I pulled the resistors and reset line. After I reconnected the reset line, it started working. I added the resistors back in, and it continued to work. That could (maybe) just come down to how impermanent my setup is. The DC-2014 seemed to have perfect function immediately as well. Alas, nothing works with my beige label Zenith Z-150 still. I figured maybe using an authentic Teensy had a shot, but it doesn't work with TMK or Soarer's firmware.

I am typing this from my F XT at this very moment. Are there any other weird old boards you would like tested in particular?

I did save the results of HID_listen when pressing the a, s, d, and f keys when the F AT keyboard wasn't working, if that would at all be helpful. You'll find it attached.
« Last Edit: Mon, 23 March 2020, 19:53:18 by Maledicted »

Offline hasu

  • Thread Starter
  • Posts: 3471
  • Location: Tokyo, Japan
  • @tmk
    • tmk keyboard firmware project
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #44 on: Tue, 24 March 2020, 04:36:38 »
Thanks for your support!

The IBM F XT seemed to work immediately.

It will have to be tested on F XT for long period to check the issue reported by ivanthetolerable, which may be intermittent.
https://geekhack.org/index.php?action=profile;u=76741



Quote
For whatever reason, the IBM F AT did not work at all until I pulled the resistors and reset line. After I reconnected the reset line, it started working. I added the resistors back in, and it continued to work. That could (maybe) just come down to how impermanent my setup is.

Let me know if you find something on this.



Quote
The DC-2014 seemed to have perfect function immediately as well.
Great.



Quote
Alas, nothing works with my beige label Zenith Z-150 still. I figured maybe using an authentic Teensy had a shot, but it doesn't work with TMK or Soarer's firmware.


Doesn't hid_listen show anything?

Beige label  Zenith Z-150 really looks odd for AT keyboard according to people's experiences.
https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-AT-Keyboard-Protocol#whitebeige-label-zenith-z-150

Debugging this without seeing its actual signals would be really difficult. It would be helpful if you can try Soarer's Logic Analyzer on the board.
https://deskthority.net/viewtopic.php?f=7&t=4567



Quote
I am typing this from my F XT at this very moment. Are there any other weird old boards you would like tested in particular?

Black label Z-150 XT keyboard.
I'll post in deskthority thread some later if anyone doesn't  appear with it here.

https://deskthority.net/viewtopic.php?f=2&t=12972&start=30
« Last Edit: Wed, 29 April 2020, 02:26:13 by hasu »

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #45 on: Tue, 24 March 2020, 19:20:24 »
Thanks for your support!

I have said it before, but any time hasu. You're doing a lot of really great things for this community.

The IBM F XT seemed to work immediately.

It will have to be tested on F XT for long period to check the issue reported by ivanthetolerable, which may be intermittent.
https://geekhack.org/index.php?action=profile;u=76741

Oh man, you mean I have to try to type with the XT format for an extended period? I'll try.

For whatever reason, the IBM F AT did not work at all until I pulled the resistors and reset line. After I reconnected the reset line, it started working. I added the resistors back in, and it continued to work. That could (maybe) just come down to how impermanent my setup is.

Let me know if you find something on this.


I'll keep messing with it and see if I can reproduce it. I did try once more just now and it seems to work normally, so maybe one of the dupont connectors was just loose.

Alas, nothing works with my beige label Zenith Z-150 still. I figured maybe using an authentic Teensy had a shot, but it doesn't work with TMK or Soarer's firmware.


Doesn't hid_listen show anything?

Beige label  Zenith Z-150 really looks odd for AT keyboard according to people's experiences.
https://github.com/tmk/tmk_keyboard/wiki/IBM-PC-AT-Keyboard-Protocol/_edit#whitebeige-label-zenith-z-150

Debugging this without seeing its actual signals would be really difficult. It would be helpful if you can try Soarer's Logic Analyzer on the board.
https://deskthority.net/viewtopic.php?f=7&t=4567

Well, I flashed the proper firmware and attempted to run scla. It errored out just saying that MFC71.dll was missing. This is apparently a file used by Visual Studio 2003, which is, by now, ancient. The internet suggests that Internet Explorer also uses it, which seems to still be functional on my Windows 10 system, but even installing the latest community release of Visual Studio doesn't seem to resolve that error. I'm hesitant to start going around and finding VS 2003 installers, or manually downloading the dll and throwing it into System 32. Any ideas? I might have a Windows 7 system somewhere still to try with, otherwise I could even dig out my first desktop computer. I'm pretty sure that thing has an IDE/PATA hard drive in it with Windows XP installed on it. lol


I am typing this from my F XT at this very moment. Are there any other weird old boards you would like tested in particular?

Black label Z-150 XT keyboard.
I'll post in deskthority thread some later if anyone doesn't  appear with it here.

https://deskthority.net/viewtopic.php?f=2&t=12972&start=30

I don't have one of those, unfortunately. There was a guy a while back asking for help getting his working in another thread. It sounded like he eventually gave up instead of taking the effort to properly configure a controller with TMK. I do wish he would have given the board to somebody that would cooperate with you. Maybe I could find him and ask if he'll sell.

Offline Rayndalf

  • Posts: 472
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #46 on: Tue, 31 March 2020, 18:19:45 »
I recently picked up a K151L on ebay (previously I'd bought what was left of one after a harvesting on Mechmarket)

I thought about just handwiring both, but after cleaning the complete one I found it has in switch diodes, so I'm eager to convert it (and get a new badge made). I'll give this convertor a shot and see (just need to buy a female DIN plug).

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #47 on: Wed, 01 April 2020, 08:35:39 »
I recently picked up a K151L on ebay (previously I'd bought what was left of one after a harvesting on Mechmarket)

I thought about just handwiring both, but after cleaning the complete one I found it has in switch diodes, so I'm eager to convert it (and get a new badge made). I'll give this convertor a shot and see (just need to buy a female DIN plug).

Take a good look at the solder pads for the switches on the one somebody harvested the switches from and make sure they're intact if you plan on using it. Literally the only board I have ever lifted a pad on was a K151L, and I have been doing soldering for years, and have a proper temperature-controlled iron. Those PCBs are really shoddy, as much as I love those boards. They are AT/XT switchable, so you should be able to just use a 5-pin din to ps2 adapter with a modern computer, though I imagine that TMK will work (it has worked with every AT clone I have tried, besides the beige label Zenith Z-150), and I know that Soarer's firmware will work with them.

With the one I did a switch swap on, I ended up having to replace most of the diodes because the legs on the originals had rusted. With the box jades I chose to replace the "vintage" blacks, the diodes fit nicely within the switch housing.

Offline Rayndalf

  • Posts: 472
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #48 on: Wed, 01 April 2020, 14:00:37 »
The one I got in parts may have had a toggle switch for protocol, but the new one didn't work with a passive 5 pin Din to 6 pin mini Din + active ps/2 to usb converter which works with my other boards, so either its XT only (as the label somewhat suggests) or there is already a lifted pad.

Unitek/Unitech is a strange company who recycled model numbers and changed their logo to most closely match the particular product they were cloning (they started cloning Macs and now they make hearing aids?), so nothing would surprise me.

Offline Maledicted

  • Posts: 2164
  • Location: Wisconsin, United States
Re: [REQUEST FOR TEST] TMK IBM PC Keyboard Converter
« Reply #49 on: Wed, 01 April 2020, 14:35:04 »
The one I got in parts may have had a toggle switch for protocol, but the new one didn't work with a passive 5 pin Din to 6 pin mini Din + active ps/2 to usb converter which works with my other boards, so either its XT only (as the label somewhat suggests) or there is already a lifted pad.

Unitek/Unitech is a strange company who recycled model numbers and changed their logo to most closely match the particular product they were cloning (they started cloning Macs and now they make hearing aids?), so nothing would surprise me.

You have one with no AT/XT switch? The chassis and layout are identical otherwise? I didn't know they made any XT-only ones. You learn something every day. I fixed the pad I lifted with a scrap bit of the excess cut from the diode legs that I soldered between the trace and the switch leg, just something to look out for.

My K151L did work with TMK in XT mode, so I imagine that your oddball one will too? I guess we'll see.