Group Build prototyping phase

User avatar
matt3o
-[°_°]-

23 Feb 2014, 20:11

olive wrote:How about this minor change in the mirror layout, which I quite like by the way: put the ~/` key between Esc and 1.

I realise it's not a big deal if a Teensy pilots the keyboard anyway :-)
yeah, you can place them wherever you want

User avatar
Muirium
µ

23 Feb 2014, 21:34

The trouble with Soarer's…
Soarer wrote:More symmetry:

Image
…is that I'd type like I was on an HHKB, and wind up being hopelessly confused!

These small layouts are getting me thinking. But what about cap set compatibility?

Anyway, I'm a touch intrigued by the notion of an entirely stab-free mini layout too.

User avatar
Soarer

23 Feb 2014, 22:30

Caps - ok for blanks :)

User avatar
scottc

23 Feb 2014, 22:32

The less stabs the better, in my opinion. Hate the fiddly little things!

mtl

24 Feb 2014, 03:06

I'm really excited to see this group-build. :D A lot of great ideas are coming out of it and the PCBs will take a lot of the pain out of making a custom keyboard. Though I don't think I'm ready to commit to another custom keyboard project, I've been working on some layout ideas and thought this would be the right place to share.

This post by Muirium where he mentioned his pyramid concept got me to thinking, I only really want the main keyboard area for typing. The other key clusters are just in case they are needed. Also, looking again at matt3o's keyboards and some of the others from the last group-build, I really like how much thinner they are than the one I built. So I threw together a design that made the secondary clusters less prominent, while still allowing enough internal space for TrackPoint hardware (I think).
profile.png
profile.png (1.96 KiB) Viewed 5845 times
top-angle.png
top-angle.png (36.15 KiB) Viewed 5845 times
top.png
top.png (6.85 KiB) Viewed 5845 times
Thanks to suka for the suggestion to use OpenSCAD. :) The above pictures were made by importing the DXF file and extruding the 2D layers. I'm dreaming of a relatively simple Python interface that could take most of the grunt work out of designing layered keyboards, perhaps similar to suka's OpenSCAD script, but perhaps that could take keyboard-layout-editor raw data as input and automatically generate a top plate. That would also help reduce the possibility for errors when drawing the plates manually.

For the case in those pictures, I tried reducing the design complexity to make it easier to build and more serviceable than my last keyboard. So it doesn't have an OLED display and has only 2 LEDs instead of 7. The TrackPoint controller would mount to the top plate making the keyboard easier to close. And this is the layout I had in mind:
layout.png
layout.png (23.85 KiB) Viewed 5845 times
Anyway, I'm still tinkering with this design, and can't wait to see some of the great concepts and excellent work in this GB come to fruition.

User avatar
matt3o
-[°_°]-

24 Feb 2014, 09:05

hold on... why not a modular design then?

Image

basically the base plate is the same for all, then you just change the sides (mid layers) and place over the new module (to the left or to the right)

Zaakessiron

24 Feb 2014, 10:00

I do like the idea of a Modular design matt3o, it should give us a more versetile option when building. And I think we would have many more intresting worklogs here in the forum to follow with that in mind.

F1-F12 is something i would like on my personal build, but i could do without the caps lock. I have it currently disabled (registry hack) on my shine 3, and use it as a dedicated push-to-talk key for Mumble. might try replace it with a super/Fn key in a custom build.

BTW I joined in on the Skull Squadron caps, they look like an awesome set. Though I would have liked an ISO Nordic option with it but i am quite used to the ISO UK layout so it wont bother me a lot.

mohitgarg

24 Feb 2014, 10:19

Haha, everyday, this project inches closer to my Blox project. I'm watching this carefully!
mtl wrote:Thanks to suka for the suggestion to use OpenSCAD. :) The above pictures were made by importing the DXF file and extruding the 2D layers. I'm dreaming of a relatively simple Python interface that could take most of the grunt work out of designing layered keyboards, perhaps similar to suka's OpenSCAD script, but perhaps that could take keyboard-layout-editor raw data as input and automatically generate a top plate. That would also help reduce the possibility for errors when drawing the plates manually.
Can you share how you extruded those layers, as I am mighty interested, since I am always designing layout plates and layered acrylic cases.

Regarding the code to generate layers, this is a very interesting idea, which I had shared again on my Blox project thread, it would be a one time investment, but one should be able to write a script to generate SVG files, for layers based on a webform, or a formatted output like from the layout editor and this would help the community immensely. I did intend to get onto that when it came to it (Right now I am working on designing the PCBs).

In general I am very interested in looking forward to how the community explores on modular design, specifically the physical assembly, as electronically it is feasible using multiple PCBs, internal USB-hub, master-slave config, etc. Physical modularity is not that easy, since working space is small.

mtl

25 Feb 2014, 04:37

matt3o wrote:hold on... why not a modular design then?

Image

basically the base plate is the same for all, then you just change the sides (mid layers) and place over the new module (to the left or to the right)
Good idea. If I understand your idea correctly, it may require some additional screw holes that may be redundant for edges of the keyboard where you opt not to have a module. I think there would probably be visible seams where modules are attached. I'll try to take a crack at it in the near future and report back.
mohitgarg wrote:Can you share how you extruded those layers, as I am mighty interested, since I am always designing layout plates and layered acrylic cases.
First, save the case design as a R12 DXF file. Then search the dxf for LAYER to find the names of your layers. Then import them like so (this is the .scad script I used):

Code: Select all

translate( [ 0, 0, 12 ] ) {
	color( [ 0.8, 0.8, 0.8 ] )
	linear_extrude( height = 1.5, center = false, convexity = 1, $fn = 50 )
	import( file = "keyboard.dxf", layer = "7_TOP_-_1_5MM" );
}

translate( [ 0, 0, 9 ] ) {
	color( [ 0.7, 0.7, 0.7 ] )
	linear_extrude( height = 3, center = false, convexity = 1, $fn = 50 )
	import( file = "keyboard.dxf", layer = "6_SPACER_II_-_3MM" );
}

translate( [ 0, 0, 7.5 ] ) {
	color( [ 0.6, 0.6, 0.6 ] )
	linear_extrude( height = 1.5, center = false, convexity = 1, $fn = 50 )
	import( file = "keyboard.dxf", layer = "5_WINGS_-_1_5MM" );
}

translate( [ 0, 0, 4.5 ] ) {
	color( [ 0.5, 0.5, 0.5 ] )
	linear_extrude( height = 3, center = false, convexity = 1, $fn = 50 )
	import( file = "keyboard.dxf", layer = "4_BUTTON_BRIDGE_-_3MM" );
}

translate( [ 0, 0, 1.5 ] ) {
	color( [ 0.4, 0.4, 0.4 ] )
	linear_extrude( height = 3, center = false, convexity = 1, $fn = 50 )
	import( file = "keyboard.dxf", layer = "3_SPACER_III_-_3MM" );
}

translate( [ 0, 0, 0 ] ) {
	color( [ 0.3, 0.3, 0.3 ] )
	linear_extrude( height = 1.5, center = false, convexity = 1, $fn = 50 )
	import( file = "keyboard.dxf", layer = "1_BOTTOM_-_1_5MM" );
}
mohitgarg wrote:Regarding the code to generate layers, this is a very interesting idea, which I had shared again on my Blox project thread, it would be a one time investment, but one should be able to write a script to generate SVG files, for layers based on a webform, or a formatted output like from the layout editor and this would help the community immensely. I did intend to get onto that when it came to it (Right now I am working on designing the PCBs).
Some of the issues are regarding output formats. OpenSCAD is scriptable, but doesn't seem to support output of smooth arcs (laser cutters prefer arcs over sharp corners because it keeps the laser moving). DWG is a proprietary format, but if anyone could recommend a library that supports DWG output I would be interested. SVG is good but I'm not sure if matt3o's laser cutter accepts it and what line thickness should be used. Plus there are unit conversion issues from what I've read. DXF may be the way to go, but I got corruption errors opening up a file created using the Python dxfwrite module in DraftSight. When a good output format and supporting library are found then perhaps more progress could be made.

pasph

28 Feb 2014, 16:42

Is this on hold?

User avatar
matt3o
-[°_°]-

28 Feb 2014, 16:43

I'm personally still working on it. I don't know about you folks :)

I'm actually waiting for the CNC machine to see what I can really do at home, but layout designing is still open.

User avatar
Muirium
µ

28 Feb 2014, 17:34

Aye, chief.

User avatar
Dubsgalore

28 Feb 2014, 22:58

this is so cool, nice work guys! just seeing this now :P

User avatar
RaleghDirat
Prisoner of Technology

01 Mar 2014, 09:28

For me, going below TKL is only for short periods when not at my main work points. I must have a dedicated navigation cluster for fast editing.

So, matt3o, do you think you can provide this "standard"?
Will you need CAD files for it?

Image

http://www.keyboard-layout-editor.com/# ... 932d183892

Must go add a spacebar and 4 modifiers to round 5... ;)

User avatar
matt3o
-[°_°]-

01 Mar 2014, 09:45

I would avoid standard layouts, but if there's enough interest, no problem

User avatar
RaleghDirat
Prisoner of Technology

01 Mar 2014, 10:30

Guess I'm a sucker for classics: ISO356CL 8-)
http://deskthority.net/keyboards-f2/the ... -t255.html

User avatar
matt3o
-[°_°]-

06 Mar 2014, 09:08

sorry guys for being a bit lazy lately, I'll be back on this as soon as we close the IC for the PBT DSA GB

User avatar
snoopy

06 Mar 2014, 18:12

I literally can't wait for this to happen :D

Memoren

11 Mar 2014, 21:31

so has anything been finalized with ANSI vs ISO?

User avatar
Muirium
µ

11 Mar 2014, 22:15

Versus?

Each to their own. These are custom keyboards after all.

User avatar
mzero

11 Mar 2014, 22:26

Look this design (a real product), there is a gap between R-Alt and the arrows keys, that does looks fine.
Image You can find more pics at http://imgur.com/a/qjJlE ( GH user:acantha )

The big issue is find a set with short r-shift, it's quite complicated. I've given up with 1.75 R-Shift :(

User avatar
matt3o
-[°_°]-

12 Mar 2014, 00:14

PBT Granite!

Memoren

12 Mar 2014, 00:16

I have no experience with designing a keyboard what software should I use?

User avatar
matt3o
-[°_°]-

12 Mar 2014, 00:26

I use inkscape

User avatar
Muirium
µ

12 Mar 2014, 01:13

This specialised web app is proving quite popular:

http://www.keyboard-layout-editor.com

Anything that can draw squares will do. I use OmniOutliner. The vital thing is to make sure your designs use cap shapes that actually exist. They come in quarter units. 7bit's wiki page on Round 5 is a good place to look for all that:

http://deskthority.net/wiki/Round_5

And don't be afraid to share your designs!

User avatar
Muirium
µ

12 Mar 2014, 01:38

mzero wrote:The big issue is find a set with short r-shift, it's quite complicated. I've given up with 1.75 R-Shift :(
The PBT Granite that Matt3o refers to:
Image
Image

http://deskthority.net/marketplace-f11/ ... ml#p151153

A little GB he's organising. Should be pretty handy for custom builds, to say the least.

Memoren

12 Mar 2014, 04:19

Image
Would this be something I could pull off?

User avatar
matt3o
-[°_°]-

12 Mar 2014, 08:59

technically speaking, yes, it would be possible.

User avatar
Muirium
µ

12 Mar 2014, 10:26

Neat solution to the asymmetry problem. I'd make those double height caps into singles, for a numpad layer and easier sourcing though. But the overall slim layout is definitely neat.

IwishIcanFLighT

12 Mar 2014, 10:50

Hey there!

I'm a big fan of the Kmac Mini but since it is a very rare keyboard, I can't get my hands on it!
In other words: I'm really looking forward to this project! ;)

Post Reply

Return to “Workshop”