If there’s one thing we love to see around here, it is the various iterations of a project. If you keep up with Keebin’, you know that [Michael Gardi] created a tile-based macropad after developing a tile system for yet another project. This macro pad would have 3D-printed tiles next to the keys that would not only make them easy to relabel, but give [Michael] a novel way to change the function when changing the tile using magnets and Hall effect sensors.
Well, fast forward to [Michael] actually using the thing, and he’s found that, more often than not, he’s pressing the tiles instead of the keys next to them. So it was time for another iteration: a macro pad with tile buttons. Much like the previous iteration, this one uses a Pro Micro for a brain and a handful of very cool Futaba MD switches that bear Cherry MX stems.
Those Futaba switches are activated by tile holder buttons, which were quite the feat to create. These tile holder buttons each contain two Hall effect sensors and have a Cherry MX-style recession on the other side to connect to the Futaba. Unfortunately, some usage has already damaged the connections, so the next iteration will include small PCBs for surface-mount Hall effect sensors and a main PCB, as well.
[Michael] can make these pretty cheaply, but are they cheap enough to be given away?
Hmm probably a good quality of life improvement on the original, both more compact and intuitive.
Do have to ask if it was really required to put electronics on the keycap at all – I’d have thought you could read which tag was on the key accurately from the keyswitch PCB/Wire layer through the case, and at the very least reliably when the key is depressed to bring it closer – which would be a software rewrite, but not a major one.
Maybe doing so would mean needing a larger margin between keys so less possible keycap values. But I’d suggest for durability and ease of creation it is worth it for the keycap to just be a dumb lump that can be ID’d by the base. Still really love this idea, and how cheap and attainable USB HID has become in recent years.
Interesting idea but I’m not sure the hall effect sensors are up to making accurate readings given the additional distance that would be introduced between the sensor and the small magnets that I use in the tiles. Right now, with the sensors in the button, the distance between the sensor and the magnets varies between about 1 mm and 5 mm. If I move the sensors to the PCB layer the switch is mounted in then the distance increases by roughly 18 mm , so 19 mm to 23 mm (at lease for the Fubata switches). If I move the sensor to the layer that the switch snaps into (the stabilizer layer) this is still a +10 mm increase (11 mm to 16 mm). I know from testing that with the hall effect sensors and magnets that I am using I would not be able to get reliable readings from the tiles. I’m not a hall effect guru so I can’t say with certainty that with better sensors and bigger magnets maybe this idea would work. It definitely would be a better design if it could be made to work.
What about magnetometers? They’re using them in modern controller joysticks these days, adafruit have a few boards/demos I believe. this board: TLV493D will do 3d sensing, might give you more options for buttons/tiles, although it’s going to bump the price up.
Yeah worth playing with at least, which it sounds like you did at least on the sensor magnet combo’s you had to hand. The question really is how close can you get the keycap mounted ‘named tile’ magnets when the switch is closed – it doesn’t really need to know what the button is unless it is pressed, and reading the hall effect triggered by the button press should be easy enough to do repeat-ably fast enough to catch the switch at close enough to the same point in its travel every time. I’d think you could get it down to very close to the working range you are already using.
Though as I commented on the previous iteration still not sold Hall effect is really the best way to get this idea, though now you have me thinking there may be a great reason to use hall effect and the right flavour of mechanical switch (which will still be largely user feel, but probably not a short throw) to added advantage – Assume the buttons are calibrated already, so maybe it prompts/requires the user to fully depress the new keycap (if it can’t just read when the key is up) when it detects there has been no magnet implying the old cap has been replaced. Then it already knows which one is slotted and can use the hall effect sensor for a secondary duty of variable rate output for applicable keycaps – so if you have “Vol Up” (or scroll/zoom etc) the further you depressed the faster it changes type concepts. That would really be useful for some and an unusual feature in a macropad.
Given that the text only needs to be legible before the button is pressed, is there scope for some sort of optical projection? Some kind of periscope type arrangement?
On a related note: I discovered that the wear on keyboard keys is much more intensive than you would think.
I have some keys that had worn labeling and I tried all kinds of ways to apply a permanent replacement but they keep wearing/rubbing/sliding off, even though I keep trying more and more robust interations
At one point I melted a letter in with that decorative foil you can melt onto paper, thinking that should last a bit, it did not, even though there was a groove melted into the plastic it was gone rather quickly.