Using the full work area for CNC (X358 Y358) - the journey far from finish line

Hi all!
I’m trying to figure out how to reliably and efficiently (without a bunch of manual g-code change) work within full limits of the machine.

For starters, I’m aware that official spec is a bit below these numbers.

But, open your Luban console, home your machine and check it’s coordinates

For the purpose of simplifying things, I will concentrate on X axis here.
My X is at -19. My Max X is at 338 - put these two numbers together - I get 358.

So If I run the following code (via Luban console)

G0 X-19 F1500 ;Go to start of operation
M3 P100 ;Turn on the CNC spindle at full speed
G0 X339 F100 ;Move tool head to the limit of the actual work area (X358=19+338) with feed rate 100mm/min.

I’m able to use the full area to cut the material.
However, if I’m uploading a project using coordinates outside of the 320mm in X - it gets mushed. Similar to what you experience with Dual Extruder 3D printing, when right nozzle is outside work area or with laser. To illustrate, this is what happens to the project after it gets processed by firmware.

You will get a failed print/laser job or CNC job.

It seems like the in order to combat this, something within firmware has to be adjusted. Researching the Marling documentation - Configuring Marlin | Marlin Firmware I found that the following might be something needed to be changed

#define X_BED_SIZE 200
#define Y_BED_SIZE 200

#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define Z_MAX_POS 170

But searching the Github Repo doesn’t seem like these are defined…
Granted, I’m no good at #C.

thus the journey continues. I invite you to join…

1 Like

Ok im sat in front of my Snapmaker A350 right now and im more confused than ever lol.

Ive tried running a boundary path with the bottom left set as the datum, i’m able to do a boundary movement as follows…

G0 X0,Y0
G1 Y343 F500
G1 X358 F500
G1 Y0 F500
G1 X0 F500

And this works

You will never be able to machine anything that wide in the X because the space between the Z Linear Rails is only 343mm MAX. So the material will not be able to pass through when you move in the Y axis.

Quick correction, you could machine something that wide but you would be limited to around 120mm depth of movement in the Y before the “Part” Hits the Z Linear Rails.

It works if you run boundary by hand. But a NC file is uploaded with size over 320mm in x - it won’t.
At least in my case. Maybe I’m doing something wrong…

I ran a cnc file off a USB Stick plugged into the Snapmaker.

1 Like

Huh, interesting. What is your firmware version?

Its the latest version V1.19.0_20240307

1 Like

Same thing with firmware…

Could you try running boundary for this?
Two Pockets.cnc (154.6 KB)

I have printed the drawing and stuck it to the work surface, and was running the job just hovering over, not touching the material to see if it is matching the outlines. It doesn’t. Neither does boundary run.
My X work origin is set to the edge of the heat bed (tool OD/2). And Z work origin was set to 10mm above the surface.

Sure, not a problem. I’ll do it tomorrow and report back.

1 Like

Same thing for 3d printing, the maximum size with dual extruder+Quick-Swap+Bracing-Kit is only possible if the bed (sheet) moves forward by 14mm: 331mm x 328mm x 264mm (Z not tested)
Compared to the official size:


1 Like

Don’t worry about trying it out. I think made it work.

Ok great news :+1: