From ShapeOko
Revision as of 22:40, 30 August 2016 by Willadams (Talk | contribs) (Vacuum)

Jump to: navigation, search

Got tired of seeing my name in red in the recent changes....

I'm a graphic designer who purchased a (used) ShapeOko w/ the intention of automating some woodworking projects and extending my capabilities, esp. hoping to build my own custom brass hardware (and tools) so as to not be limited to what's available for purchase commercially.

I'm an admin on the wiki here, so glad to help out w/ any edits or other issues.

Author of The Rules of ShapeOko.


¼″ Drive Shaft Upgrade

  • ¼″ pulley
  • ¼″ aluminum rod
  • ¼″ flanged bearing (use a tapered reamer to enlarge the hole to 13/16″ so that the bearing fits directly, alternately make a bearing plate out of a dimensionally stable material such as hdPe))
  • 5mm--¼″ coupler
  • 4 7/32″ 1.5″ roll pins and 4 ½″ aluminum spacers (used as motor stand-offs) --- will eventually replace w/ 2″ roll pin
  • 4 M3 screws 50mm long
  • an assortment of washers

Other Upgrades

Since implemented double MakerSlide X-Axis, Acme Screw Z-axis and 1m Y upgrades.

  • drill new holes to rotate X and Y motors 45 degrees --- DONE!
  • drill new holes in X gantry plate to invert belt --- DONE!
  • use 10 1″ spacers for carriage--gantry plate --- DONE! but they wouldn't fit over the nifty new bolts, so had to use pan head screws and only used 6 spacers and an assortment of washers
  • enlarge motor shaft hole in Y motor plate to accommodate moving pulley to outside --- DONE! Will test and see if it needs a thrust bearing or something.
  • use ¼″ music wire and 1 ¼″ steel bar for Y-axis belt anchors --- DONE --- tried single track shelf wall standard instead of music wire --- didn't like it, but spare length of ¼″ aluminum rod worked,
  • use short lengths of single track shelf wall standards for X-axis belt anchors --- DONE --- but a hole needs to be enlarged --- DONE
  • run wiring --- DONE!
  • make a nice enclosure of Lego bricks --- DONE (but see below)
  • dust collection --- pick up Dremel EZ Twist Nose Cap and use it to hold a fashioned dust shoe in place --- DONE!
    99cent dust shoe installed.JPG
  • arrange and secure power cords, secure power strip --- DONE!
  • Go tool shopping (DONE!):
    • 1/16, 2.5mm and 4mm hex keys (36+67+81 @ True Value, but they're not ball end, so must be replaced)
    • fine tip screwdriver ($4.79 @ True Value --- replaced w/ a Starrett 559B)
    • 8mm open end wrench ($4.99 @ Sears)
  • Make nice fitted tool insert for cigar box --- DESIGNED --- just need to puzzle out extruding and differencing the tools ---Puzzled out --- next CAM and milling --- DONE Wfa-so-toolbox.jpg
  • make a nicer fitted insert for the cigar box cut out of basswood and lined w/ flocking and felt --- DONE
Current state, more-or-less

Alternative spindles

Picked up a 1/8" Elaire Corp. collet for a Makita RT070x router --- and a router to match. Working on a mount / dust shoe:

Harbor Freight ¼″ trim router

Worked up a mount and dust shoe set-up for a Harbor Freight ¼″ trim router:



3D Printer Extruder

Mount extruder on SO1:

  • E3D Lite
  • Smoothieboard Azteeg X5 mini
  • power supply --- 12 or 24V?

mount an extruder:

Notes on wiring up a hot-end:




Calibration notes

extruded filament width ~= 0.016" (0.4064mm) -- 0.0175" (0.4445mm)

0.5mm thin wall box (sliced solid) --- wall thickness ~= 0.020" (0.508mm) -- 0.030" (0.762mm) --- the latter number seems to be from mis-aligned layers --- need to tighten up the Z-axis carriage.

Z-axis layers:

1/2560*200*3 == 0.234375
1/2560*200*2 == 0.15625



Azteeg X5 mini v2

pins (i.e., gamma_en_pin did not have ! after? 0.21! )

Projects --- board claw

Materials to try


Hardware to try

Remaining things to do:

Drag knife


  • add connectors / wiring to SO1 to match Ordbot
  • work out management for Makita power cord and vacuum hose --- build handle arrangement using hanger fixtures and strapping, use pipe or closet rod for handle
  • figure out how to invert belts on X-axis --- probably will do this by getting M5 hex bolts and grinding off a side so that they fit snugly against the side of the motor
  • make a nicer enclosure of Lego bricks --- need to hide away the wires for the p.s. and fan inside the enclosure DONE --- TODO add transparent bit for power LED, add push through stick for reset button
  • replace remaining nylon spacers w/ metal, use 2″ 7/32″ roll pins as stand-offs for Y-axis motor (replacing 1.5″ pins and ½″ aluminum spacers) use 1.5″ pins on spindle mount


  • drill new holes in X gantry plate for second pair of bolts
  • sound enclosure
  • replace standard carriage plate w/ steel version
  • replace Z-axis delrin blocks w/ aluminum

Maybe Eventually

  • replace zip ties w/ cable drag chain
  • drill holes and fasten X-axis MakerSlide together or use Kbot3d's Makerslide Joining Clips
  • maybe re-work belt position, maybe use cable clamps instead of zip ties


  • drill new holes for side vice, mount new T-nuts (or use threaded inserts) --- DONE
  • design nicer / larger / roomier / easier-to-install transparency dust shoe --- DONE

Diamond, Circle, Square

Results (w/ Dremel 4000 and short bit)

  • Diamond 1.278, 1.273, 1.277, 1.270 avg. 1.2745 (==1.39194 less runout) ==2.98298mm
  • Circle 1.841″, 1.840, 1.85, 1.842, 1.840, 1.851, 1.2842, 1.840 avg. 1.84325 (==1.9685 less runout) ==3.18135mm
  • Square 1.843″, 1.839, 1.843, 1.838 avg. 1.84075(==1.9685 less runout)==3.24485mm


  • Mount piece right (nice) side up
  • re-work G-code to cut deeper? Check Z 9.1948/9.0678 total diff 1.651/1.524 7.5438 circle diff 1.1938 6.35 square diff 1.2192 5.1308 --- CHECKED --- Z had wrong setting in Grbl --- FIXED
  • Add orientation marks to code
  • dust shoe tends to collapse --- add a right angle / elbow inset to focus the vacuum where it's needed and provide more structure and direction to the air --- DONE --- run vacuum on lowest setting --- HELPS --- monitor vacuum and turn off / on or increase speed temporarily to clear things



pocket 3 diam 3.175 depth -2.25 safety 3 surface 0 step over 30% down 1.25 roughing 0 feed 710 plunge 355

profile 4 diam 3.175 depth -5 outside safety 3 surface -2.25 down 1.5 roughing 0 feed 710 plunge 355



Diameter 3.175mm Depth 0.2mm Step over 50% Feed 213.446mm plunge 26.681mm RPM 8403 (setting 1 on Makita ~9470rpm)

Box joint fixture

Three parts:

  • thick board clamped to Wasteboard w/ two cross dowels and pocket to hold board in alignment
  • board w/ matching pockets to hold second board at 90 degrees vertical off front of machine
  • board of known thickness and matching pockets in width w/ hole in center to receive endmill so as to align


Original Grbl Settings

(This is for the AtomCNC board running Grbl 0.8a)

$0 = 174.98
$1 = 174.98
$2 = 377.89
$3 = 30
$4 = 500
$5 = 500
$6 = 0.10
$7 = 136 !?!
$8 = 15.00
$9 = 0.05

ShapeOko 3

Home/Limit switches

Home/Limit switches --- DONE installed Tim Foreman's nifty kit

Touch Plate

Touch plate. DONE --- improve plate part w/ a spring-loaded disk and nice housing --- create multi-function device which also works as a touch probe


Wireless --- use Raspberry Pi mounted to gantry to control the Carbide Motion Board --- use Bluetooth Wii Remote as pendant

Wider Belts

Upgrade XY belts to 9mm Belt anchors and idlers will work as is. Needs new belts and pulleys. --- DONE

test / comparison cuts w/ 6mm


Should add spacers and longer bolts to Y-axis to match X.




Print new pulley: A 6R51M258060 Single Sided 2 mm (GT2) 258 6 Neoprene Fiberglass 516

Or: or









Primed MDF:


2 x --- one for vacuum inside bucket

two 120 degree elbows for vacuum connection

two straight couplers for hose connection --- run through center of lid --- ensure top of extension wand is lower than handle

two lengths of PVC pipe

extension wand to couple --- cut in half, one connects to vacuum, other to hose


Work up 3D printed design for centering vise angled table jig? Way to mount workpieces to front of machine at 45/90 degree angles to cut joints?

Work up design for 4th axis, repurposing spare motor for rotational axis --- control electronics?

Acme screw


Grbl settings:

$0=10 (step pulse, usec)
$1=255 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=6 (dir port invert mask:00000110)
$4=0 (step enable invert, bool)
$5=0 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=255 (status report mask:11111111)
$11=0.020 (junction deviation, mm)
$12=0.010 (arc tolerance, mm)
$13=0 (report inches, bool)
$14=1 (auto start, bool)
$20=0 (soft limits, bool)
$21=1 (hard limits, bool)
$22=1 (homing cycle, bool)
$23=0 (homing dir invert mask:00000000)
$24=100.000 (homing feed, mm/min)
$25=1000.000 (homing seek, mm/min)
$26=25 (homing debounce, msec)
$27=5.000 (homing pull-off, mm)
$100=40.15748 (x, step/mm)
$101=40.264567 (y, step/mm)
$102=40.000 (z, step/mm)
$110=5000.000 (x max rate, mm/min)
$111=5000.000 (y max rate, mm/min)
$112=5000.000 (z max rate, mm/min)
$120=400.000 (x accel, mm/sec^2)
$121=400.000 (y accel, mm/sec^2)
$122=400.000 (z accel, mm/sec^2)
$130=425.000 (x max travel, mm)
$131=465.000 (y max travel, mm)
$132=80.000 (z max travel, mm)

$0=10 (step pulse, usec)
$1=255 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=6 (dir port invert mask:00000110)
$4=0 (step enable invert, bool)
$5=0 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=255 (status report mask:11111111)
$11=0.020 (junction deviation, mm)
$12=0.010 (arc tolerance, mm)
$13=0 (report inches, bool)
$14=1 (auto start, bool)
$20=0 (soft limits, bool)
$21=1 (hard limits, bool)
$22=1 (homing cycle, bool)
$23=0 (homing dir invert mask:00000000)
$24=100.000 (homing feed, mm/min)
$25=1000.000 (homing seek, mm/min)
$26=25 (homing debounce, msec)
$27=5.000 (homing pull-off, mm)
$100=40.000 (x, step/mm)
$101=40.000 (y, step/mm)
$102=40.000 (z, step/mm)
$110=5000.000 (x max rate, mm/min)
$111=5000.000 (y max rate, mm/min)
$112=5000.000 (z max rate, mm/min)
$120=400.000 (x accel, mm/sec^2)
$121=400.000 (y accel, mm/sec^2)
$122=400.000 (z accel, mm/sec^2)
$130=425.000 (x max travel, mm)
$131=465.000 (y max travel, mm)
$132=80.000 (z max travel, mm)

Positioning centered at the front of the wasteboard, just above the worksurface:

X = -211.500
Y = -359.000
Z = -41.200

Vector apps


Communication / Control Program Ideas

Rework: ---

Potential Toolkits:

To do:

  • collect screen grabs of extant comm/control programs
  • see if can actually communicate on Windows, Mac OS X and Linux (running on a Raspberry Pi)

or, just use bCNC.


Tools to buy:


Consider (or bought):




  1. Jack Plane
  2. set of Bench Chisels; should probably include at least a 1/4" and 3/4".
  3. a good Tenon saw, or dovetail saw. These will work for joinery as well as crosscuts and basically anything except ripping long lengths to size. You can also get a rip saw if you really want to. Don't bother with a crosscut; though you probably already have one anyway.
  4. a drill. You could opt for gimlets and a bit and brace, or egg-beater style hand drill. A conventional electric drill may be the cheapest option though.
  5. a file and rasp. A 4-in-1 rasp will handle most of your shaping needs, and I like a half-round file as well.
  6. a scraper. Cabinet, or card scraper. Just something to smooth surfaces that are prone to tearout.

Minimalist Set

  1. Stanley #1 Odd Jobs
  2. Stanley #62 four fold rule
  3. Jack Plane
  4. smoothing plane
  5. Stanley #12-250 combination plane
  6. block plane
  7. Bench Chisels: 1/8, 1/4, 3/8, 1/2, 1", 1.5"
  8. dovetail saw and guide
  9. magnetic guide saw
  10. job saw and miter box
  11. Japanese flush cut saw
  12. screwdriver and bit set and Yankee screwdriver
  13. gimlets and a bit and brace and egg-beater style hand drill and bits and Archimedes drill
  14. flat file, 4-in-1 rasp, half-round file, needle file set and handles
  15. card scraper set
  16. gun smithing hammer
  17. machinist hammer w/ magnifying glass
  18. Starrett screwdrivers
  19. calipers
  20. needle nose pliers and snips
  21. General drill gauge
  22. Japanese marking knife
  23. countersink
  24. sliding bevel
  25. widow’s tooth
  26. deadblow mallet
  27. plane cap screwdriver
  28. marking gauge (shop made, pin style)
  29. double-ended pocket marking gauge
  30. veneer saw

Probably remove

  1. Zona razor saw and guide

Consider adding

  1. Flexcut Carvin' Jack, Right Hand
  2. 5" Knew Concepts Alum. Fret Saw
  3. Gouge
  4. 12' Lufkin tape measure (w/ new tape)
  5. 3-in-1 marking gauge


  1. nail set set with Japanese Nail Set,53193&ap=1 or

Combination Tool Set


Combination Tools

Styles of combination tools:

  • Multiple tips / recesses --- Classic example is a double-ended wrench. More complex examples are the T-shaped tools used for specialties such as chainsaws or skateboards
  • removable parts --- e.g., a 3-in-1 plane which goes from shoulder to bull-nose to chisel, similarly, a gunsmithing hammer w/ screwdrivers hidden w/in the handle
  • folding / mechanisms --- the Swiss Army Knife (arguably a subset of the above). This also allows for more complex mechanisms such as the folding pliers of the original Leatherman Pocket Survival Tool

Laptop bag

3/16 hex will remove the grip from an ar15. Torx t20 and 25 are very popular. The largest slotted bit fits a bunch of gun screws. Ph0 and ph1 are very handy too.



To start[3]

  • L allens
  • screw drivers
  • pliers
  • wrenches
  • slick honey type of lube for cables and a park tool chain lube (you can use this on many things besides the chain)
  • a nice spoke wrench

  • Altoids tin toolkit. I carry a tube, patchkit and pump/CO2 as well.

Allen wrenches, a full run from 2 to 8mm. Wrench Force wrench with 8mm and 10mm and caplifter. 2 tire levers, one has Duct tape wrapped around it. A shimano wrench that fits 9mm, crank dustcaps, and chainring bolt rears. WTB chaintool with bailingwire wrapped around handle. Small half-round file. Short length of hacksaw blade. SeberTech M4 tool, pliers and wire cutters will cut 2mm brake cable, also has blade, bottle opener, tweezers, small file, phillips and straight screwdrivers. 3 Topeak dog-bone spoke wrenches cover all common sizes. Presta to Schraeder valve adapter. Shimano chain pin. Master link for chain. Spare chainlink. Spare chainring bolt. Spare waterbottle bolt and nut. Spare cleat bolt. A wet-nap to clean up with afterwards.

  • 2 tire levers, shortened, with duct tape.

Shortened ballpoint pen (marks puncture location on tube also). Half-round file. Craftsman ignition wrenches, 8, 9, 10mm. 3.5" adjustable wrench. Piece of a hacksaw blade. Allens: 6, 5, 4, 3, 2.5, 2. 8mm to 6mm allen adapter. Spare chain link. Wrench Force 4-way spoke wrench. Botle of chain lube (Eye drop containers are very useful for this purpose). Lip Balm container filled with grease. Matches sealed in plastic. 2 strips of double-sided tape. Small Compass and Thermometer/Windchill gauge. Emergency whistle. 2 tubes of patch glue.


  • 14mm wrench --- kick stand


  • 10mm flex head ratchet[4]
  • 15mm box wrench (for removing/replacing wheels)
  • Allen keys
  • Pedal wrench/spanner
  • BB removing tool
  • Chain whip
  • Cassette remover
  • Grease Degreaser Lube
  • chain tool
  • cable/housing cutters
  • spoke wrench
  • torque wrench
  • Knipex Cobra, 125mm



  • zip ties
  • electrical tape
  • large plastic trash bag
  • gloves
  • hose clamps (incl. one on seat post)
  • fiberfix spokes






Thanks. That was all from the wiki though.

This is long and rambling 'cause I haven't had a cup of tea or coffee yet and initially misread the query and I'm not in mood to delete all that I've written. It includes some speculation, 'cause I don't know any more than anyone else, or what has been publicly stated. Hopefully it will be helpful and informative. If not, ignore it.

Sending G-code is a simple process --- you can do it w/ a terminal program, I'd much rather the effort was all unified into a single stack of modular programs, but I guess modern computer architecture doesn't support that.

There was never any real discussion of making Universal G-Code Sender the default, it was a unilateral decision by Edward back when we were doing the SO2 docs. As I've noted elsewhere, I mislike Java, so am biased and try not to say more than that. It certainly works well for people who can run Java on their machines, and has some nice features.

I suspect we may get a new control / code sender program, possibly derived from the Carbide Motion program --- but nothing official has been said to indicate or support this, just that Edward has had better software on his to-do list for a while, and I can't think of anything else which could require so much time.

Tl;dr --- currently I'm most familiar w/ and use

Remember the old saw:

- good
- cheap
- fast

Pick any two.

That applies here. Most of the opensource options have clunky interface options and weird little difficulties w/ their output. While philosophically, I'd like to limit myself to opensource, I find myself drawing most things in Freehand, simply because nothing else is as efficient and as precise, let alone elegant. If my NeXT Cube was still working, I'd probably still be using Altsys Virtuoso.

Inkscape and MakerCAM and GRbl Controller work for me, albeit w/ the odd crash (running MC locally helps) and the need to trim files after the fact (yeah, it's supposed to happen automatically, I'd rather just do it up front).

Presumably MeshCAM, since it's done by a Carbide3D partner will be well-supported --- it is integrated into and included with their smaller, pre-assembled machine, the Nomad883.


Ingratitude perverts all the measures of religion and society, by making it dangerous to be charitable and good-natured. --- Thomas Tomkins, [i]Beauties of Writing[/i] 1777