New build in Clapham, North Yorkshire, UK

So, I’m assuming these belts are OK. I have some spare length, I will have a look at them.

Just discovered that writing the gcode for doing a rectangle is trivial. I thought it would be more complicated. I can write gcode like that as fast as I can type. I’d assumed PostScript type complexity.

Have got the PI sitting in front of me, I’ll put it back to non hotspot mode, update cnc.js to provide a button and then put it back to AP mode.

I think those belts are fine. Like Jeff said, the steel-core ones generally say so, and wouldn’t generally be bundled with 16 tooth belts.

Maybe something like this?

G90 ; absolute positioning
G92 X10  ; wherever we are now, call that X=10

G1 X14 F240
G1 X10  ; approach X=10 from the right
G4 S2
G1 X6
G1 X10  ; approach X=10 from the left
G4 S2

G1 X14
G1 X10  ; approach X=10 from the right
G4 S2
G1 X6
G1 X10  ; approach X=10 from the left
G4 S2

... repeat a bunch of times

See if when it approaches X=10 from the left or from the right if it ends up in a different spot, and if so, can you see something mechanical that explains why. For example, do the rollers appear to move to the same position and the problem is in the pen mount, or do the rollers exhibit the backlash too.

@jamiek

Thanks, have got a gcode cheat sheet up on one monitor, am scanning through it. Got a gcode simulator to check it on another monitor. The cheat sheet shows the pause in millisecs. I assume that G4 S2 is seconds.

This looks pretty simple to be honest and now hits a domain I’m a little more familiar with, To be honest it looks like assembler or the output from a compiler. I automatically look at it and try to optimise it :slight_smile:

I’m logged into the Pi now and am working out how to add the button to cnc.js.

Rob

Dwell should be 2 seconds so you have time to look at it and see where it is. I find myself referring to the Marlin gcode manual all the time https://marlinfw.org/docs/gcode/G004.html

I have no doubt you will be rolling your own experiments in no time.

Woohoo, backlash problem found and resolved.

It turns out that just when I thought I couldn’t do anything more stupid I can. The backlash problem was caused by a bad connection to one of the X motors. Most of the time it simply wasn’t working and the X axis was being driven by one motor only. Still pretty dammed good but that was accounting for the 2mm or so loss as the X axis changed direction from +ve to -ve. I had looked for this before and was checking that the motor was turning, but I had assumed a broken motor would be more obvious. And we all know what happens when we assume something…

I found this by checking the Z axis gantry and noticing that it had a small amount of movement in the general X axis. I still didn’t work out what was the problem until I tried to manually turn the various motors via the pulley wheel. One of the X axis motors allowed me to turn it a very small amount but not too much, all of the other stepper motors were impossible to move by hand. Mmmm…

I checked the pulley wheel and it was tight on the grub screws. So knock that on the head. I then decided to pull the belt off and see what the motor was doing. It was doing “not working”. Ah!

Traced the cables back and it looked as if the DuPont connector had broken somehow. I suspect a castor wheel from the table had run over it.

So put a new connector on, powered up and spent a happy 15 mins moving the X axis around. It always came back to zero.

That’s only take a week to find, pretty simple when you know the problem.

However in the meantime I have made an adapter for my digital calipers to measure the height of all the tubing from the CNC bed and to see where the differences are. That’s another post as it’s 22:00 here and sadly I have work tomorrow.

Rob

6 Likes

Nice work. That machine is definitely yours now. You’ve earned it!

1 Like

As I knock one item off my ‘todo’ list, more seem to pop on.

I have already seen that the bed of my MPCNC is not level, though it’s pretty flat.

If I look from bottom left (0,0) towards top right, it was clear that a pen that was lightly touching the bed, but as it went to max X and max Y (top right), it was around 1mm to 1.5mm off the bed.

So I thought I’d measure what was out. Simple enough job…?

So I pulled out my cheap digital caliper. I only trust these to 0.1mm as they were exceptionally cheap about 10 years ago, but that’s enough margin for me.

The first problem is that they aren’t designed to work the way I want them to, I want to measure the distance from the bed to the 25mm tube. The calipers are designed to measure stuff inside the jaws and there’s no nice long flat level edge on the top or bottom of them to rest against the bed. So I thought I’d actually design something in Mac FreeCad to hold the head of the caliper in a stable position and at right angles to the bed. I’ve never used anything but Google Sketchup for design and that was 6-7 years ago, but it can’t be that difficult, can it> Well, I can now scrub Mac FreeCad off my list of well designed and stable Mac products. After the 5 or 6th crash in an hour I gave up. It was just impossible to keep it going.

