K40 lasercutter

My Chinese lasercutter which I bought back in 2014 has been upgraded over the years.  As many others do, I got the cooling system for the laser tube inside the casing, added some LED lights inside and also added an air pump for the laser head.

All in all the machine works fine now but the relatively small working area remains the bottleneck for using this machine for real interesting projects.

Mid-2020 I used the laser cutter for a couple of projects where I needed series of cut acrylic.  The machine handled this flawlessly, but I did put it outside to prevent any smoke from entering our home.

I do have some ideas about upgrading the machine with a larger workspace and put the electronics and water cooling system in a seperate housing.  No materials are needed for this, except 3 linear rails and some aluminium profiles.  But- (status May-2021)  I will start this project only if there is some work to be done with the machine since it is already working fine as it is, although the workspace is limited.

I use Inkscape (freeware) for making designs in SVG and import these .SVG files in K40whisperer (also freeware) which then  can send the required Gcode to the K40 lasercutter. This all works very well and fast, you don’t need a fast computer for this.  I use a 10 year old dedicated HP laptop for this.

In future use I want to make this lasercutter use the same board as I am using with my big LED laser cutter, so I can use GRBL on both.

As you probably know, a K40 or any other CO2 lasercutter can cut a specific kind of materials while a common LED lasercutter can cut other kind of materials better, due to the used kind of light on both which differ in wavelenghts.

The CO2 cutter can cut acrylic easily and the LED laser cutter can’t.

The LED cutter requires some sort of substance in the to be cut material to work properly.

Be aware that the security goggles you need also are specific for either macine.

The original driver board of the K40 CO2 lasercutter
First cut on a piece of tripledeck 4mm multiplex for my clock pieces
The clock’s interior and stand pieces, wood and acrylic. Both cut on the K40
The inside of the K40’s work space with the debree on the bottom. The air hose is green silicon. Also added an emergency cutoff switch for the laser tube. open the hood and the power stops.
The electronics and water cooling on the Right hand side of the K40’s housing. The air cooled radiators are just out of sight to the most right hand side of the housing, 3 pieces of 40x40mm
The acrylic cut for the clock, done in 1 time. This is 3 mm thick.
The thermostatic control of the coolant pump, taken out of its case to set the working temperatures
My solution for the cutting bed was to use an old footboard maze and I welded 4 nuts in it with long bolts that act as feet. This makes it possible to adjust the height 1x for optimum focussing the laser in the center of the to be cut material.

IndyMill CNC machine

Since Corona was still around (May, 2021) , I had some time available to spend on other things than just work.

I already had an upgraded 3018 CNC-machine with a 0.5 kW spindle motor,

and a simple GRBL 3- axis board that works very well.  But- it would be nice to make a CNC machine that can really work with aluminium and possibly also with copper and brass.  I have already done some research in the past about what sort of CNC machine would be right for my goals. And the IndyMill CNC macine was already on my mind for over half a year.  So-last week I ordered the manual and the steel plates

for the build and ordered some other parts from Ali.  I also have quite a lot of parts on stock, from my 3d printer supplies.  The Nema23- motors and the extrusion, motherboard, drivers, power supply, switches and probes are already available.

2021-5-09; First parts delivery for the Indymill: 3 ball bearing leadscrews with kit of end bearings and screw block holders, the frequency regulator 1 phase in, 3 phase out and the 1.5 KW 3 phase spindle of 3.6 kilograms

The required printed parts are being printed right now (early May-2021). I am printing all the upgraded STL’s, latest version as these are freely available  on Thingiverse (just search for IndyMill) .  And then you see the power of sharing: the design was already great, and with the upgrades it got even better.  The upgraded versions of the mounts for the linear bearings are really a lot sturdier than the original design and the new endstop holders are very handy to have.

I roughly calculated the costs for building this machine and it was a lot cheaper than buying a similar CNC machine of this size.  If you purchase wisely, the costs for all materials can be just under Euro 1000, if you follow the original BOM and including the 1.5 KW air-cooled spindle motor with regulator…

If you want to install another board than the standard Arduino UNO with the standard Arduino CNC shield,  this can set you back an additional amount of 120 to 500 Euro’s.  I use a FLY_CDY_V2 with Mellow’s original TMC2209 stepper drivers. DO NOT FORGET to set the switches on the underside of these steppers to ON if you want to use sensorless homing!

My add-ons  to the original build:

  1. Currently I use a 10 Amps detachable 24V PSU, will become a 30 Amps one.
  2. Sesorless homing with the use of a FLY-CDY-V2 motherboard and TMC2209 stepper drivers.  This works awesome but I moved on to add endstops and make a more stable and exchangeable setup.
  3. Original  mounts and usage of the ball bearing screw nut’s holder, and of the BK12 nd BF12 original bearing holders to keep the ball bearing screw from moving the wrong way.
  4. Altered Z axis setup with a better nut holder, and a better top bearing
  5. .
  6. Closed loop NEMA23 stepper motors drivers MKS Servo57A V1.0 will be fitted to the rear of the steppers, still to be mounted but will conflict with sensorless homing

    Nema 23 stepper with the Closed loop kit
  7. 10 mm GT2 200mm belt between the Z motor and the Z-leadscrew with GT2 10mm wide 16-teethed wheels
  8. Add a ‘CNC pendant’ manual control device.
    • Block ImageBlock Image
    • On the Duet support website a project is available to convert such a device to a serial interface, with a programmed Arduino (pro) mircro or -nano built-in the device:
  9. Solid connection plate between the rear side of the upper and lower linear rails of the X-axis. Still to come.
  10. Piezo-probes on all axes’s start- en end positions, instead I first setup the FLY CDY V2 reprap board with TMC2209 and sensorless homing, and later with mechanical endstops.
  11. Coolant mist installation and fluid gathering-, pump, reservoir et cetera is ordered. Stll to be installed, and the pumps were not supplying sufficient pressure for the flood mist, have to look for another solution.
  12. Independantly driven (and independantly finetuned homing) Y-motors to prevent any possible problems between left and right. This works flawless with the FLY_CDU_V2 reprap setup but it took me quite some hours of finetuning to work with the 3.5 kilogram heavy spindle motor…
  13. 2080 profiles all around (also front and rear) with 4 extra-wide corner brackets underneath.  I chose to implement this differently with 3 additional bottom connections and corner brackets, since I need the front of the frame to be low and give way to the spindle vacuum hose.

    Amd – the frame as it is ready, but with the spindle holder of the 500 Watt motor. I will not use this motor after all for this build–
  14. Smart enclosure with Scheppach vacuum cleaner connection like this example from https://www.shophacks.com/cncenclosure.html#/  THIS IS REALLY NEEDED! Advantages of using an enclosure for your CNC router - SHOP HACKS

    My solution for an enclosure ia a 84x78x45 cm flightcase
  15. Protecting guards for all leadscrews and linear rails (ordered in China)
  16. Later if possible: Wheels on the rear or on 1 side and a handle on the front (or other side) to stow and store the machine easier
  17. Easily detachable control unit(s) with solid connectors

I started with a FLY_CDY-V2 reprap board to experiment with reprap CNC and the webinterface that has been developed for this setup.

This is achieved with  smart dual homing of the dual Y axes, and gives me a lot more control on the machine. It is also already possible to just send GRBL-based Gcode to the USB port of the machine and use the reprap FLY board simply as gcode-interpreter to steer the machine.  But for now I use the webinterface to upload and run any gcode.nc CNC file, which works perfect!

Picture of the CNC-adapted and already available webinterface for reprap, especially tailored for CNC (by Sindarius, work ongoing):

Pictures are already published about this build!

IndyMill CNC: GT2560 GRBL 5-axis controller

In my search for the best affordable CNC motherboard for my new to build Indymill CNC machine  I finally chose the GT2560 from Geeetech as best compromise.  At least for now, and maybe later I may change to an RRF3 board with a good remote CNC interface like the Mellow Fly-CDY-V2.

GT2560 3D Printer Controller Motherboard Mega 2560+Ultimaker Ramps 1.4 Geeetech Other Electrical Equipment & Supplies com Business & Industrial

The board has a budget price and utilizes an atmega chip with great performance.

The board does not come with the CNC GRBL firmware installed, you can get the required arduino library HERE for the Arduino Mega with the add-on RAMPS 1.6 board and HERE for the GT2560 integrated board!

