Skip to content

Instantly share code, notes, and snippets.

@AstraLuma
Last active January 17, 2023 01:28
Show Gist options
  • Save AstraLuma/3c611704d40061d472c356532e9e96fa to your computer and use it in GitHub Desktop.
Save AstraLuma/3c611704d40061d472c356532e9e96fa to your computer and use it in GitHub Desktop.
Thoughts on a portable ssh thin client

Basic Capabilities:

  • WiFi
  • Local SSH identity (hardware backed?)
  • Mosh (wishful thinking)
  • Text mode interface
  • Batteries with decent life
  • Good keyboard
  • Local UI for some configuration options
  • Non-trivial fonts

Electronics:

  • Application: Teensy 4
    • Very many hertz
    • Well supported by rust
    • Easy to get both the Teensy stick and the dev kit
  • Network: ESP*
    • Vendor firmware for wifi coprocessor (AT and something fancier I can't remember the name of)
  • Possibly keyboard processor
    • Offload matrix scanning and maybe reduce wires between halves
    • RP2040 would mean circuit python keyboard
    • Atmel/PIC/etc would probably mean less power usage

Keyboard:

  • MX
  • Layout based on X-Bows Crystal
    • Mostly because it's vaguely ergonomic while staying flat
    • Also, the Crystal variant uses standard-sized keycaps

Screen:

  • eInk has insufficient refresh rate for interactive TUI
  • Plus, fancy shell setups benefit from color
  • So, probably something traditional
  • About 10"? Depends on final keyboard size

Software:

  • Rust
  • Async?
  • Use existing modules when possible
  • Rich font
    • Emoji
    • A few languages
    • Icon glyphs (a la powerline, devicons, codicons)
  • Local TUI to configure WiFi, SSH settings, other?
  • Instant boot, instant shutdown

Case:

  • Honestly, don't know
  • Big chunky hinge maybe?
  • Got a goth magical girl keycap set I was thinking of using
  • Leather?
  • Strap?
  • Short but thick, kinda the hot dog of laptops?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment