CNC cut split Keyboard

CNC cut split Keyboard

This is how I made a cnc cut pine wood split keyboard based on omkbd/ErgoDash.

The design

ErgoDash/Case/rev1.2/ergodash-rev1-2.svg at master · omkbd/ErgoDash
keyboard. Contribute to omkbd/ErgoDash development by creating an account on GitHub.

Took only the keyboard plate and did some inkscape magic design part, done.

You just need a 2d shape of the keyboard and add the depth in Jscut.

Tools and material

6mm router bit
1.2mm end mill
135x200mm pinewood 18mm thick (the wood we got had only 135mm width)
160x160mm birch 3 mm thick for the plate

Jscut

Now convert this svg to gcode for the cnc machine wich has grbl firmware. https://jscut.org/jscut.html will make the gcode from svg of course you have to configure the tool,depth,moving speed,size etc.

Make it all mm if you are not from USA and add your material thickness and clearance for your tool.
Upload your svg on jscut
Here is a sample operation

When create operation choose how to move your tool.
- pocket will creat cnc path to cover the entire area.
- Inside and Outside will make tool to move through the outline.
Here pass depth is 0.25. ie, every cycle cnc will shave 0.25mm from the surface, which will give cleaner cut with lesser noise and vibrations from the machine
Step over is for the tool path overlapping 0.75 gave a cleaner cut. but, lesser is better
save the gcode locally

Add spindle speed

Jscut won't set the rpm we have to add this manually
you need 3 gcode commands.
open the gcode on text editor


G21 ; Set units to mm
G90 ; Absolute positioning
G1 Z1.9999999999999998 F600 ; Move to clearance level
;
; Operation: 0
; Name:
; Type: Pocket
; Paths: 1
; Direction: Conventional
; Cut Depth: 10
; Pass Depth: 3.175
; Plunge rate: 60
; Cut rate: 200
;
; Path 0
; Rapid to initial position
G1 X92.5002 Y-73.7425 F600
G1 Z0.0000
; plunge

Gcode from jscut will start like this the rest will be X , Y and Z cordinate values.
You have to specify rpm values before that. I usually add after the comment ";plunge"

S10000
M3


- 'S' this command sets the rpm, above example will give you the 10000rpm
- 'M3' will turn on the motor
- 'M5' will turn off the motor (you have to add this command at the last lign of your Gcode)

Gsender

GitHub - Sienci-Labs/gsender: Connect to and control Grbl-based CNCs with ease
Connect to and control Grbl-based CNCs with ease. Contribute to Sienci-Labs/gsender development by creating an account on GitHub.

This will send your gcode to the controller with grbl firmware

This software worked well with GNU/Linux.

If does not work try installing ch340 drivers. If it works cheers!

sudo dmesg

confirm if device connected, if it shows up then continue.

sudo chmod 777 /dev/ttyUSBn
sudo usermod -a -G username dialout

Gsender talks with the cnc machine after this on my machine,

CNC 2418

Mophorn CNC 2418 CNC Machine GRBL Control CNC Router Kit 3 Axis with Offline Controller Goggles and Table Lamps Milling Machine for Wood PVCs PCBs(240x180x40mm,Offline Controller) - Amazon.com
Mophorn CNC 2418 CNC Machine GRBL Control CNC Router Kit 3 Axis with Offline Controller Goggles and Table Lamps Milling Machine for Wood PVCs PCBs(240x180x40mm,Offline Controller) - Amazon.com

This machine is smaller in size, split keyboards are the only option for now until x/y axis extension

The End