The nice thing about this board is that it can be flashed with the arduino IDE, and I like the board especially because I can plug in the NEMA23  closed loop stepper motor  cables directly in the driver connectors of the GT2560 board.  By doing so, I don’t need the lumpy seperate 6600 driver units and I never miss a step.  These closed loop drivers get attached to the rear of the Nema23 stepper motors and use the 24 Volts from the wiring to the GT2560 driver socket.  The max Amps is 4 Amps per unit and this is enough to have good CNC results.  I also added the tiny LCD’s into the closed loop units, this makes it possible to perform local management like the initially required one-time calibration of each stepper without the need for a PC. And= the display also shows the status of the stepper motor (errors, missed/corrected steps etc).

The required Gcode can easily be made with Esticam.  I first make my design in Openscad, export the design as .STL file in the highest resolution ($Fn at 128 or higher) and import the STL file in Esticam.    Then I use Esticam to send the Gcode via a USB cable in the GBRL format to the GT2560 board.  BUT- it is also possible to save the CNC file output from Esticam and put it on an SD card.  The LCD unit that is attached to the GT2560 accepts SD cards (formatted as FAT 32) so you can work independantly of a PC.

Or- you can connect your Mega2560 to a Raspberry PI and use the Raspberry PI as webinterface , to control your CNC machine via wifi from your PC or phone/tablet.

Please read on about how I use this setup for my IndyMill CNC machine!


CNC pendant for Duet2wifi and Indymill

On the Duet support site a very good description and software for rebuilding a Chinese CNC-pendant for the Duet2wifi is available.

I used this description to program an arduino pro micro, and connect it to the pendant wired, place it inside the pendant and connected the pendant with 4 wires to the Duet.  This works very well.

In the process, I developed some schematics that may be useful to you, available in this post:

Needed: an arduino pro micro and a pendant like this:

China Universal 5V 100PPR CNC 4 Axis Mpg Pendant Handwheel and Emergency Stop F/ Siemens - China CNC Handwheel, Mpg Handwheel


In the above picture, the coloured wires on the inside of the CNC pendant are shown. These wires need to be soldered to the correct pins of the Arduino pro micro (at the right)

Reprap CNC with Mellow FLY-CDY-V2 – Duet2wifi clone

To get the Indymill running, at first I chose to use the Duet2wifi and reprap3 as base. 

Since I am very familiar with Reprap and with the Duet, I want to try this anyway. 

In the end, if it is all installed I need to have software to design and get a file with Gcode and this will be sent to the Duet2wifi controller via wifi, using the Duet’s webinterface that is been developed  for CNC in Beta (DWC for CNC). 

I currently use Openscad for designing, export as .STL and then make a .nc file for the CNC machine from this with Estlcam. 

In Estlcam you can make the machine-specific settings like where the center is, how to set Z=0 et cetera.

The Duet2wifi is my favourite solution because I can if so desired use sensorless homing on any axis.  And- because I need to home 2 independant Y axis and I have a lot of experience in making this work I first went for this solution. For my settings with sensorless homing please see THIS POST 

When you get a good enclosure for the Duet2wifi, use 24 Volt PSU and good driver cooling blocks, you can push the Amps to over 2 Amp continuously.  Works well with my Nema23 steppers.  2.5 Amps is max but we don’t want that,  I found that 1.8 Amps works very well and creates enough torque for the Indymill.  

After having the Indymill work with sensorless homing I rebuilt all to be used with endstops instead for better stability and compatibility with my other driver board setups.  I do want to use the Indymill with several driver setups, and for this setup to be exchangeable, I need the endstops anyhow.  



I am currently using reprap boards from Mellow, since they use the raprap firmware that is ported to the STM core that the Mellow boards use.

On top of this, on the esp you can  mount the Duet’s DWC software and thus also the DWC CNC software. 

I have this currently running on the Indymill with a FLY-CDY V2 board and TMC2209 drivers. 

The nice thing about these Chinese boards is, that you can mount any driver you like, and this means that external drivers is also possible.

So, also the external add-on drivers that do closed loop control can be used.  < I was thinking to make this my additional project: Try to do sensorless homing on the Y axes with this, use very low power and switch off the Closed loop during homing.. If I can get this to work, you will read all about it!>

For the Duet, a setup is available on the Duet website to use an original pendant handwheel unit and add an arduino Pro micro to make a serial interface for connecting to the Duet!  That is a very welcome addition.  See this post!

In the next part of this post my current config file with endstops for Duet/reprap/FLY is shown, as this is operaional for the Indymill.

