Matias controller and switch testing results

User avatar
Maledicted

14 Jan 2023, 07:10

This might be a long one so, if you have any interest in Matias boards and switches and/or their checkered history you might want to get something to drink and strap in.

TLDR:
Spoiler:
It appears that swapping a new Matias controller into an original (Forward switch) board with massive chatter issues can totally resolve them. i, 5, 0, tab, backspace, right alt, f1, f3, f6, f10 and scroll lock were initially the only keys that didn't chatter almost constantly with the very board I'm using to type this. The old controller also works 100% with newer Matias-branded switches, meaning there have been vast improvements in both hardware and software on these boards.
Backstory: Opinions of Matias have a rocky history. Chattering issues were reportedly rampant in both their own boards and in KBParadise's TKL boards that used their switches. Possible explanations for these issues include QC issues in the manufacture of the switches, QC in installation of the switches into the boards and plates or their design (contact pin alignment), excess lube in the tactile and linear variants of the switch and poorly-written firmwares (such as debounce parameters).

Matias has released multiple revisions of their keyboards, and their switches have long been manufactured to their own specifications by manufacturers such as Gaote (Outemu), with clear housings instead of opaque ones. As time has passed, their reputation seems to have remained relatively unchanged in spite of this.

Reading reports of people with newer boards not having any problems, I started buying Matias boards and running the gauntlet with them. I have over a half dozen of mini pro variants and one of each of the switch types in recently-produced V80s and have put many hours of typing on most of them to see if all of the kinks are actually worked out. Even though I have shined the caps on quite a few of these boards, I haven't experienced any persistent chatter issues with them.

Knowing that Matias' reputation should really be restored, a while back, I bought an original Matias Tactile Pro with these much-maligned (at least in Matias boards) Forward SKBM switches:

Forward switch.jpg
Forward switch.jpg (1.16 MiB) Viewed 1278 times

I thought some testing with old and new boards and switches might shed some more definitive light on what has actually changed. I finally got around to doing some testing with the board, knowing that it was bound to have chatter issues. I found that literally every single key except for i, 5, 0, tab, backspace, right alt, f1, f3, f6, f10 and scroll lock would chatter almost every single time they were pressed.

Now, right off of the bat, we can eliminate excess lube as a (primary) cause for chatter. I opened one of the switches to verify that it was bone dry inside, just in case the board had been modified. What of the other popular myths?

I took the board apart and found that the controllers in even the oldest Tactile Pros are easily replaceable like the mini variants, although these ones do not have a helpful table printed on them to show you pads to solder resistors to to change the mapping based on location and/or operating system:

OG board and controler 1.jpg
OG board and controler 1.jpg (2.75 MiB) Viewed 1278 times
OG board and controller 2.jpg
OG board and controller 2.jpg (2.83 MiB) Viewed 1278 times

I also picked up, at some point, a used Tactile Pro 4. I have no idea how much use the board has, but the caps look pretty much new. These boards have controllers with small daughter boards for their micro USB connectors, but the pin layout for the controller matches:

New board and controller 1.jpg
New board and controller 1.jpg (3 MiB) Viewed 1278 times
New board and controller 2.jpg
New board and controller 2.jpg (2.7 MiB) Viewed 1278 times

Note that, at least in this example, there's no strap (in Matias' case a big hunk of plastic) to reinforce the connector. I have no idea if this has been amended since whenever this Tactile Pro 4 was made, but if not this is another point in favor of the newer mini variants of these boards, besides being able to easily change the mapping with resistors.

Now, are these controllers 100% electrically compatible? I have no idea. I swapped them in the name of science anyway, as that means I could potentially test and see if the newer firmware helped with chatter on the otherwise totally original board:

New controller in old keyboard.jpg
New controller in old keyboard.jpg (2.8 MiB) Viewed 1278 times

What I found was interesting. With the newer controller, chatter was instantly greatly reduced and as I repeatedly pressed each key, it was slowly eliminated entirely for that key. The letter n, in particular, would not register at all for the first 10 or so presses. Then it began to chatter, gradually the chatter was eliminated entirely as I continued to press it. Now, it is at the point where I am typing this entire post with that same keyboard that was totally unusable with the original controller.

Before anyone with a relic like this gets the idea that they can just swap a newer controller into their board and all of their problems are solved, the matrix in this board isn't exactly the same as the very latest boards. A few of the modifiers in the lower right, the media control keys and I believe a few in the num pad and nav cluster are not as they should be.

This is enough to demonstrate that the firmware has vastly improved since these boards first came out, probably adjusting debounce on the fly, but what about the newer switches? Will they perform well even with the original controller?

As it turns out, at least with the Tactile Pro 4 I have, yes. I tested every switch on the new board again, with the old controller installed. I could not get a single key to chatter. I swapped that same controller back to the original board and the endless chatter returned like a cascade.

What does that tell us? That either QC/tolerances in design of the plates and pcbs and/or Matias' hands-on alterations culminating in modern Matias switches are most likely a factor and that firmware improvements most definitely are another.

