您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
此仓库已存档。您可以查看文件和克隆,但不能推送或创建工单/合并请求。
tmk 75ca495c01 ibm4704_usb: Fix scan code range for Alps 102-key 8 年前
..
Makefile ibm4704_usb: Add Makefiles for TMK Converter 8 年前
Makefile.tmk_rev1 ibm4704_usb: Add Makefiles for TMK Converter 8 年前
Makefile.tmk_rev2 ibm4704_usb: Add Makefiles for TMK Converter 8 年前
README.md ibm4704_usb: Fix README.md 8 年前
config.h ibm4704_usb: Fix protocol handling 8 年前
ibm4704.txt ibm4704_usb: Fix scan code range for Alps 102-key 8 年前
keymap_50key.c ibm4704_usb: Add keymaps for 107 and 50-key 9 年前
keymap_alps102key.c ibm4704: Add keymap for Alps 102-key 8 年前
keymap_common.c Change key_t to keypos_t 9 年前
keymap_common.h ibm4704: Add keymap for Alps models 8 年前
keymap_hasu.c ibm4704_usb: Add keymaps for 107 and 50-key 9 年前
keymap_plain.c ibm4704_usb: Add keymaps for 107 and 50-key 9 年前
led.c Add Initial files of 4704_usb 10 年前
matrix.c ibm4704_usb: Fix scan code range for Alps 102-key 8 年前

README.md

IBM 4704 to USB keyboard converter

This firmware converts IBM 4704 keyboard protocol to USB HID.

Keyboard initialization process takes a few seconds at start up. During that you will hear buzzer from the keyboard. You need to plug USB cable after hooking up your keyboard to the converter.

Update

  • 2015/09/07 Added keymap for Alps 102-key. Thanks, tai @ geekhack!
  • 2015/05/05 Added keymaps for 107-key, 77-key and 50-key. Thanks, orihalcon @ geekhack!
  • 2015/05/19 Fixed a protocol handling bug.

Supported Keyboard

IBM capacitive switch models:

Alps switch(vintage Green) models:

Connector

Keyboard Plug from front:

DSUB-9
-------------
\ N 2 3 4 5 /
 \ N N N N /
  ---------
2   GND
3   VCC 5V
4   DATA
5   CLOCK
N   No connection/No pin.

Connection

In case of using ATMega32U4/U2

  1. Supply power with VCC and GND.
  2. Connect CLOCK to PD1 and DATA to PD0. You can change pin with config.h.
  3. Optionally you may need pull-up register. 1KOhm probably work.

TMK Converter can supports IBM 4704. https://github.com/tmk/keyboard_converter

Build Firmware

Just run make:

$ make -f <makefile>

For TMK Converter rev.1 use Makefile.tmk_rev1 as makefile:

$ make -f Makefile.tmk_rev1

For TMK Converter rev.2 use Makefile.tmk_rev2 as makefile:

$ make -f Makefile.tmk_rev2

To select keymap:

$ make -f <makefile> KEYMAP=[plain|...]

To indentify your TMK Converter revision see this.

Keymap

Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named keymap_<name>.c and see keymap document(you can find in top README.md) and existent keymap files.

Use KEYMAP_ALPS102() to define your keymap for Alps models.