3 ms·
Show HN: Revolutionary parametric 3D printable magnetic key switches and stabs
- riskable 5y agoI've finally released the (OpenSCAD) source files for my Void Switch and its paired magnetically-stabilized stabilizer design! For background, I've been obsessing over making a fully 3D-printable (analog) keyboard for about two years now. Hackaday has written about it multiple times: https://hackaday.com/2020/08/20/print-your-way-to-keyboard-stability/ https://hackaday.com/2020/08/20/print-your-way-to-keyboard-s... https://hackaday.com/2021/08/02/mag-lev-switches-are-the-future-of-clacking/ https://hackaday.com/2021/08/02/mag-lev-switches-are-the-fut... https://hackaday.com/2022/01/17/3d-printed-magnetic-switches-promise-truly-custom-keyboards/ https://hackaday.com/2022/01/17/3d-printed-magnetic-switches... The void_switch repo is actually just one part of the 3D printable keyboard "library" of files I've released in order to make 3D printing a really great keyboard possible. Here's the others: https://github.com/riskable/keycap_playground https://github.com/riskable/keycap_playground -- Design and print your own keycaps (tutorial/demo here: https://youtu.be/WDlRZMvisA4 https://youtu.be/WDlRZMvisA4) https://github.com/riskable/void_switch_kicad https://github.com/riskable/void_switch_kicad -- Kicad 6 footprints and libraries for making analog keyboard PCBs (using Void Switches) https://github.com/riskable/void_switch_65_pct https://github.com/riskable/void_switch_65_pct -- Kicad 6 Source files for a tutorial I'm working on, "How to design an analog keyboard". Want to see what an analog keyboard PCB looks like? Look here! ...and I have early alpha firmware written in Rust that runs on stm32f4x1 microcontrollers (like the Black Pill) here: https://github.com/riskable/riskeyboard70 https://github.com/riskable/riskeyboard70 (it's not quite ready for prime time but at least serves to demonstrate the analog multiplexer logic). So far the keyboards I've made using my Void Switches have been made so that the whole top comes off: https://gfycat.com/costlyglaringhyracotherium https://gfycat.com/costlyglaringhyracotherium This makes it super easy to clean your keyboard (which is a complaint I hear regularly about 3D printed keycaps... That they collect bacteria in the layer lines or whatever): https://gfycat.com/unconsciousvigilantkinglet https://gfycat.com/unconsciousvigilantkinglet ...and here's some other gifs of the keyboards/macro pads/numpads I've made demonstrating various features I've incorporated into their designs: https://gfycat.com/silentgorgeoushydatidtapeworm https://gfycat.com/silentgorgeoushydatidtapeworm (macro pad with analog hall effect rotary encoder--it's knob comes up with the rest of the top plate yet) https://gfycat.com/scrawnyglisteningandeancat https://gfycat.com/scrawnyglisteningandeancat -- Numpad with PLA everything (I normally print everything in PETG so it's an example that yes, you can use PLA) https://gfycat.com/carefulangrybirdofparadise https://gfycat.com/carefulangrybirdofparadise -- Very fancy Keycap Playground keycap https://gfycat.com/fewcomplicatedhuia https://gfycat.com/fewcomplicatedhuia -- What could be the most historically-significant keyboard accessory of the 21st century https://gfycat.com/marriedtediousaquaticleech https://gfycat.com/marriedtediousaquaticleech -- All my PCBs so far have incorporated an infrared receiver so you can turn any old remote control into a wireless macro pad (got extra GPIO pins so why not? haha) https://gfycat.com/firsthanduniformeasteuropeanshepherd https://gfycat.com/firsthanduniformeasteuropeanshepherd -- Simple glamour shot of my Riskeyboard 70 with all LEDs set to white. I've been typing on my 3D printed Void Switches for about 9 months now (on various keyboard prototypes). My Riskeyboard 70 is my "daily driver" as it were. EDIT: I almost forgot: I wrote a rust crate using `embedded-hal` that makes working with 74HC4067 (and 74HC4051) analog multiplexers super easy (important for making analog keyboards): https://github.com/riskable/analog-multiplexer https://github.com/riskable/analog-multiplexer