So I then moved to Fusion 360, it’s free, I’m not breaking any license terms as my income from this is significantly less than £0 to date. It then transpires that you need to have some sort of brain operation twist your brain through 90 degrees to get the hang of it. All I wanted to do was draw a simple block, put two screw holes in it and cut a T out of it. Six hours later and feeling like I’d reengineered the entire Apollo space program, I had two blue blocks in my hand, that 1) fitted my calibers 2) were stable.

I look at the simple (and it was simple) block and look at what Ryan has engineered for MPCNC and I want to cry. Six hours to get two blocks of printed plastic (and eight blocks thrown in the bin as they were wrong). How the devil did Ryan design the thing of beauty that is the Z gantry? Was there a crossroads at midnight , a bloke in a black hood, animal sacrifices and Robert Johnson involved?

Anyway, I now have a device that I have designed and printed by myself and I start to measure my MPCNC. I realise that the absolute numbers are irrelevant and that it’s the difference that’s important.

So here they are:

I have tried to keep this simple as there are lots more measurements I took :slight_smile: I have started building up a mesh. You’d never guess I love data…

Bottom left (0,0 ish) is the datum point. What I am measuring here are the Z values, a +ve Z value is out of the bed and up in the air and a -ve Z value is towards the floor. This matches the Z axis movement in Marlin.

The numbers back up what I thought. The gantry is very slowly moving away from the bed as it moves along the X and Y axis.

Now there appears to me to be two solutions:

  1. I run a small planing run across the spoil bed (not shown) to level it.

  2. I shim the stepper motor mount points on the X and Z axis tubes that hold the Z axis gantry by a small amount so they are trued.

Since I have to do point 1 anyway, is there any value in shimming the stepper motor mounts. It’s easy enough to print a couple of 0.6mm and 0.3mm shims to level things up, or am I worrying about things that I should ignore.

Views and comments welcomed.

Rob

1 Like

When you cut through the board, into the spoil board, you should cut a few mm into the board. That is no big deal, and it will easily consume these <1mm differences. If you make a rabbet or a dado that doesn’t go all the way through, you’ll probably want a bit of tolerance built into that too.

If you are using a v bit, the the error in Z translates to an error in width. That is a bit annoying, but if you are using a small area, you can set the Z there, and use a sharp bit. You won’t notice it.

If you need more accuracy than that, you can surface the spoil board (which is 1 above, I think). But I would avoid doing that for a while. Because it will account for everything that affects the height, and you don’t want to do it too many times. If you use your machine for a while, you can find all the other things you may adjust that affects the height, including shimming the corners, break in, whatever. Then when you surface it, it will be more stable for longer.

1 Like

@jeffeb3

Thanks, for the update. I’ve yet to turn a spindle in anger :slight_smile:

However I don’t expect to use a v slot, but rather a square end for the bit so that probably not an issue at the moment.If I do engraving, I can see it’ll be a problem unless I setup a spoilboard,.

I’ll not bother shimming it and will see about attaching the router (finally turned up), screwing a spoilboard down (and recessing the screws) and then running a 25mm thingymajig across it to get rid of the level differences. I have a faint idea what to do, what could possibly go wrong :astonished:

Rob

[voice person=“George Takei”] Oh, my… [/voice]

“Alphabetically, or in likely order of occurrence?”

“There are some sentences [you] should just stay away from.”

“Whenever you ask that, my tail gets all bushy.”

I could have written:

“I have no idea what I’m doing with very sharp objects spinning at 15,000RPM, 240V electricity using highly complex IT software to control the speed and direction on a plastic machine I built myself, where the last thing I built out of plastic was an Airfix 1:72 scale Battle of Britain Spitfire aged 10 3/4. What could possibly go wrong?” Technically that’s just as accurate :crazy_face:

I have five more spoilboards to use after this one.

I will do a number of dry air runs just to see what happens. I might then connect up a pen to trace it and then and only then connect the router. Then “What can possibly go wrong?”

Rob

1 Like

It can be very satisfying, and confidence boosting, to try the HD foam too. The pink/purple stuff with small bubbles. No load, but it holds a very crisp edge.

