Author Topic: Revive Old MX clone for first mechkeys  (Read 2059 times)

0 Members and 1 Guest are viewing this topic.

Offline meanagray

  • Thread Starter
  • Posts: 12
Revive Old MX clone for first mechkeys
« on: Fri, 24 November 2017, 06:23:55 »
Hello all. A bit of intro. Been a geek since past decade, went into arduino half a decade back, been done with it 3-4 years lately. Then, I discovered custom DIY keyboards around a year back, the likes of HHKB, pokr, Leopold. Since then I have been obsessing over the cool keys and caps on reddit, here and all around across the invisible data streams. Couldn't afford even a decent piece of such gear, so that's what I was left to do with.

However, on a recent trip to a larger city,  I found up a popular indigenously produced MX clone 104 keyboard, at a flea market.



That, retail goes for around $40. I picked it for around $1.24. Just sans the spacebar. Plugged into my PC, keystrokes were missing even at my noob typing speeds. Seems like the micro-controller is bust. The think is built like a tank although heavy duty plastic. The keycaps are double shot. No legend fades on any one. They ain't backlit but who cares for a buck fifty.

So here's my plan & this where I'l request the chops of this community. ;D
1. Throw out the exisiting controller & map the key matrix lines.
2. Replace the controller with a standard arduino for now & a suitable keyboard firmware.
3. Put a DIP switch for a couple layouts(DVORAK, Colemak).
        Test it, wired.
4. Make it battery powered & wireless, with maybe a nrf BT/BLE chip.
5. Check u-controller limitations.
6. Switch to 2560 or teensy or a tiny ARM if need be.
7. Understand to differentiate the different key mapping methods, which flys by, way above my head right now.  :eek:
8. Get the spacebar. :thumb:

For an overview to all, hasu's work is pretty darn awesome. I am apt with basic hardware but not so competent with libraries, etc. i.e  the software side of things. I certainly haven't invested weeks of time to understand everything. The different aspects are confusing me & therefore suitable boards and firmwares for my project couldn't be found. At least what I gather is, I definitely don't need a converter kit or that sorta thing.

Schematic files would be absolute essentials for prototyping, since as you all can figure out, my time isn't worth any decent currency yet; I would have afforded a complete kit. :cool:

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Revive Old MX clone for first mechkeys
« Reply #1 on: Sat, 25 November 2017, 15:37:37 »
yep, step 1 is to desolder the controller and put a socket with teensy++ in its place, then map the matrix to your favorite keyboard layout. You will have to cut a few traces to "move" the power and ground lines to the right place on the new microcontroller. looks like pin 3 on the bottom right is either ground or power (you can tell by checking which side of the LED it goes to), so that will have to be moved. The other power trace looks like it goes to pin 40 (top left on the back)

I only recommended teensy++ as it has a lot of IO for that 40-pin chip that's there already. You can get by with a smaller IC like standard teensy, but you will need expanders to deal with all the columns. You'll know for sure what' will work once you get the matrix traced out.

Overall it's a great project but you will put more money into it that it will take to buy a new keyboard, so make sure you are very happy with the switches and build quality before you start! Otherwise it will be better to start with a different donor board.

Spacebar will likely take normal costar stabilizer inserts.

I dig the reversed bottom row!

schematic will pretty much be the pinout of your IC, put all the IO pins into the rows / columns and make sure the power is going to the right pin. up to you if you want to reuse the connector that's there, or just wire the usb end of the teensy out the case. But pretty much the kb matrix is the whole schematic. If you have bluetooth, it will communicate with your controller on a standard digital interface, perhaps SPI, so you would take some unused IO pins and wire those to the BT. Then in the firmware, you would just set those pins to communicate with the BT.

Good luck!