FEATURE REQUEST: Machine Display

On the machine display screen:

  1. Add a button to bring head to machine’s X/Y 0,0 ; irrespective to set origin
    It would be nice too if it let’s user calibrates it, just in case.
  2. Add Run Boundary (after a file has been loaded)
  3. Add a Pause & Resume

Hmmm… useful ideas here.

I think that I would go a bit further in respect of X/Y 0,0 position. I don’t really understand why the coordinates are not both known and configurable. It would enable the user to define the coordinates (relatively positioned) or work to the machine derived coordinates (absolutely positioned). Depending on the module fitted, the machine should always know where it is in cartesian space. I would also add that it should talk to the software (whatever is being used) and tell the software where the module is sitting in 3D space. I would wish for the display screen to provide a constant position readout, whether it was machine derived or user specified.

Run boundary is a completely unnecessary command. When you know the dimensions of the clamps and the intrusion of the clamp head into the workpiece space, there is no need to have or use a run boundary command. It is provided ostensibly to ensure that the machine tool will not hit the clamp or any other obstruction in the workspace. I know what size my clamps are and if I draw my boundary inside their 5mm intrusion zone and their height, the endmill bit will never hit them. I set my jog height to 1mm above the 5mm clamp height and 1mm inside the 5mm clamp and I know that the endmill bit will never run into the clamps. See this post: Modifying the SM1 Table and its Clamp System

The lack of an emergency stop (this should be an instant response to whatever operation is being completed and the user wants to stop) is a major flaw in the software and an unsafe practice. At the very least it should be supplied in software and backed up with a physical switch. Pause and resume are subordinate requirements… that any well thought out emergency stop function would provide. After a stop is initiated, all settings would be retained and continued from the stop point after the machine is restarted.

X/Y 0,0:
Imagine when you first try making a wasteboard. The point of making a wasteboard among other things is to protect your bed. So technically you shouldn’t use the machine to make it --not to mention it’s so much practical doing it manually with a little help from the machine.
The wasteboard should have all the holes aligned with all the holes in the bed. So I cut a 125x125 plywood, double-taped it to the bed and run the machine by jogging and counting the distance of each hole with respect to the X/Y 0,0, then drilled pilot holes accordingly. Then I took off the board and drill them through with a bench drill to the spec of the screws.

Another example, if you try to cut a 10cm diameter circle, and you know it was designed at X/Y 0,0 as centerpoint, then all you need to do is set the machine workspace to it’s 0,0 and run the cut with peace of mind. Are you saying that the design’s origin always supersedes that machine’s? I don’t think so. I was able to set the machine origin before every cut and make any last minute offset. That’s why I requested the Goto X/Y 0,0 so I know where the machine is at in space.

Run boundary is just another added piece of mind feature. You’d be able to see where the cut will be in a quick fashion.

Interesting point about wasteboard construction. If you plot and construct it with the machine that it is going to serve, you are accounting for all of the local machine’s inaccuracies. The link is instructive.

I am not saying that there is no case for creating something entirely on the expected measurements (specified nominal values) of a production run of 1,000 machines. That is a matter for the manufacturer and their own specified tolerances and then creating an optional wasteboard according to them. In general terms; many home users are only going to have access to a sample of 1; which is in all probability likely to be their only machine. Having read in these forum columns for example, some accounts of similar events such as print heads gouging beds, it has to be concluded that there is a degree of manufacturing variability because we have no idea how many people do not have the print head gouging the bed issue.

With a dimensioned technical drawing of each of Snapmaker’s component parts and the tolerances used in their manufacture, I could construct a wasteboard without any recourse to having a physical machine to test and modify construction. I would know that the wasteboard would work and I would have no need to adjust for the conditions of the local machine. Indeed, Snapmaker have this information and because of that you can buy off the shelf spare components, which they manufacture according to their own specified tolerances.

Onto positional knowledge: The axis lead screw dimensions are all known, as is the stepper motor rotational speed and step amounts. It is known how much travel of the module takes place and in what direction it has travelled. This sounds really complex as an engineering issue but if you have used a simple digital caliper such as those which are commonly produced by Mitutoyo, you will have seen they have the means to detect small movements and provide the appropriate digital read out. My 0~150mm Mitutoyo Caliper is at the cheap end of their offerings and provides a repeatable accuracy of ±0.02mm or 0.0007874016 of an inch. This is made possibly by a strip of capacitance sensors that can detect capacitance changes as the caliper jaws open and close.

Given the above, it should be an easy task to know where the module head is at any given point in space and provide the digital readout. Then the software could use those digital data to assist you to work rather than expecting you to rely on convoluted means to establish simple things which are already known. What we know is what we can use as the means to program what we want to do.

I know my clamps will never intrude more than 5mm into the workpiece area or jog height and I have removed the need to run a boundary with the CNC module because I can always design my workpiece cuts inside that intrusion limit. An added advantage is because I frequently use the USB stick to run my SM1 (its saves the walk from my home to my garden shed with my computer) and that does not permit the run boundary command to be used, I can use it without any fear of the module crashing the bit into a clamp.

Run boundary is a not a reassuring step in my case… it is a wasteful process that serves no purpose. I always know where my clamps are in relation to the workpiece space, no matter how many clamps I have used, or where I have placed them and regardless of the workpiece shape. My end-mill bits will never hit the clamps, which was the raison d’être for my redesigning the SM1 table and the associated clamping system.

@jepho
Even if you don’t use it to check for interference, its still useful for alignment. I often use it when I’m eyeballing a project to make sure I have the whole thing on the work surface, or not over some other feature (for instance engraving onto a leather pouch I wanted to be sure the design didn’t end up on the stichwork).

Yes Adam, I have no doubt that the run boundary command has some uses for some people.

Personally speaking, I see little value in knowing precisely where something like a CNC bit or laser beam is located to within 0.1mm and then not using that information to drive whatever mechanical processes to which we are subjecting the workpiece. In my own particular use case, since redesigning the table and the clamping system; I no longer need to carry out a run boundary check on my CNC projects.

I have found that there are two distinct approaches for this stuff. The first is bassed on exact values and precise engineering. The other is a more artistic approach, based on relative measurements and visual appeal. I agree that run boundary has no real value for the first approach, but it has quite a bit of value for the second.

I only point it out to you because while your clamp system works well for the first approach, and I know from our previous conversations that the first approach is where you are most comfterble. But you might find it fun and informative to try the second approach. I find it very satisfying to modify an existing irregular object (books, bags, scissors, even my wood flute)

I get it. I have spent most of my life doing things the relative way. Finally, I get myself a machine that can take precise instructions and… yada yada yada. :grin:

1 Like

Atom gave good practical example of making use of Run boundary to last-minute eyeballing where the print will be on something like a leather wallet where there is no an exact reference to positioning.

Yes I requested the feature for the exact same reason, running a job from a flash disk.

1 Like

All that is understood. :+1: :grin:

1 Like