1 Like

Hey Rob looks like you have been having fun. You make me want to check my stepper wiring to as i think mine could be better. Im using cat5 and two strands per wire. More than one of my wires ethernet connector have broken tabs so they dont click in and become captive. Its entirely possible that my phone holder wasnt wide enough due to this. Also be aware in fusion360 of the default which leaves positive stock for a terminating extra finishing pass that confused me too. Thats if you use fusion to make you milling code.

As for the corners i used an extra unwanted corner top print to standardise the gap between the corner bottom and corner top. That has got me so much closer to leveling the four legs. You could design and print one specific to the height you want. I had to of these extra corners due to overprinting the wrong mirror image of a corner and also printing one with insufficient fill for my hulk rage when tightening the belts.

Anyway its looking brilliant. Like the scaffoldesque table. Also my wife had a chuckle about the CFO comment. Sounds about right.

@whereswally606

Things are moving on and for some weird reason in the right direction, at least for today.

I did think about using Cat5 or Cat 6 cable but was unsure whether the cables were thick enough and whether solid core would stand repeated (gentle) bending, so went with 22 (24?) SWG.

My knowledge of Fusion 360 is as an utter novice. I used Fusion to make the digital caliper mount and it was a long and painful experience. You will note the slab sides to everything. I wanted to make the base thicker than the top but couldn’t work out how to join two bodies/components/sketches or whatever is needed to do this so ended up with a rather neo-brutal design. Not through choice, but from necessity. Every time I do something new, I have to learn a whole new skillset. My intention is not to use Fusion for milling but I will generate gcode from an home grown application. Whilst that sounds more complex, the use case I have in mind for the MPCNC makes this possible. I’m used to writing code to do what I need and have written compilers, virtual machines and the like, so generating fairly simple gcode is not that big a deal. I’ve got the front end partially done, buy needed the MPCNC to test things out manually. Once I’ve done that, I can join my front end software and the MPCNC together and send down my gcode.

I’m going to ignore the small mm differences in the height for now. A spoil board will remove those issues, though a little part of my brain will nag me over the 0.75mm difference, but I’ve learnt to ignore that little chimp on my shoulder :slight_smile:

Next things to add are:

  1. I still haven’t finished the end stops. I keep getting pulled into other things :frowning: It’s partly to avoid using those fiddly little connectors for DuPoint and JST fixings. Still waiting for the scars on my fingertips to heal.
  2. I’m waiting for some 65mm M5 bolts to fix the Katsu router to the gantry. I printed out the mounting brackets but didn’t realise I didn’t have the right length bolts. I wanted a Makita but thought I’d try a cheaper version and see how it works. I’m not machining anything heavy though so the Katsu might be suitable.
  3. 5V buck for the Raspberry PI. Simple lack of enthusiasm.
  4. Z axis wiring using the expandable tape trick.
  5. Tidying up the X and Y axis wiring after they come out of the drag chains. I may move to the tape measure wiring if that works.
  6. Spoil board levelling.
  7. Spoil board M6 T nut mounts.
  8. Trying to learn about EstlCam. I have it working under VMWare Fusion but might need to move to an old and cheap Windows laptop.

The list is going down now :slight_smile:
Rob

My CNC is slowly moving in the right direction.

  1. I have mounted the Katsu router (£30/$30) to the gantry and turned it on. It seems to work OK.
  2. Finally managed to bridge the networks from my office to the garage so I can easily send work to the Raspberry PI. Repurposed a Black Knight router and that was hard work.
  3. Made a mount in Fusion 360 (woo hoo!) to connect a tape measure in a nylon braid to the MPCNC. I am sinfully proud of designing, making and printing something like this. It looks quite good and works well.
  4. Got EstlCam working under VMWare Fusion and got it to send out the gcode to do spoil board levelling. It only sends output files with .nc as the file extension, which means I have to change it to gcode to upload to Octoprint. Anybody know if you can get EstlCam to change that?

So good progress, until I started to level the spoilboard. Wow! What a lot of dust. The levelling lasted around 10cm before I said enough is enough.

So as is normal two steps forward and one step back. I now have to build an enclosure for the board as the dust makes it impossible to use. Have ordered the parts but not here until Monday next week, rats!

