Hello to all keyboard enthusiast here on the Fédiverse.
For the longest time, I have used a TypeMatrix 2030 as my daily driver, most of which was spent daydreaming of finding a close approximation that would be mechanical. Failing to find one, I procrastinated in researching how I could build my own, which was an error.
Now, my good old TypeMatrix is showing signs of dying, and I still don’t have even started on its mechanical replacement. So, I would like help and counsel on how to make one.
I don’t need it to be identical, (I don’t need the rightmost column on the actual TypeMatrix, for example) but I DO need the middle column with “del”, “backspace” and “enter” keys.
Would anyone be willing to help me, please?
Just looking at the TypeMatrix for the first time. Looks like a pretty interesting layout. Manufacturing a mechanical TM(TypeMatrix) clone is likely going to be pretty difficult, but becomes more possible the more you diverge from the design.
At a high level though, the main issues I see at first glance is that TM is using laptop switches, custom legends, and 1/2 size function row keys.
The only analogue to laptop switches in the mechanical keyboard world is Kalih X switches, but they’re hard to come by and a bit more difficult to design for, but they just might work with the TM keycaps, but don’t quote me on that.
Choc switches are possible, but you’re not going to get legends (the letters and symbols on the keycaps) unless you have them custom made, which is next to impossible if using traditional methods. Same story with full size MX switches. You might be able to fill out the alpha-numerics, but the secondary legends in blue aren’t going to be there, not to mention the vertical shift, back space, enter, and control.
As for the 1/2 size function row, you’ll have to compromise and go with full 1u keys because there aren’t any switches out there that will fit in a 0.5u size, not to mention lack of keycaps. And speaking of odd-sized keycaps, you might run into issues with Choc keycaps for the spacebar in particular, as I don’t think anyone manufactures a 5u spacebar in choc form factor, and the 2u shift, enter, and control keys will need choc stabilizers, which are pretty hard to find IIRC.
So, with that all said, these are the compromises you’re probably going to have to make to get a completed keyboard:
There’s a few routes you can go down to get his done.
Pay someone else to do it.
Learn how to do it yourself.
If you take route 1, it’s going to be much more costly than route 2 most likely, but far less time and effort invested to get a working product. I’m sure there are plenty of people who have designed their own PCB/Keyboard that would be willing to design yours for the right price.
If you take route 2 then you’re going to be putting a lot of time into learning different software packages, how a keyboard works at the circuit level, and how to solder at the very least; but you’ll have done all the work yourself, which is pretty gratifying IMO.
A good place to start learning is “ergogen”. It’s like a configuration language and accompanying software for designing keyboards programmatically. It’s not especially complicated and has plenty of resources on YouTube and in written form. There are online viewers that make it easy to visualize the layout you’re configuring, and other projects on Github that can take ergogen output files and convert those to pcb design files that are ready to send off to manufacturing, 3d printed case files, and and interactive BOM (bill of materials) that can help you when it comes time to solder the switches, controller, diodes, etc.
First thigs first: Thank you for your help.
Don’t care much about the labels. What you see on the picture is the BÉPO keymap, (A Dvorak for the French language) which is how my keyboard is mapped. But what is printed on my actual keyboard is AZERTY, which is what most French peoples use instead of QWERTY.
No problem, glad to help point you in a useful direction. If you’re not especially concerned with labels, you might be able to get around needing to have a blank set of keycaps laser etched or something like that.
I also got bored yesterday and had your idea of a TypeMatrix 2030 kicking around my head, so I decided to mock-up a layout similar to what I described in the previous post, and created a Github project you can use as a jumping off point if you want to proceed that direction.
https://github.com/pyunramura/mechamatrix2030
Keep in mind, the layout probably needs some more thought and the pcb generation part of it has not even been started, but it should be possible to get a completed board with some learning, some funds, and some work.
One of the major issues I didn’t think of before is the fact that the keyboard has quite a lot of keys, so many in fact that the matrix is too large for a standard pro-micro type microcontroller. The keyboard has 7 rows and 15 columns which needs 22 pins, which is unfortunately 4 too many for a pro-micro. There are other microcontrollers with a similar footprint that might be suitable instead though. Elite-C, Blackpill, and some of the RP2040 boards come to mind.
Thanks for your great work.
Concerning the lacks of pin on some controllers, the function row could always be folded in the numbers row and made acessible via a function key of some sort.
We could also make it so pressig the two shift buttons simultaneously is how you lock into upper-case letters. (Another double-shift to unlock.) That would let us remove the rightmost colum too. (I only need the upper-case lock from it, and I don’t need it there specifically.)
I haven’t tried it before but I’m almost certain it’s possible to do with QMK or ZMK firmwares.
As for the lack of pins generally, the easiest thing to do would be to use a microcontroller with more pins, but that may bring more challenges when designing the pcb depending on the availability of good component footprints.
The most commonly used footprint is for the pro-micro though, but you’d end up needing to cut 4 rows/columns off of the board to fit within its pin constraints, though I do think there is a modification for pro-micros that can give you two more pins, which could technically work if you cut off the rightmost column and the function row.
If you’re willing to get rid of just the rightmost row you would be able to use something like the nice!nano since it has 21 gpio pins. It would become optionally wireless in that case as well.
If you didn’t want to cut down the board at all, could also go with something like an Elite Pi, which has a similar footprint to the pro-micro except with an extra 5 pins along the bottom edge, as it has the same footprint as the elite-c.
Quite a few options, and I’m not sure if you have a preference for wired vs. wireless or parts availability where you are, so those would likely influence what you decide to go with.
I prefer wired personally. As for product availability, I live in France, so it depends on what is easily available in my country.
Since you’re in EU you have quite a few options for vendors. Here is a good list.
I looked through most of these vendors before and it’s unlikely that you’ll find everything you need to build a fully custom keyboard from a single vendor, but with 2 or more you should be able to source all the pieces you need.
Some vendors that have a decent selection:
Another option of you don’t mind the potentially long shipping time is to buy all the components from Aliexpress. They will likely have an expansive selection and lower price compared with EU retailers, but you may or may not end up paying tax, and the shipping time will be longer on everything.
I managed to figure out an ugly way of getting the keyboard matrix down to 20 pins, but a much better option to using a pro-micro would be to go with an Elite-Pi or Helios Microcontroller Since it has 23 GPIO pins, and there won’t be a hacky workaround like with the pro-micro.
One thing I forgot to mention is key switch preference, the two main types are MX (high profile) and Choc (low profile). MX switches are both easier to find and have much larger variety of both switches and keycaps. Choc is nice because it has a lower profile similar to laptop keyboards, but the selection of switches and keycaps are much more limited. There are other low profile switch types like Choc mini (PG1232), Choc V2(PG1353), and Notebook X(PG1425) switches, but they’re even harder to source than the Choc V1(PG1350).