BE AWARE to use the most current DEVELOPMENT firmware versions for a) the board’s initial firmware, b) the DWC firmware and c) the wifi esp program!

; Configuration file for Board: fly_cdyv2 (STMWiFi)
; Firmware: RepRapFirmware for STM32F4 based Boards 3.3beta1_3 (2021-03-08)
; Duet WiFi Server Version: 1.25-01S-D
; DWC from Sidarius, specificlly redesigned for use with CNC 3-axis
; customized by Jan Griffioen sales@jmwg.nl 2021 04 08
; Made for a CNC Cartesian printer with single X,double Y and single Z steppers and a single spindle with external driver.

; General preferences —————————————————————————————————————-
M453 ; CNC Mode
G90 ; send absolute coordinates
M83 ; and relative extruder moves
M550 PDUET_CNC ; set printer name
M551 Preprap ; Machine password
M552 S1 ; WIFI ON

; Network —————————————————————————————————————————-
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet
M552 P0.0.0.0 ; IP address ( = use DHCP)
M554 P192.168.178.1 ; Gateway
M553 P255.255.255.0 ; Netmask
M555 P2 ; Set output to look like Marlin
M575 P1 S1 B57600 ; comms settings S1 for Original PanelDue and Fysetc 7 inch TFT =OK

; Drives —————————————————————————————————————————-
M569 P0 S1 D2 ; physical drive 0 goes forwards using default driver timings
M569 P1 S1 D2 ; physical drive 1 goes forwards using default driver timings
M569 P2 S1 D2 ; physical drive 2 goes forwards using default driver timings
M569 P3 S1 D2 ; physical drive 3 goes forwards using default driver timings
M584 X0 Y1:2 Z3 ; set drive mapping
M350 X16 Y16:16 Z16 I1 ; configure microstepping with interpolation
M92 X640 Y640:640 Z1600 ; set steps per mm
M566 X500 Y500 Z300 ; Set maximum instantaneous speed changes (mm/min)
M203 X2700 Y1400 Z1000 ; Set maximum speeds (mm/min)
M201 X300 Y300 Z150 ; Set accelerations (mm/s^2)
M906 X1800 Y1800 Z1800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S100 ; Set idle timeout

; Axis Limits ————————————————————————————————————————-
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X500 Y480 Z100 S0 ; set axis maxima

; Endstops —————————————————————————————————————————-
M574 X1 S1 P”^xmin” ; configure active-high endstop for low end = LEFT on X via pin xmin
M574 Y1 S1 P”^ymin+^ymax” ; configure active-high endstop for low end = REAR on Y1 and Y2 via pin ymin and ymax
M574 Z2 S1 P”^zmax” ; configure active-high endstop for high end = TOP on Z via pin zmax

