Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General design / building discussion #2

Open
tshort opened this issue Mar 11, 2017 · 69 comments
Open

General design / building discussion #2

tshort opened this issue Mar 11, 2017 · 69 comments

Comments

@tshort
Copy link
Owner

tshort commented Mar 11, 2017

goes here...

@tim-tx
Copy link

tim-tx commented Aug 11, 2017

Is there a way, with the current parameterization, to shift the vertically-staggered columns outward for ncol > 4? It seems if I set the number of columns to 7, I get two columns outside of the pinky and one column inside of the index finger, but I'd like it to be the other way around, two near index and one near the pinky. I couldn't figure this out after looking over the code once or twice.

@tshort
Copy link
Owner Author

tshort commented Aug 12, 2017

Allowing more inward columns is a good idea, @tim-tx. Pointer-finger keys are much nicer than yet more pinky keys.

The current code does not provide a way to do this. It'll take some tweaks to incorporate this feature. I'm not sure how many places in the code this would touch.

@tim-tx
Copy link

tim-tx commented Aug 18, 2017

https://github.com/tim-tx/dactyl-keyboard/blob/8b95c6990a6405c8c837e65bbbd5e87b71d93371/things/right-5x7-shifted.stl
For now I fudged on the thumb offset, but I added a shift parameter that moves the two z-offset columns and the thumb cluster outward. I also lowered the cluster a little, there was a corner sticking way up after changing the tenting and doing the shift. Do you see any problems with printing this, or with usability of the new geometry?

@tshort
Copy link
Owner Author

tshort commented Aug 22, 2017

That's awesome, @tim-tx! 👍

I don't see any problems with printing this. Usability looks fine, too. I might try to reduce the overall height as much as you can. As it is, the keyboard is rather tall, so I tried to cut down on the height as much as possible (it shaves a bit off the printing, too).

I also like your code changes. If the code still results in the same model with your new offset zeroed out, please consider a PR to my original branch.

@tshort
Copy link
Owner Author

tshort commented Aug 22, 2017

If you print this, please let me know how it turns out. I might try printing one to make as a giveaway.

As you're probably expecting, the QMK firmware will need some work to handle the extra keys.

@bcm0
Copy link

bcm0 commented Sep 10, 2017

What keycaps do you use? They look very nice.

@tshort
Copy link
Owner Author

tshort commented Sep 11, 2017

Signature Plastics G20's:

https://pimpmykeyboard.com/g20-blank-keycap-sets/

They are especially nice for the thumb keys on this keyboard because of the angles.

@bcm0
Copy link

bcm0 commented Sep 11, 2017

Thank you very much!

@r2d2rogers
Copy link

I am currently bending diodes on the second half of a 5x6 set. Thank you for sharing your things files. I have the first half running on a barely modified Nyquist qmk keymap. Would you mind if I submitted a config for this board to the main qmk repo?

@tshort
Copy link
Owner Author

tshort commented Nov 23, 2017

Sure. I don't think they accept configs into their main keyboards directory for DIY-type boards. I thought they had another location for that, but I couldn't find it with a quick glance. Found it: I think it needs to go under keyboards/handwired.

@r2d2rogers
Copy link

I'm using my 5x6 dactyl manuform now. I have the halves working over I2C and am working up the config for the QMK handwired directory. Thank you for sharing your efforts and making it possible!

@twistedsanity
Copy link

twistedsanity commented Dec 15, 2017

I have an issue getting my kailh red fitting. It seems the hole is correct but I need the little tabs on the other sides. Any advice or easy way to change this? Or are they designed to provide the friction fit and I file them to size?

@tshort
Copy link
Owner Author

tshort commented Dec 15, 2017

@twistedsanity, that's too bad. One of the things I've liked about Matt's original design is how nicely the keys fit. You could try modifying the dimensions/positions of the holes:

https://github.com/tshort/dactyl-keyboard/blob/master/src/dactyl_keyboard/dactyl.clj#L76-L90

It might be tricky. You'd probably want to print some test objects with just one key hole.

@twistedsanity
Copy link

Your right the keys fit perfectly for the square but the nubs just don't work with mine, editing the code is a first for me, but I will give it a go. Thank you for your help.

@r2d2rogers
Copy link

I have a set of the 4x5 printed from the things directory, but the key holes seem small, for mx, or kailh either one. The 5x6 fit so well that I'm confused, was that size adjusted for different switches, or did the print go awry?

@tshort
Copy link
Owner Author

tshort commented Jan 19, 2018

I suspect a print issue. Nothing was changed. The 4x5 was my starting point.

@ketkar
Copy link

ketkar commented Jan 22, 2018

Are those thumb cluster key caps 1.5u?

Also, what material did you print with?

@tshort
Copy link
Owner Author

tshort commented Jan 22, 2018

