Giter VIP home page Giter VIP logo

dactyl-flatpacked's People

Contributors

nickcoutsos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dactyl-flatpacked's Issues

Include a jig for helping with assembling columns

During assembly of the original dactyl-flatpacked I realized that I left too much clearance between the slot cutouts (the OpenSCAD preview renderer doesn't like co-incident faces in difference() operations so I usually oversize the subtracted geometry a bit and forgot to remove that in the final render) which meant nothing fit together solidly. To ensure all of the pieces where properly aligned for gluing I had some 3D printed jigs I came up with.

IMG_20180401_122809803
Two printed pieces to firmly hold column supports in place and parallel to one another. At some point I also had another jig that matched the interior curve of and column and had protrusions that fit into the switch cutouts to ensure their alignment.

Had I planned ahead I could have designed another such jig to be cut from acrylic. One jig for the finger cluster will work for all of the columns since the cross-support slots are all in the same place. This should be true of the thumb cluster as well but I'd rather double check that than be wrong about the math for a third(fourth?) time.

Combine thumbstands into two pieces

thumbstands

Having the thumbstands as 6 individual pieces makes assembly really difficult. If they could be combined into just two pieces, it would make assembly alot easier and it would save on print space. It's a win win

Size of 1u switch holders

IMG_20220420_122309

The 1u switch holders have a very small distance of material in the corners and snap easily, I think it would definitely be nice to add a little bulk if at all possible.

Spare parts

flimsy handling may break some of the smaller pieces, so an extra 1u key holder or two would be appreciated.

This can be easily arranged. Would this be better as a separate SVG that a user can add on or included in the the "default" template.

Optimize rendered SVG

laser cut acrylic is expensive, and printing two copies is twice the price of printing one copy. So if you could bring both halves into one svg file and minimise wasted space, this would be a lot cheaper to print an entire keyboard.

The SVG shown in the repo can certainly be used as a cutting template as-is, but it hasn't been optimized. I mainly wanted to illustrate the output of this codebase: 2D geometry.

Optimization is an interesting problem, and not entirely straightforward. I see two types of optimization:

  1. Reducing the amount of material used
  2. Reducing the amount of cutting required

The first kind of speaks for itself. I think the keyboard I built in 2018 cost somewhere shy of 100 CAD to cut, and now that we're entering year three of a pandemic I don't know if acrylic is getting any cheaper. The fewer parts we have to cut, the better. The more optimally we pack those parts, the more we can get out of a single sheet of acrylic. There are complications to this: the service I went to charged for a minimum sized sheet that was already more than I needed for... probably two full keyboards. But different services will have different constraints, and some may even let you supply your own material.

The second one kind of builds on the "cut less stuff if you can" idea and throws in curveballs like making edges of different pieces touch wherever possible so that they share cut lines. This one I can't actually do before rendering the SVG or else OpenSCAD would combine them into one larger path.

Another aspect is customization. I pre-rendered the cutting template for a 6x5 dactyl with the 1.5u + 1u outer column because it was easier to get a cheap set of Ergodox keycaps, but I know that's not for everyone. I don't even use a number row these days.

All this to say, some of the optimization will have to happen on the end user's side. I'm not against implementing some that I can, though I'll be relying heavily on third party libraries (I'm looking at SVGnest so far but that solves problem one, not problem 2).

Interference between thumb and finger clusters

Screen Shot 2022-04-23 at 12 17 56 PM

Just noticed this but it seems to have been an existing issue. The second column of the finger cluster is intersecting with thumb cluster column support and plate. One option would be shifting the thumb cluster over a tiny bit, but because it's a small corner of the finger column support's bottom side it may be possible to solve this by rounding/chamfering and keeping true to the original thumb cluster implementation.

Connecting base

a base that connects each half of the project together would add significant cost, but would greatly positively impact the sturdiness of the build in the long run, and provide a space to keep the wiring, microcontrollers, and ports etc

This is a good idea as well. Thin pieces can be used just to connect the thumb and finger cluster. Multiple pieces can be attached at different heights to reduce some of the stresses on the acrylic. Alternatively, one big piece that covers the entire footprint should be relatively strong if you're comfortable with the cost.

Speaking of which, this could be an area where people have different preferences so I can see there being value in generating a template for the footprint in addition to a couple of connector options. This way there's room for people to make their own customization in any old vector editor.

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.