I think this further proves how bulletproof Matias boards and switches have actually become. Even if your switches become prone to chatter (which now seems very unlikely), the newer controllers should be able to compensate for that automatically anyway.

How much further does the rabbit hole lead? I could replace all of the switches in the original board with modern Matias switches and use it for an extended period of time to see if the inferior controller eventually becomes its Achilles' heel. It may also be equivalent to just heavily use the Tactile Pro 4 and swap controllers to test with worn switches, unless someone else already has well-worn boards to do their own testing with.

If you've made it this far, what do you think?

User avatar
Muirium
µ

14 Jan 2023, 13:08

A noble investigation you've done here. One question comes to mind while reading:
Maledicted wrote:
14 Jan 2023, 07:10
With the newer controller, chatter was instantly greatly reduced and as I repeatedly pressed each key, it was slowly eliminated entirely for that key. The letter n, in particular, would not register at all for the first 10 or so presses. Then it began to chatter, gradually the chatter was eliminated entirely as I continued to press it. Now, it is at the point where I am typing this entire post with that same keyboard that was totally unusable with the original controller.
As you call it: "probably adjusting debounce on the fly."

My question: how long does the controller store these values? Do they vanish when you pull the USB plug? Must they be recalibrated during live typing whenever you pull the keyboard out and hook it up?

See, I've been here before with Xwhatsit's capsense controllers for IBMs. Capsense is inherently analog, and 1980s IBM hardware is inherently variable this many years after manufacture, so what we have are keyboards with a hundred or so different values to track simultaneously and the need to compare them to a reference value to sense which keys are pressed. A picture speaks many words:

Image

Originally, Xwhatsit used a single reference value (which could be stored and/or calibrated on power up) which all keys had to compare against. This was… mostly okay but sometimes quite traumatic! Pandrew ported QMK over, bringing stored and calibrated per-key thresholds, which are so much better.

Anyway, Matias switches aren't capsense, but the dynamic debounce you're on about does remind me of my experience with smart controllers patching dicey keys. Values can be stored to non-volatile memory, and hopefully that's what Matias is doing here, so you don't have to debug your keyboard whenever you pull it out to use it.

Hold on, I'll enter that password in a minute. Jab-jab-jab. Jab-jab-jab-jab-jab… ;)

User avatar
Maledicted

14 Jan 2023, 13:25

I'm well aware of Xwhatsit and the great ports of QMK and VIA for the 4704 boards. I'm using Xwhatsit on at least one of my 4704s still. The similarities were not lost on me.

Considering how unusable the board was when I first connected a new controller, I don't think it is forgetting those learned values, since I disconnected the new controller from the old board entirely and reconnected it once for these tests. I do imagine using it with the more modern keyboard will screw things up all over again.

As far as how it is stored, I have no idea. I'm no expert on firmware.

User avatar
Maledicted

16 Jan 2023, 04:18

I have swapped all of the old Forward switches in the older board with new production Matias switches. The black spots are just where I've scraped off rust and protected with Rust-Oleum appliance Epoxy.

20230115_174658.jpg
20230115_174658.jpg (1.54 MiB) Viewed 1103 times

Everything is working 100% again with the ancient controller so time will tell with heavy usage whether the modern switches can hold up without the help of better firmware.

The PCB's printing and pads for LEDs suggest that the same board was probably used for Windows, Mac, ISO and even Japanese layouts and mappings, with extra unused spots for switches marked KJ instead of just K+number. ISO doesn't even appear to require any software changes, but the plate isn't compatible anyway. There also appears to be some way to switch ctrl and caps lock as well, even on these early boards.

I took a lot of pictures as I don't know how many, if any, other people have been crazy enough to bother stripping and rebuilding one of these boards. The traces are clear enough to probably figure out the whole matrix without too much trouble. I don't think there's a single surface-mount component on it.

Top of the PCB:
Spoiler:
20230114_213141.jpg
20230114_213141.jpg (4.49 MiB) Viewed 1103 times
20230114_213156.jpg
20230114_213156.jpg (3.97 MiB) Viewed 1103 times
20230114_213223.jpg
20230114_213223.jpg (3.89 MiB) Viewed 1103 times
20230114_213330.jpg
20230114_213330.jpg (3.79 MiB) Viewed 1103 times
Layout/mapping compatibility:
Spoiler:
20230115_151854.jpg
20230115_151854.jpg (2.4 MiB) Viewed 1103 times
20230115_151905.jpg
20230115_151905.jpg (2.45 MiB) Viewed 1103 times
20230115_151916.jpg
20230115_151916.jpg (2.78 MiB) Viewed 1103 times
20230115_151921.jpg
20230115_151921.jpg (2.57 MiB) Viewed 1103 times
20230115_151944.jpg
20230115_151944.jpg (2.36 MiB) Viewed 1103 times

Post Reply

Return to “Keyboards”