Yes, the two main thumb keys are 1.5u. I printed with PLA.

@DurekuRyuu
Copy link

I cannot find a genuine Arduino Pro-Micro, where would you recommend finding one or what would you recommend for alternatives?
Do you know why the pre-generated models are full of holes in their manifolds and where i might find ones without holes? I have been unable to get clojure and leningen working so i cannot generate my own.
I am specifically looking to print a pair of 6x6's to build for work.

@tshort
Copy link
Owner Author

tshort commented Jan 24, 2018

Mine weren't "genuine Arduino". They were a generic clone. I think I used the "KOOKYE 3PCS Pro Micro ATmega32U4" from Amazon.

I remember some 3d printer software complaining about non-manifold issues, but others are fine. I'm not sure what the issue is. What software are you using to print?

@bcm0
Copy link

bcm0 commented Jan 31, 2018

Do you use something like special keycaps on the home row to find the correct typing position? I can't find the position without taking a look.

@DurekuRyuu
Copy link

DurekuRyuu commented Jan 31, 2018

@tshort I'm using Slic3r Prusa edition, and the model is visibly full of holes, attempting to slice it does not produce a viable model.
Also, would the firmware work with the normal arduino micro? I would like to buy genuine parts for my keyboard.

@matt1003
Copy link

@DurekuRyuu, I have has similar issues slicing the original dactyl-keyboard with the Slic3r Prusa edition. In the end I gave up and used a different slicer. https://ultimaker.com/en/products/ultimaker-cura-software

As for the firmware, it should work fine with both the genuine pro-micro and generic clones.

@DurekuRyuu
Copy link

@matt1003, Excellent, i would have tried that, but really liked the features of Slic3r Prusa edition, so I downloaded an Autodesk Netfab trial and ran it through the repair function. This ended up repairing the part to the degree necessary to run it through Slic3r Prusa edition.

I'm glad that the firmware should work on both generic and genuine boards.
Thank you for your help.

@blakedietz
Copy link

blakedietz commented Feb 27, 2018

Re #2 (comment), I had some pretty poor results with switch hole sizing. Cherry MX form factors didn't fit at all. The switch holes were about 2mm too small both in width and height.

The left hand side was printed with a Prusa mk3 i3. Are there any tips as to improving print fidelity?

@tshort
Copy link
Owner Author

tshort commented Feb 27, 2018

I've had good luck with upside-down prints. For me, that helped prevent curl-up on the walls, but it might also help with keyhole sizing.

@fi0
Copy link

fi0 commented Mar 6, 2018

how much infill % should I use for PLA printing?

@DurekuRyuu
Copy link

@fi0 15% works fine, as long as you have internal support with your slicing program even 5% or no support should be fine.
I've printed 1 6x6 in PLA and one in PETG and I highly recommend PETG over PLA, but PLA will still work well.
@tshort Why not use brims? i used 5mm ones and they worked great. I was printing on PEI though, so i may have different results.

@tshort
Copy link
Owner Author

tshort commented Mar 10, 2018

I'm pretty new to 3D printing. I tried a brim on a Makerbot, but the sides still turned up. It doesn't have a heated bed. My makerspace also has printers with heated beds, but I had problems with clogging on them, so I never had a successful print.

@fi0
Copy link

fi0 commented Apr 10, 2018

Just found this on /r/mechmarket, it looks like he's having the same issue for thumb cluster.
https://imgur.com/gallery/XktwS

@fi0
Copy link

fi0 commented Apr 11, 2018

@DurekuRyuu what're the benefits of using PETG? I've printed one in PLA but I want to print a smoother one and then sand it and spray it with primer.

@fi0
Copy link

fi0 commented Apr 11, 2018

@tshort for fixing the thumb cluster, do you think we can change it to

    (def thumb-post-bl (translate [(+ (/ mount-width -2) post-adj) (+ (/mount-height -1.5) post-adj) 0] web-post))
(def thumb-post-br (translate [(- (/ mount-width 2) post-adj)  (+ (/mount-height -1.5) post-adj) 0] web-post))

from -1.15
But, we'll also need to change larger plate too.

@wirlybird
Copy link

Hi all, getting ready to print the 5X6 version.
Going to be using PETG. What orientation did you print in? Printing with the cavity facing down looks like a support nightmare! Won't be able to load into the slicer until this evening to take an actual look!
Thanks for any tips!

@DurekuRyuu
Copy link

Print in the standard orientation, downside down, embrace the support nightmare.
Reason, you will touch the top/outside of the print, so let the inside be a support nightmare.
As long as you use a good slicer, Prusa Slic3r is good, the supports shouldn't be an issue. Ideally one would use soluble support or support interface. If you dont use soluble support you will lose ~50% of the pegs on the underside.
Print at high temps and low speeds for nice quality.
Run the STL through netfabb to ensure no holes in the manifold.
Post pictures on r/MechanicalKeyboards for karma.
???
Profit?

