Skip to content
Ramon Poca edited this page Apr 5, 2018 · 1 revision

PS/2 to Adafruit Bluefruit Feather 32u4 adapter

Bill of Materials

  • A PS/2 protocol keyboard (DIN or miniDIN) connector.
  • An Adafruit Bluefruit Feather 32u4
  • A 5V Power Boost (most keyboards work at 5V, while the feather works at 3.3). e.g. https://www.adafruit.com/product/1903
  • A Lithium-ion battery (capacity is up to you, 3.7V, will plug to the feather).
  • Cables, soldering iron, solder, snot gun, etc.

Construction

  • Open up the keyboard. Unplug or desolder the PS/2 connector cable. If you are lucky, the board/connector might have the reference letters: V(oltage), G(round), C(lock) and D(ata).
  • Connect Clock(PD1) and Data(PD0) to pins labelled 2(SDA/PD1) and 3(SCL/PD0).
  • Connect the 3V output of the Bluefruit (labelled 3V, second from the usb-top-left) to the positive input of the powerboost.
  • Connect the GND pin of the Bluefruit to the negative powerboost input pin.
  • Connect the positive output (5V) of the powerboost to the keyboard V(oltage) pin.
  • Connect the negative output (GND) of the powerboost to the keyboard G(round) pin.

You can plug the battery to the bluefruit, but for starters you can plug the USB cable and see if it boots and the keyboard reacts. Check the keyboard is getting 5V between V(oltage) and G(round).

Flashing

  • You will need a build environment (ATmel AVR Toolchain). See https://github.com/tmk/tmk_keyboard/blob/master/tmk_core/doc/build.md for indications.
    • On MacOS you can use Homebrew and install the avr-binutils, avr-gcc, avr-gdb, avrdude packages.
  • Clone this repo.
  • cd tmk_keyboard/converter/ps2_bluefruitle
  • Execute make. That will build ps2_bluefruit.elf
  • Flash this file into the Bluefruit:
    • On Mac or Linux, plug the bluefruit and find the device name (e.g. /dev/cu.usbmodem1411 or /dev/tty.ACM0 or whatever).
    • Edit the Makefile, and replace AVRDUDE_PORT = /dev/cu.usbmodem1411 with the device.
    • Execute make program. This will flash the feather. Note that you might have to press the reset button on the board just before executing make program, so the board is receptive.
  • Find the keyboard via Bluetooth, connect to it and try!
  • Enjoy!