; Z-Probe ——————————————————————————————————————————
; a probe must be defined here to have a Z=0 DATUM, including the offset (when there is any, If you use the tip of the tool no offset is required. OR, use manual Z-datum setting via a dedicated macro!

; Mesh G29 —————————————————————————————————————-
;M557 X15:215 Y15:195 S20 ; define mesh grid to be called upon by G29 for an authentic Mesh bed levelling IF this is required and possible

; Fans ———————————————————————————————————————————–
M950 F0 C”fan0″ Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0.5 H-1 ; set fan 0 value. Thermostatic control is turned off

; Tool definition section; —————————————————————————————————————-

M950 R0 C”!e2heat” L25000 ; Create spindle index 0, with PWM pin on heater 2 output and 25000 RPM achieved at full PWM. At this port, add a PWM-> Voltage 1-10V converter!
M563 P1 S”Spindle 1″ R0 ; Create tool 1 with spindle 0 and call it “Spindle 1”

; Miscellaneous —————————————————————————————————————————-
M140 H-1 ; Disable heated bed
M564 S1 H1 ; Disable jog commands when not homed
M98 P”customconfig.g” ; Execute custom config settings

; Epilogue ———————————————————————————————————————————
;M556 S78 X0 Y0 Z0 ; Axis compensation here if needed
;m98 P/sys/leds_show.g ; Neopixels show (max number is 60)
;m98 P/sys/leds_off.g ; Neopixels OFF (max number is 60)
T0 : select first Tool
M501 ; execute config_override.g

Plasma cutter router DIY ‘the simple way’

I am in the process of developing a router for my plasma cutter, since the cutter works very good but it will be way more effective once I can machine my designs with a router for this cutter.

Example of a very big X-Y design for a Plasma Router on Aliexpress

My design differs from others because i will use only existing affordable parts that require no additional machining.

Firstly, you would need a cutting table with a maze where you can put your steel on, when cutting.  This maze will be enclosed with a steel box so no cutting debree will be thrown around.  Around the box a set of aluminium or steel profiles will be mounted on which the wheels for the X or Y axis will be built. From here on, a normal router setup can be made.

The plasma head will need to be adjustable in height but does not neccessarily need to be CNC movable.  Just a manual knob to move it up and down a little will do.

So, only 2 axis are to be made with CNC.

For the Y axis I will use a complete accessory from AliExpress with ball bearing 1604 and an effective way of 600mm, including  a Nema23 stepper motor.

Y-axis 1204 ball bearing screw drive, NEMA23 stepper motor and dual linear rails.  This will move the plasma head left and right.  I might use something a bit simpler that this…

X-axis on both sides of the box that will move simultaneously forward/backward with steppers mounted in series, the Y axis will be mounted in between.

The plasma cutter ‘head’ will get a fixed (but a bit vertical movable) mount on the mounting plate of the Y-axis.

Magnetic Breakaway CNC Plasma Torch Holder
Magnetic break-away torch mount

And the mount for the head of the plasma cutter

The electronics will be added at the front of the Y-axis in a 3d-printable box. (or you can buy a ready-made box HERE).

Electronics will be an Arduino UNO with standard GRBL shield, or THIS as a better all-in one solution, including local router managing.  At the beginning and end of each axis, a limit switch will be mounted.  Switches, cabling and mounts are available on Aliexpress  HERE and HERE.

Firmware for the Arduino comes from the widely available GitHub and the GRBL community.  GRBL software is available for Windows PC and MAC as well.  Designing can be done in any way, and the most simple way will be the online Cad solutions like Tinkercad .

Kid's Privacy Safe Harbor - BBB CARU

The power supply for the Plasmarouter will be a 24 Vols 8 Amps portable power supply like THIS one.

Indymill iron hardware treatment

The required iron plates were not available in ready- to use state at the time I needed this, fortunately I could buy the plates as a kit with all of the drilled holes already in it, non-painted.  And- all of the thread tapping still needed to be done.   Since I am also making changes to the design of the millling machine,  some holes will be altered and this is best done when the plates are not yet painted.

The raw streel for the Indymill.  I put small colored circles  where the thread needs to be tapped.

Rustpreventing primer spray-painted the Indymill’s iron plates




Milling the Indymill parts

My very basic mill is just an old drill machine with a large X-Y cross table mounted underneath. But- for basic milling it works.

In the process of change: My HBM25 lathe is going to be changed (temporarily) to act as mill. I need some parts milled flat and square, this will do that. Waiting for the MK4 sleeve for my MK3 milling head…

All mounted to the lathe

Indymill adapted frame and -Y-axes build instructions

In this post, you can see how I changed the original Indymill to more rigidity by using the original 1605 aluminium nut holders for the 1605 ball bearing screws of the Y axis, and how I made use of the BK12 and BF12 ball bearing blocks instead of the 3d printed parts like in the original build.

Yesterday 2021 05 22 I cut the aluminium profiles that are required for the frame of the Indymill.  My metalsaw is set at the perfect 90 degrees angle that you need for these aluminium extrusions

Today I put the frame parts together, based on the changes that I made to the ball screw holder block and to the screw bearings and -holders. And- overnight I spraypainted all metal parts red.  Used just what was lying around.

Left side, left is the Nema23 motor, and the BK12 bearing block is now connected to the engine plate with an ABS sideways printed connecting piece. ( I found the PETG printed parts I made earlier to break on the sleeve at the left when applying force, so I went for ABS and I printed it as you see here with supports to give strenghth for the bolts and nuts.) To the right, the aluminium nut holder is placed. This has been milled down and new screw holes were made in the holder and plate to connect it to the plate (see the text later in this post)

same treatment on the right hand side

Overview of the RH side with the end bearing and -block, connected to the front plate bearing holder. I milled additional holes in the bearing blocks (front L&R) to (re-) use the tapped M5 holes that are already in the red connecting plate

When building the frame, make sure that you do not initially screw anything tight.  Follow the steps that apply to any build:

  1. Make the footprint square by measuring either with a good 90 degrees angled measuring hook OR measure the diagonals against each other and make them alike.  Then, tighten all corner screws .
  2. Re-measure the footprint’s left against right length and also front/rear length. If there is any difference here,  a) take everything apart and b) make sure you have equal sizes for your build where this is required.  OR, if you have a non-standard build, make sure you build according to specs sizes. The, do 1. again.
  3. For a lineair rail: use a ruler that is specifically made for your type of rail  You can 3d print one or buy two aluminium ones.  ALWAYS use at least 2 rulers!  With the rulers in place at 20% from left and 20% from the right,  after you have installed the rail loosely with the screw in the nuts, tighten the screw a bit but not too stiff..  We will get back to these screws at a later stage.
  4. Put the connecting piece on the motor’s axle (8mm side) and tighten this well.  Preferably, use some loctite on the axle but don’t overdo it.  Be aware that you need to testfit the BK12 first.  make sure that the connecting piece almost touches the BK12’s nut!
  5. Put the stepper motor and the BK12 connector together, using the 3d printed thin NEMA23 adapter plate between motor and steel plate. Do not yet tighten this too much.
  6. Make an original aluminium 1605 nut holder block shorter to fit exactly.  See the picture.
  7. Fit the aluminium nut holder block including the entire assembly of the 600 mm long 1605 ball bearing screw on the machine, and superglue the block in the correct position.  Let it dry so it won/t come off. Demount verything except the steel sideplate and the glued aluminium nut holder.
  8. clamp the nut holder to the steel plate with a grip vice, just to make sure it all keeps together.
  9. Drill 3 new 4mm holes through the steel plate’s lower part ,  drill through the aluminium block as far as possible.  2 holes on the lower side and 1 just between 2 of the top 3 holes,  NOT where the existing hole of the aluminium nut holder block exists.
  10. Get the nut holder block loose, if it has not already come off.
  11. Tap M5 in the holes of the nut holder block.  You will have come through the big center hole (for the nut) with 2 holes, make sure this gets cleaned up on the inside.
  12. Drill the new holes in the sideplates with 5.5 mm drill (to give you mounting clearance)
  13. Place the sideplate on the 2 bearing blocks of the linear rail with 4 outer M3 x8 (or x10) screws.
  14. Put everything loosely together
  15. Mill an end baring block to fit the 1605 ‘s screw end at the front an mount this at the exact center of the small front plate.
  16. Now, connect your nema 23 engine to a motor steering device so you can test the setup.  First, turn the screw by hand and it should run smooth.
  17. Since you want to have an even height of the side plates, do not alter these unless it needs to be done on both sides equally.
  18. Your fixation point is the only non-movable position, at the rear of the frame.
  19. Move the carriage to the rear and now, see if you have slack on the M3 screws of the slide bearings AND on of the 3x M5 screw the rear of the aluminium nut holder. If so, first tighten the M3 screws.  Then tighten the M5 screws.  If not, loosen ALL of the linear rails screws ans move the rail a little. If this is possible, tighten the M3 screws of the linear rail’s bearing blocks.  Then, try to get as much clearance on the linear rail’s movement up/down as you can and tighten the 3x M5 screws of the nut holder block.
  20. Now, tighten 1 screw only of the linear rail, at the position above the nut holder.
  21. Move the carriage entirely forward position.
  22. Tighten the linear rail’s M3 screw that is exactly in position above the nut holder (of the ball bearing screw)
  23. Now, tighten all screws of the linear rail.
  24. You’re done!
  25. Check the other side and if the linear rail’s height differs from the other side,  the only thing to do is to start over again, where your slack is in the 5.5 mm holes of the steel plate’s screw holes for the  nut block.  If you play with this, and then adjust the linear rail’s height, you can get it all even.  At least’eventually I got mine right but it took some time.  Have fun!

Things to bear in mind: You don’t want anything out of parallel like a linear rail that is uneven to the aluminium profile on which it is mounted or a ball bearing screw that gets under tension.  There is also another way to see what is happening while you are tweaking the hardware/frame: take the front bearing off and see what happens to the end of your ball bearing screw in the hole up front when you move the carriage.  It can tell you much about what is happening…  It should always stay perfectly centered but I’ve seen it up, down and all other directions.. -)

After making the base frame and the Y axes, the rest is more simple. Just get the 2040 pieces in place, I started with only the lower one. The put all in like the rails, the ball bearin screw bearings, the ball bearing screw, coupler between screw an motor, the stepper motor and the X axis is done.

After the X axis, the Z axis is placed in. First put the rear plate on the 4 linear rail sliders and mount the ball crew block of the X axis to the rear. Then, put the vertical short MGN12 rails on the rear Z plate. Then put the bearing for the leadscrew on the top plate’s undernetah.  Put the corner pieces on the top plate and mount it on top of the rear Z plate. Then, feed the threaded rod through the top bearing, mount the angine an d teethed wheels and feed the screw through the nut…  Are you still with me?

Top view to get it more visble: engine and leadscrew connected with teethed belt

I decided to put 3 connecting pieces between the frame’s left and right Y axes to maintain stability and rigidity. After I put these in, the frame was very square and stabele, but also heavier..)


Last time that you see the frame without any wire. Next I will get the endswitches on the farme, the spindle and all other parts that are required to get my Indymill up and running! BTW I mounted 4 heavy purpose rubber feet under the frame, just to prevent having any tordoial stress to the frame when I put the frame anywhere to be used.

And- I must say, this build goes quite well. The materials are OK, and the guideline from the build description was very good. Although I never use it anymore.  The build is quite self-explanatory once you start building the Indymill CNC machine.  I also cahnged quite some parts, and made alterations where I felt this would improve the machine to fit my purpose better.


Indymill adapted X-axis for more rigidity


On top you see the X-axis, still without mounted linear rails but the 1605 screw is loosely mounted. The red connecting piece for the Z-axis is on the ball bearing nut. the black part on the left between the 2 lengths of 2040 aluminium extrusions is the (anti-) push/pull bearing block that holds an axial (up/down/left/right) and a radial (left/right) bearing but can not withstand any real big lateral force (L-R)

Under construction-still trying to find out how to do this.

I intend to use the same method as with the Y-axes so drop the 3d printed parts as much as possible and re-use the available bearing blocks and nut holder.

For the red nut holder I only need to make a flat extension plate to connect the nut holder to the Z-plate.

For the end bearing block BF12 to the right, this is no problem. I can mount it easily on the sideplate’s outside.

The push/pull bearing block BK12 is more difficult to re-use,  I will try and find a small enough connection block that is 3d printable to shape the BK12 in, and still fits in between the 2 horizontal aluminium profiles that shape the X-axis. It will be very tight so I might have to make something myself, possibly I will just mount the BK12 on a in-between piece of  2040 and first I can mill a hole in the center of the 2040 piece so the end of the 1605 ball bearing screw can gain access to the BK12… Or something like this, will try and report how it goes later!

2021-5-24: Found a possible solution with an adaption of the same  Nema23 to BK12 housing as is used for the Y axis. I am printing this fast with PLA on the Ender pro, will cut off some flesh of the NEMA23 top and bottom flange and will then fit this between the 2 lengths of 2040 extrusions and see how it works!  The screw holes will have to be saved, but 4cm in the center will be removed, some 4 mm wide om both top and bottom.

Today I made the last solution fit the X axis and got all related components to fit the X-axis.  During this I found that the left bottom ball bearing slider cannot move along the BK12 block..  So, I machined some material from this block’s side bottom.  That doesn’t hurt but it does impact my planning a bit.  And- during the process I destroyed a piece of the PETG BK12 holder that connects the BK12 bearing block to the stepper motor and the in-between side plate.  I already directly printed a new ABS part to replace the PETG and wished I had started with ABS like I dit with the Y-axes.  But- look at the bright side: Now all 3d printed parts will be ABS red: like the steel plates!

You must know that I elaborated quite a lot on how to print the Neam to BK12 couplers and fount that it is not good to print these withh the face to the Nema23 motor DOWN.  Instead- I printed them flat, with the side that faces the stepper motor to any side but down or up.  This gives great strength to the 2 pieces that carry the mounting holes for the BK12 bearing so they won’t break during use.

And I found that ABS in my case (both ABS red and PETG vblack are Sunlu products)    works better for this build because the PEG breaks under strain and ABS flexes a little but does nor break..


error: Content is protected !!