@wirlybird
Copy link

Thanks for the info. I planned to run it through Netfabb.
Thanks for the tip on the pegs. I'll watch for that.

I am going to look it over in Slic3r PE and in S3D.

Will try to remember to post a pic!

@Nebukadneza
Copy link

Yoho,

i just successfully printed a 5x7 version with a very cheap home-printer, the CR-10 and a E3D Hotend with 0.4mm nozzle, and el cheapo black PLA (»OWL-Filament«). As it took me quite a while to figure out the exact settings, and i had 3 essentially failed prints, i wanted to let everyone know what did the trick for me (although your printer might be different).

I’m slicing with S3D, and roughly:

  • 0.215mm layer height (better bonding, rough outside, but sturdier for removing the supports)
  • top solid: 6 layers, bot solid: 4 layers, shells: 2
  • 35% rectilinear infill with 125% width
  • 28% auto-generated supports, from build-plate only, 43° max angle, 0.85mm horizontal offset, upper separation: 2 layers (here, it was critical for me to get the right support infill percent where the „islands“ would stick nicely, but that’s removable without destroying the print)
  • 206°C print, 60°C bed temp, but that’s hotend/filament specific. I chose to go ~5°C higher than usually with this filament to get better layer bonding, thus increasing strength for removing supports.
  • 55mm/s base-speed, 66% outline underspeed, 75% solid underspeed, 75% support underspeed

I hope these help some others with rough starting-points for successful prints. If possible, try lower support densities first, and err on the higher support-separation-side rather than too dense/close.

Here are some images of the print. Not super nice, but functional, and with snap-in keys ^_^.

img_20180707_155521
img_20180707_155512
img_20180707_155504

Thanks for this GREAT dactyl fork! Looking forward to reduced wrist/finger pain, thanks to everyone here ^_^.

Best,
-Dario

@DurekuRyuu
Copy link

@Nebukadneza That looks pretty nice, i'll post pictures once i build mine, gotta see if i can get some bottom plates cut at work.

@impaktor
Copy link

impaktor commented Sep 6, 2018

616E 4P4C

The dactyl-manuform model has a hole for a RJ9 connector, e.g. 616E 4P4C RJ9 female telephone connector adapter (shown in image above), and for a USB connector, but if I'm to interpret the previous comments in this thread, it's not modelled with any specific female connector in mind? Or just the URBEST 20Pcs Straight Soldering Mini USB A Type Female Port Plug Jack Socket Connector?

There's also Panel Mount Extension USB Cable - Micro B Male to Micro B Female which seems interesting.

As using the USB-connector to the pro micro directly will likely break, after using it a short while, does anyone have a other good ideas, as to how to get a nice case-mounted USB-port?

image and url's after discussion on #geekhack with @Nebukadneza

@tim-tx
Copy link

tim-tx commented Sep 17, 2018

Finally printed one, 5x7, in ABS. Switches snap in for a snug fit. Added an extra index finger column rather than a pinky column. Looking forward to typing on this.
img_0026 heic
img_0027 heic

tim-tx pushed a commit to tim-tx/Dactyl-Manuform that referenced this issue Oct 7, 2018
Add note about unicode-math under clojure 1.9
@impaktor
Copy link

impaktor commented Nov 8, 2018

As other's mentioned above, there's no good USB-female for case mounting. This is a problem as the female USB on the Arduino is very brittle and tend to break off the board.

This makes me think the best way is to have some other <thing>-to-usb cable.

How about where <thing> is RS-232 / DB9 (or RJ9?) case mounted female + RS-232-to-usb cable, which I think would be sturdy enough to relieve the stress on the arduino connector.

s-l500
s-l5001

@VinnyCordeiro
Copy link

I'd use one of these instead.

@impaktor
Copy link

impaktor commented Nov 9, 2018

@VinnyCordeiro thanks, I've seen that before, but I don't understand how it's a case mount, when it doesn't have a flat surface to be in contact against the case?

It's really mind-boggling that there's no good casemounted USB-females.

EDIT For posterity when above URL goes dead, the product is called: "CY 50cm Mini USB 5Pin Male to Female Panel Mount Type Extension Adapter Cable with Screws"

@arqubusier
Copy link

@impaktor I'm working on a modified version that will have special holders for these usb breakout boards https://www.sparkfun.com/products/12700, and https://www.sparkfun.com/products/9966. For the cable between the halves I will use usb a on the left (the half with the mcu) and usb b on the right. For the cable between the left half and the PC I will use usb b on the left half.

I have already modeled these holders in the clojure code, and printed them, but I have not yet incorporated them and tested them in the full keyboard. However I will most likely be done with it the coming week. You can follow my changes here if you are interested: https://github.com/arqubusier/dactyl-keyboard.