So will use the time to

  1. Move the X and Y axis to use the tape measure trick (there must be a better name).
  2. Wire up the end stops
  3. Get some hardboard for the enclosure
  4. Design some end feet for the enclosure.
  5. See if EstlCam can save files with a different extension.
  6. Work out why V1Pi/cnc.js fails on my Raspberry Pi 4.
  7. Do some real work and earn some money,

Rob

Take a close look at the estlcam basics page. There is a setting for file extension. That setting isn’t a big deal, but there are other settings which are pretty important.

1 Like

@jeffeb3

Got it, I’d looked at the basics page but not at the CNC presets page. I can see it there.

Thanks

Rob

1 Like

Also real wood is not so dusty

Yes, but I need to get this spoiler board sorted out, so I’ve got the parts on order. The pipes will be used to hold the vacuum hose and to reduce the load on the Z axis which is a good thing ™.

1 Like

It’s been a long time since I updated this thread (two weeks). Somewhat surprisingly, I have actually been busy getting my MPCNC into a better state.

As can be seen from the attached photos, I now have a steel set of pipes to make a simple and strong top enclosure to keep the dust down, this will use hardboard (or plastic sides) that can clip on and off using Terry clamps. Whilst many people here (probably all the people here?) would have successfully made this from wood, my exceptionally limited skills lie in using Allen keys, cable ties, side cutters and simple pipe cutters. BTW are they called Allen keys in the US?

Anyway, the other reason for the steel tubing is that I can attach a vacuum hosepipe to the Z axis AND reduce the load on it. I was worried about torque on the Z gantry. I have an idea to support most of the weight of the hosing using the steel pipe frame.

I also wanted to use the steel pipe frame to move all the wiring off the CNC top, this allows me to slide in longer pieces to be CNC’ed as there is now a clear run all the way down the X axis. I’ve used the ‘tape measure trick’ to keep them supported. I also have been learning Fusion 360 and have done a few simple prints to provide Z axis guides and other supports for wiring as well as P-clips that are just the right size for me. I have to say, even as a complete novice (and some would say muppet) with Fusion 360, I can produce quite complex pieces with limited skills.

I also took the opportunity to revisit all the wiring and the various connections as:

  1. My life is not miserable enough. See previous posts on why wiring and I have a very special relationship.
  2. The wiring lengths were all wrong and I wanted them to be the right length. No, I am not OCD (though I sometimes wonder :slight_smile: )
  3. I wanted tidy wiring. See point 2 on OCD.

I had printed a set of drag chains and the dust they collected was awful so have moved to nylon expandable braided hoses as well. That makes things a lot neater and needed the P-clips.

I have moved the control board outside the main CNC frame so that it keeps it clear of dust and debris. This also cleared some more space on the main board to hold the MPCNC, one lesson I have learnt is not to cram too much into the limited space.

The astute amongst you will notice the lack of SKR V1.3 motherboard, it’s taken off so I can print some covers.

End stops are now wired in and working, but not calibrated. Finally got that monkey off my back. Am trying to understand what is to be done and how it all works. For some reason, the words don’t make any sense.

Learning points:

  1. Don’t try and thread cables connected together by cable ties through nylon braiding. It’s difficult.
  2. Doing the wiring loom for all the cables so far in advance is stupid. Work out the actual lengths needed and then do it closer when you can lay a cable trail through the MPCNC and get a better idea of where they will run.
  3. Drag chains look really cool, but are a nightmare to clean when you are milling MDF board.
  4. Write on permanent pen on the JTAG connectors where the cables are from. Whilst keyring tagslook nice, they are a pain to thread through braided hose.
  5. If you cut the braided hose, use a flame to seal the ends to stop it coming apart.
  6. Get bigger braided hose then you think. Makes it a lot easier to manage.
  7. Designing and printing your own P-clips is dead simple and they ensure that things fit. Fusion 360 is worth learning and is free (for my use at least).
  8. The sprung steel inside a tape measure is dead easy to cut with a Dremel and can be punched with a simple bradawl. The tape measure edges do need sanding down afterwards though.

Still to do:

  1. Level spoilboard
  2. Read the instructions for using dual endstops and try and understand what it really means, mmmm…
  3. Put the motherboard back in.
  4. Put the vacuum hose on the steel frame.
  5. Put sides (plastic or cardboard) on to keep the dust down.

Not quite there, but getting there now.

Rob

3 Likes