Part of core-keys, a split-key hardware authenticator for SSH and FIDO2. This repository is the mechanical side: printable enclosures and parts for the boards the firmware runs on. Nothing here is coupled to the firmware or the wire protocol.
One directory per design, each self-contained: an OpenSCAD source, the STLs generated from it, and a README carrying that design's fit tolerances, assembly order, print settings and design rationale.
| design | fits | state |
|---|---|---|
tdisplay-s3/ |
LilyGO T-Display-S3 Touch, running mule-esp32s3 | slim edge-to-edge slide-in case: shell + slide-down end cap, 2 button caps. Printed and fitted, 2026-09-04. |
More to come.
Every STL is generated from its design's .scad — regenerate rather than
hand-editing. Each design's README carries its own render loop; they all take
the same shape, one part= value at a time:
OSCAD=/Applications/OpenSCAD-2021.01.app/Contents/MacOS/OpenSCAD
"$OSCAD" --export-format binstl -o stl/<part>.stl -D 'part="<part>"' <design>.scadKeep --export-format binstl: the default ASCII export is several times
larger and chokes binary-STL parsers.
There is no build system and no CI. Verification is manual — render the
design's part="check_*" boolean collision tests and read their volumes
against the expected bands documented at the top of the source file.
| repo | what |
|---|---|
| spec | frozen design decisions and the section-numbered co-authorization wire protocol |
| protocol | corekeys-protocol, the shared no_std wire crate |
| daemon | corekeys-daemon, the desktop ssh-agent front end and Noise session owner |
| mule-esp32s3 | ESP-IDF firmware for the protocol mule (LilyGO T-Display-S3) |
| mechanical | 3D-printed enclosures for the boards |
Dual-licensed under either the Apache License, Version 2.0 or the MIT license, at your option. Unless you state otherwise, any contribution you intentionally submit for inclusion in this work shall be dual-licensed as above, without additional terms or conditions.
