Giter Site home page Giter Site logo

dactyl-manuform-tight's Introduction

Compactyl - A Compact Dactyl ManuForm Keyboard

This is a fork of the okke fork of the l4u fork of the tshort fork of the Dactyl, a parameterized, split-hand, concave, columnar, ergonomic keyboard.

V3.1 Features

  • Added support for tilting outer index and pinky columns only
  • Increased tent angle to 40 deg
  • Adjusted case to remove jank around top index corner
  • Changed to use vertical MCU holder
  • Upsized top plate attachment screws from M2 to M3
  • Modified case walls connecting to thumb
  • Updated rendered thumb caps to rotated SA R1, which I use. Compactyl V3.1 top Compactyl V3.1 top

V3 Features

  • Added option for two part design per keyboard half Compactyl V3 back

V2.1 Features

  • Increased tent angle
    • Added global thumb angle adjustment
    • Adjusted case to still accommodate usb-holder with increased tent
  • Reworked gel wrist rest holder to not distort at higher tenting angles
  • Reinforced connection between columns with cutouts for connector / wiring clearance
  • Added option to increase angle of lower two lower keys (inspired by rmtz Naive design)
  • Added rendered option for keycap preview
  • (Experimental) Added optional retention clip to assist with one-piece flexible PCB
  • (Experimental) Added optional solderless socket option
  • NOTE: you will probably have to increase OpenSCAD params:
    • Turn off rendering at ~2,000,000
    • CGAL cache size ~4000mb
    • PolySet cache size ~4000mb Compactyl V2 Compactyl V2 back

V2 Features

  • Returned back to one solid piece top case deisgn for easier printing
  • Subtraced space around keycaps to improve clearances
    • better clearance on top row for middle and ring finger keys
    • thick ABS caps still not recommended
  • Adjusted stagger and column height deltas
  • Extended bottom plate to connect wrist rest
    • Wrist rest can be positioned to adjust X, Y, or Z placement (adding or removing shims)
  • Added modified version of cyrstalhands wrist rest holder
    • slanted, removed case connector tubes, added threaded insert holes Compactyl V2

V1 Features

  • Hotswap north facing switch plates
  • Increase pinky stagger
  • Adjusted column spacing for better clearance
  • Continuous (vs. recessed) bottom plate with filleted holes
  • Exoskeleton top case design
  • Rendered both 4x6 and 5x6 versions with bottom plate
  • (orig. Tightyl) As small around the keys as possible
  • (orig. Tightyl) Smoother transition between thumb and fingers (less facets)
  • (orig. Tightyl) Thicker walls in steep regions where walls were too thin

Kailh Box White Sound Test

Update USB holder

  • Created ("working" but unpolished) SCAD version of USB holder for modifications
  • Provide better clearance to USB cables plugging into controller
  • Adjust size to better hold Elite-C controller
  • Taper angle to reduce waste material
  • Make holder shape symetrical to case notches so it fits upside down or right side up
  • Add option for square reset button to be held as well

Wiring

Comparison with previous model

  • Orig. Tightyl (white) had more row curvature, and wider spaceing between columns
  • New Compactyl (blue) uses a flatter row curvature, but increases tent to result in similar keyboard angle
  • New Compactyl (blue) is approximately 4mm taller (plus additional heigh for bottom plate if used) because of space requried by hot swap holders below pinky columns.

Generate OpenSCAD and STL models

Setting up the Clojure environment

Generating a Design

  • Run lein auto generate
  • This will regenerate the things/*.scad files whenever the .clr file is saved
  • Use OpenSCAD to open a .scad file.
  • Make changes to design in src/dactyl_keyboard/dactyl.clj, open scad files will auto regenerate, OpenSCAD will rerender.
  • When done, use OpenSCAD to render, then export model STL files which can be printed by 3d printer slicing software.

Batch (parallel) Processing

  • Edit the path for OpenSCAD in create-models.sh if needed
  • Change any other settings for which files you want to render
  • Wait for STL files to appear (this may take a minute or two)

Tips

  • I gave up trying to keep good values for both 4x6 and 5x6 options. So when adjusting the number of rows / cols, or tenting angles, (amoung other larger design changes) you will most likely have to update some magic numbers. I recommend opening the test.scad file and manipulate:
    • defn column-curvature
    • defn centerrow
    • def centercol
    • defn column-offset
    • def keyboard-z-offset
    • def wrist-rest-z-height-adj
    • defn usb-holder-offset-coordinates
    • defn screw-insert-all-shapes
  • When trying things out, 10 seconds of rendering time in OpenSCAD is really annoying. Load one of the test outputs with commented out parts that you aren't changing / don't use.
  • If you're not sure what things are generted by a piece of code, color them in using something like (->> SOMETHING_HERE (color RED)) (see examples in dactyl.clj).

License

Copyright © 2015-2020 Matthew Adereth, Tom Short, Leo Lou, Okke Formsma, Derek Nheiley

The source code for generating the models is distributed under the GNU AFFERO GENERAL PUBLIC LICENSE Version 3.

The generated models are distributed under the Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0).

dactyl-manuform-tight's People

Contributors

l4u avatar tshort avatar okke-formsma avatar adereth avatar bruceme avatar dfc avatar mrusu91 avatar mathias avatar

Stargazers

Oleksandr Korniienko avatar Henrik Björserud avatar Jonathan Beilin avatar

Watchers

DIY Keyboards avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.