Buckling springs

Disclaimer - there's no running in this post, at all, it's entirely about a keyboard. I'm currently on crutches and hoping that at some point my ankle will fix itself.
(16 days. and counting)

My name is

My name is Ivor... and I'm a mechkonic*...
[mechkonic - noun - a person suffering an addiction to mechanical keyboards]**

All will become clear...

We have a problem

I've got a  thing about keyboards. I use them a lot. I've used them for... (counts of fingers, toes, then the cats toes) approximately 43 years. So. I've used an awful lot of different types (and a lot of awful types) I do recall the Dragon32 was a particular favourite at one point. When I started off, I *did* initially use a Model M, but then forgot all about it.

I've retrofitted better/decent keyboards into multiple of my Thinkpads. 😁

Thinkpad T430 with a decent keyboard.

 (I considered buying a special "gaming" laptop once just because they'd installed a full mechanical Cherry keyboard in it, but thankfully sanity prevailed)

More than enough Thinkpads.

Ok I admit. I *may* also have a Thinkpad problem.

Old Sun workstation keyboard. lots. and lots of keys.

I used/worked with a Sun keyboard for quite a while and that was one of my favourites, mainly due to the excessive number of available keys on it. It wasn't mechanical, but I thought it was the best membrane keyboard I used at the time, and KEYS!! I mean.. it's got a HELP key!
Actually, I might take that into work since the one in the office is an truly miserable device.


When I switched to PC's I decided I needed to get it working.... cue, Sun keyboard connector to first a PS2 connector, then, USB adaptor, and I stuck with that for a few years.

DIY Sun to USB adaptor. I have no idea where the code is for this now. 🙁

Similarly, I've always thought I should find a way to connect my old folding Palm keyboard, but, well what's the point? and how much time/effort/expense would that entail? Still. that *would* be pretty cool.

Old Palm folding keyboard!

Actually I have a few weird and wonderful ones.... like this "Microwriter" the *future* of computer input devices.


Next up was a little fling with various chunky ergonomic keyboards, and then a steady series of Cherry keyboards...

The latest trusty tatty Cherry

I was very happy with these for some time, but then I happened upon the rather tasty 'Alps' keyed Matias Pro. 

The Matias has been good for years it has a lovely feel, but I kept browsing old IBM Model M and Model F keyboards, partly just an obsession/fascination/addiction to the underlying technology - Buckling springs! I mean even the name sounds awesome.

This is a key technology that was invented (perhaps you might say over engineered) at IBM and relies on the buckling of a spring to make the "click" feel and sound. See the  wikipedia page for pictures and details... there are pages and pages about these on the internet.

The ModelF uses a "capacitive buckling spring" the spring buckles, makes a click and tips a "flipper" that results in a capacitance change sensed by the underlying board. This is just so incredibly cool. (Model M keyboards used the same spring technology, but with an underlying membrane that made an electrical contact when the flipper tipped.

Clearly. I *NEEDED* a ModelF, but there are a few troubles getting hold of one, these are 40+ years old. Firstly, most are US layout, which is irritating if you're used to an international layout *and* you frequently switch between machines. It's ok when "minor" keys move about (e.g. pageup/down/cursors etc all shuffle about on laptops) but when you often use "@" "#" and "\" as a developer, it's not ideal when they migrate to a completely different side (and hand) of the keyboard.

Secondly, the prices can be eye watering (ok let's just completely gloss over what I actually ended up spending here) but also they can be badly yellowed/faded and it's a lottery for what condition it's going to be in, and again you're spending big bucks for something electrical and mechanical that's over 40 years old.

Model F remastered

So then.... I came across the ModelF keyboard project - this is a (perhaps obsessive) project recreating the IBM Model F capacative "buckling spring" keyboard but built completely new.
I bought one immediately (ok after a few days of internal justification and wrestling) I doodled ideas for the spec I wanted, spent ages poring over the details and configuring the options I wanted and ordered....

Then waited.

and waited.

a year passes.. (I was aware of this when I ordered, knew it was bespoke, hand built and relied on parts being shipped by boat to the US from China) but still. it was a *little* bit longer than I expected.

but finally.... (actually first I got an email saying there were some quality issues with the colour I'd ordered would I be willing to switch for the next batch built, otherwise there'd be another delay. obviously I jumped at the chance)  a "shipped" email, 

A few days later (ok firstly, I followed the tracking to see it was stuck in customs, chased a bit, paid the charges) then it arrived! Followed a few days later by a letter telling my I had charges to pay 😄

The box!

The bits!

This whole next section might sound like grumbling, but it's not. I bought this knowing what I was getting in for, that it was an "enthusiast" project and I had read through and seen the forums, I was expecting hassle because I was expecting to want to tinker, hopefully any moans here just come across as "it's great, but this bit could be better"

Firstly.... putting it together and fitting the keys. I'd ordered the solenoid, a few extra keys, an extra set of blue (just for a splash of colour really) spare "repair" parts and high feet (I like a  keyboard tilted).

There's an art to fitting the keys, but I'd read the manual and viewed the video, so no issues really, although several needed removing and refitting a few times until they activated correctly.

One of the initial layouts.

First grumble.... the case could do with *a little* bit more thought and the design with a few more "future proofing" mounting points. It would be nice if the inner keyboard had it's own mounts to screw onto separately rather than being sandwiched between the cases.

The solenoid - not really necessary, but if you're getting a custom keyboard, why not have a play..... So that's a "standard" option - but to fit it, it screws into one of the "extra feet" holes. So if you want to install the tall feet, you can't because the bolts are too long to fit both. Naturally I'd ordered both the long feet *and* the solenoid.

Not the end of the world and I *could* drill another hole, but it would be nice if "standard" mounting points had been included. Similarly the solenoid driver board has nothing to be attached to, it looks like it could be screwed next to the controller but there's no space and the wires aren't long enough. So that's now stuck in the middle with tape, the connectors come out of the top of it making it tall and chunky to fit, a 90 degree connector would be nicer... but even nicer... if it had a 90 degree socket instead, it could just clip directly onto the side of the controller.

Solenoid, driver and light wires.

I installed, removed and installed it a few times decided whether to keep it in or not, left it off for testing (it's a pain to take the case apart with it in) but finally left it in, although turned off until I can tune the sound to my taste.

Second grumble, there are various "how to videos" which are a still picture slideshow with overlaid text boxes, this is a terrible format/combination.

Layout with numbers, this caused me to decide to add the LEDs.

Current happy layout. So probably didn't need the LEDS. 😆

After building up the keyboard I couldn't decide on the final layout so switched back and forth a couple of times, and then got to the "ok I need to change the layout, what are the options" stage. This is a little frustrating, there are multiple firmwares, the guide mentions the one that's installed but configuring it requires rebuilding then re-flashing I was hoping for something a little more interactive. I tried it, I gave up.

I saw that there was another different option "via/vial" I tried the via option next, gave up on that so then switched to "vial" variant (https://deskthority.net/viewtopic.php?p=503356#p503356) (I would post a reply to that with feedback, but see grumble #3b later)

A long and winding thread

I think I have the correct/most up-to-date/recent version, but that's from looking at a link into a single 7700 message forum thread that spans 260 pages. *This* is the documentation/development/support forum, not the forum, that single post and its replies:

I haven't read the entire thread, but I've read most of it.

So, that's third grumble - several times during the build, testing, configuration, tweaking process I've had to trawl through that forum thread, there's a lot of information in there but since it's not curated, collated or edited knowing *which* is the most up-to-date or correct information is irritating. The website FAQ does have links into various posts in the thread for some issues, but again, *is* that the most recent information or was there a follow up post?

After using it for a couple of days I did have a problem.... the "f" key wasn't working correctly. It was slightly "slow" 😱
I type quickly, very quickly. If I typed "from" it would come out as "rfom" every time. I tried refitting the key a few times, removing the spring, adjusting the spring, stretching it, compressing it, replacing the spring, but nothing. There was mention of grounding, so re-tightened and checked everything.
I considered it might be a software problem, and switched between the three firmwares (from a windows machine since the default/easiest/standard/documented process is a windows tool and guide) but with no success.

I wanted to ask for some tips, but the project site states that any questions should be directed to that long forum post.... but I wasn't able to register on the forum (that's third grumble part two) I tried two email addresses, nothing, emailed the "forum administrator" as suggested on the site, nothing. Perhaps he's on vacation, but since that's the "official support area" not being able to ask questions is annoying. 

In the end I had an idea, I had the spare parts so removed all the keys, completely disassembled the case and the inner keyboard and replaced the "F" flipper/spring... reassembled and *sorted*!! that was it, there must have been some minor imperfection or difference with the original flipper. It would have passed testing and worked fine when tapped, so it's just one of those things, and unfortunately the sort of minor issue that having something so complex and mechanical can have.

Light me up

Next up, the keyboard doesn't have any lights for caps or numlock, the original didn't so this reproduction doesn't either. It would be nice if there was an option to say "can I have lights" or even just add holes for lights, or even markings for "drill here to install" your own.

I didn't think I'd miss them, but I found not knowing if num-lock was on was frustrating, (albeit I've now switched to a non-number layout so probably needn't have bothered!) several people had performed different modifications to add lights - the controller has connections for "caps and num" (fourth grumble - it would be nice if these were either on a separate socket or had separate solder pads) The modification I liked the look of was wiring LEDs in, but feeding them to sit behind the keys... (I really didn't trust myself to make elegant straight lined up holes in the metal case)

Documentation read through, wiring routed and soldered, and voila! lights.

LED's wired in.
CAPS lock.
Num lock
(yes I know I now have a scroll lock key there, sue me)

Now I'm happy with this. It's not absolutely perfect yet, I'm not happy with the default solenoid click, having seen a video showing "this is what it's like with a short throw" but without details on *how* to achieve that.

I suspect I'll need to change the firmware code which brings on the final grumble, the controller, it's an ATmega32u2 chip with a tiny memory and it's an absolute pain to develop for.... why not just slap an ARM chip in this thing, you could even drop a Raspberry Pi module inside it and have a nice development environment (I now see this mentioned as likely next step to use an RP2040 board, that would definitely be better)

I *think* I've got the development environment up and running (eventually) and have a built firmware, I haven't tested it out yet, but can't work out what the solenoid code change would be yet anyway.

Regrets, I have a few...

I do regret not buying a few more different key-caps, I'll have to check what the postage is going to be for just one or two. I *thought* I wanted the split right shift, I think I'd prefer a longer one now, but I don't think that can be changed since the underlying barrels are in a different place to use a long key.


Hopefully this doesn't sound too negative overall though, so to re-balance.... this is an amazing product. The build quality is superb, the engineering is superb. The dedication to come up with this and push it through to production (to handle orders, building, logistics, shipping etc.) is impressive.

The issues mentioned are purely a symptom of this being a product from an enthusiast/community rather than the product of a large corporation, but also....

...importantly, you don't *need* to modify it, you don't *need* to worry about the firmware or configuration, as it arrives out of the box it will work exactly as you specified on your order.

But. I'm a hacker and a software developer. If I have something, I like to know I can reprogram it and fine tune it as I like.

The (currently) final layout I'm happy with....
(although I've just swapped the function key over to the left!)

You can never have too many input devices.
(the Matias is still there at the moment because it's got a USB hub inside!)

Cara complained I hadn't showcased her magnificent WASD, so here it is in its full technicolour glory.

Both quiet (cherry red) and LOUD at the same time.

To be continued

Now I'm (almost) happy I've settled on a setup and layout I like, when I have time, I'll spend some time playing with the firmware (now that I've managed to build it) and work out how to tweak that solenoid.


I finally got around to working out the right solenoid value change I needed and how to change the firmware to alter the (now no longer needed) num lock light to show function layer. Video below... 

*almost* happy with the new keys layout. I've now split the backspace for a reverse and forward delete, have two "function" keys at on the lower row to make F key selection a one handed option, still undecided on the two keys around the arrow pad.. Started with "home and end", then switched to "escape and newline"... now thinking "copy and paste" might be handy...
once I'm *finally* happy I'll see about getting some extra keycaps.


Popular posts from this blog

seven month update

Tracking running Part #2

back from the brink