CaissonBlog

What a slicer should know about a Bambu A1 before it writes a line of G-code

M201 and M204 are not the same limit, a 0.25 mm layer is not a height the A1 can reach, and a nearest-match printer profile can drive the head off a mini's bed. Defaults and refusals in Arachnid.

Published
3 min
To read
Arachnid
Project

Most of the speed gains in Arachnid come from path shape, and the rest come from not lying to the printer. A slicer that writes numbers the firmware ignores gives a time estimate that looks better than the print. These are the places where the A1 profile in Arachnid is stricter than it has to be, and why.

M201 is the ceiling, M204 only asks

Both commands set acceleration, and they are easy to confuse. M204 requests an acceleration. M201 sets the maximum the machine will accept. Raising print acceleration above the M201 value does nothing, which is a very easy way to believe a printer has been overclocked when it has not.

Arachnid reads acceleration against the M201 ceiling, and it treats M204 as a flush of the motion planner as well: each one costs time, so Arachnid only writes it where it pays. Declaring travel acceleration before a two millimetre hop and putting it back afterwards cost 18,000 planner flushes on a quality Benchy, one every eleven moves, and was slower than leaving acceleration alone.

Layer heights snap to motor steps

The A1 raises its Z axis on a lead screw that moves 0.04 mm per full motor step. A layer height that is not a whole number of steps cannot be reached. 0.25 mm is a typical example: it sits between 0.24 and 0.28.

Number line of layer heights from 0.20 to 0.32 mm with the whole step heights 0.20, 0.24, 0.28 and 0.32 marked and 0.25 between two of them0.205 steps0.246 steps0.287 steps0.328 steps0.25 sits between two steps and is rounded
The A1 Z lead screw moves 0.04 mm per full motor step, so only multiples of 0.04 mm are layer heights it can reach.

Arachnid rounds each layer height to the nearest whole step and reports that it did. The 0.28 mm layers of the fastest preset happen to land on a step: they are seven full steps, and 70 percent of a 0.4 mm nozzle, which is the largest layer the firmware accepts.

Jerk, and a number that only the estimator likes

The default jerk is 45. On the machine this slicer was written against, a value of 80 loses steps and triggers a rehome in the middle of a print. The time estimate improves steadily as jerk goes up, but that is a property of the estimator's model and not of the firmware. Chasing the estimate means trading real print quality for a better number.

A printer is found by its model code, never by its nearest match

Arachnid can sign in to a Bambu account and list the printers bound to it:

arachnid login
arachnid printers
arachnid part.stl --printer <name> -o job.3mf

--printer looks the machine up on the account and chooses a profile from its model code. An unrecognised model code is a refusal. It is never replaced by the closest profile, because bed size and the start sequence both come from the profile, and an A1 start sequence sends the head to Y254 on the 180 mm bed of a mini.

Giving -o a .3mf name writes the project container a printer expects instead of a bare G-code file. The G-code sits uncompressed under Metadata/, its MD5 beside it, with a job card that carries the real weight and time so the screen on the printer is accurate.

Material is never substituted

Before a job is sent, the filaments on the plate are matched against the trays that are loaded. A PLA slot is never mapped onto a PETG tray, however close the colour is, because temperature, retraction and flow would all be wrong and the failure shows up in the first centimetre. That is a refusal that names what is actually loaded. A poor colour match, or a tray that looks short, produces a warning and the job goes ahead.

Sending without a cloud account

Sending a job needs no cloud account. Jobs go to the printer over the local network by FTPS and MQTT. The login and printers commands are there to look up a machine and its model code.

The Arachnid page has the download for 64 bit Windows and the full list of presets.

Written by Caisson AI. Questions or corrections go to hello@caissonai.co.