@tim-tx
Copy link

tim-tx commented Nov 14, 2018

This is what mine looks like. The USB connector is just glued to the case.
img_0060
img_0061

@impaktor
Copy link

That's some very nice wiring. @tim-tx I hope you don't mind if I could pick your brain a bit:

  1. Does the case mounted USB connector stick firmly in the case, or did you glue-gun that like you did with the wires?

  2. The way I see it, the USB-connector hole in the case/model is missing the "inner plastic extrusions" for something like a USB Type A Female PCB Mount Socket Plug Connector to grab on to, in order to lock it into place.

  3. Those jumper wires that are connected to the arduino-pins seem very handy, I assume it's this one? https://www.sparkfun.com/products/10366 I also assume the wires are not long enough to do the matrix wiring, so you solder in the matrix wires later to these?

  4. I see you're using some kind of special USB connector to break out the wires from the connection to the arduino. My plan was to just take a normal USB-micro and cut off the A-plugg. Advice?

@tim-tx
Copy link

tim-tx commented Nov 14, 2018

  1. The gob of glue on the wires was just to keep things immobile as I was doing the wiring. There is actually a small border of epoxy where the connector protrudes into the interior of the case. I think I read epoxy + metal is iffy, but it seems to be quite rigid.

  2. Do you mean something for those little prongs on the connector to grab? The connectors I got don't have those prongs, everything is glued. You wouldn't be able to fit the connector you linked into the hole.

  3. I used some jumper cables like that one you linked, inspired by the wiring here:
    https://github.com/20lives/Dactyl-Manuform
    Since I printed a 5x7 model, I also got some 40 pin jumper cables (e.g. amazon) peeled of a ribbon of 5 and 7 wires and got a pack of headers with multiple widths (e.g. amazon) so all the wires would connect at once to the mcu. Yes the matrix wiring was done separately without the jumper cables, and then the jumper cable ends were soldered to convenient nodes in the matrix.

  4. I think that would be fine. I went from the case connector to Dupont header female, then Dupont header male to a USB micro connector. Not necessarily the most efficient, I don't remember why I did it like that.

The other thing I might suggest is to put USB connectors on both hands to make the flashing a little easier. I filled in the connector hole on one half before I realized I needed to flash the microcontrollers separately. This means I have to unplug the USB micro cable on the left hand and connect the arduino to the computer separately.

@ataquino
Copy link

Hey @tim-tx, how did you manage to add another index finger column, instead of a pinky one?

@tim-tx
Copy link

tim-tx commented Dec 14, 2019

Hi @ataquino, I think I saved that setup here: https://github.com/tim-tx/Dactyl-Manuform/tree/ergodox

@lecler-i
Copy link

Hey, just discovered your awesome keb, it rocks !

I was thinking about trying to make the thumb cluster an other par, that could be attached to the main body (to be able to create custom modules like trackball, joystick or whatever)

Did anyone tried to do the following modifications ?
I will start working on this soon but if you know any fork with even a start on this feature, it could help me greatly :)

@tim-tx
Copy link

tim-tx commented Jan 28, 2020

@lecler-i There's a nice fork of this project here: https://github.com/veikman/dactyl-keyboard
I don't think it's broken up into separate chunks like you suggest, but there's a significant restructuring of the code which may interest you.

@MRAAGH
Copy link

MRAAGH commented Apr 3, 2020

Loving these designs, and I'm planning to make one!
I just wanted to ask about one detail: the generated designs have brims sticking out on the underside of every switch hole, like this:
Screenshot_2020-04-03_21-29-33
I don't see any purpose in the lining, since this is hidden in the underside. It makes the model trickier and riskier to print, though. What I was expecting instead is something like this:
Screenshot_2020-04-03_21-28-26
I did that manually this time by merging nearby vertices, but this also changed the shapes of the square holes and switches aren't going to fit. Could you point me to the section in the generator where I would be able to fix this?

@MRAAGH
Copy link

MRAAGH commented Apr 3, 2020

By trying out various settings, I eventually found out that plate-thickness is the one I want to change. Thank you for making named parameters for all these things! ^.^

@Margneon
Copy link

I wanted to hardwire the two halves together but I am not familliar with the layout of the RJ9 connector which of the cables do I have to connect?

@Margneon
Copy link

nevermind I found it after a lot of research.

https://github.com/qmk/qmk_firmware/tree/master/keyboards/lets_split

@MRAAGH
Copy link

MRAAGH commented Jul 16, 2021

@Margneon You're wiring both sides. As long as your connector pinout is the same on both sides, the connection is going to work.
Good luck! ^.^

mostley referenced this issue in mostley/blender-dactyl-keyboard Nov 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests