Files
continuum-schemas/schemas/bambulab/v1/request/print/calibration.schema.json
T
octoturge 88919d500d Fix print.calibration docs and add v1's missing report schema
Confirmed live: both BambuMQTT versions reply to a calibration request
with a dedicated print.calibration report, not just push_status - the
v1 request schema's own description said the opposite ("printer responds
with push_status instead of calibration"), and v2's report schema framed
this as a v1-vs-v2 contrast that no longer holds. Both descriptions
corrected; the printer does still send ordinary push_status updates
alongside the dedicated report as calibration progresses, same as any
other print job, not instead of it.

Added v1/report/print/calibration.schema.json (only existed for v2
before) and wired it into v1/report.schema.json's print category
dispatcher, which never listed it since the file didn't exist.
2026-09-07 14:47:07 +00:00

23 lines
1.4 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://git.octoturge.com/Continuum/continuum-schemas/raw/branch/main/schemas/bambulab/v1/request/print/calibration.schema.json",
"title": "CalibrationRequest",
"description": "The printer responds with a dedicated `calibration` report (see request/print/calibration.schema.json's report/ counterpart) - not, as previously documented here, `push_status` in place of one. It still also sends ordinary `push_status` updates reflecting calibration progress alongside that report, e.g. `{ \"mc_print_stage\": 2, \"gcode_state\": \"RUNNING\", \"gcode_file_prepare_percent\": 100, \"subtask_name\": \"auto_cali_for_user_param.gcode\", \"gcode_file\": \"auto_cali_for_user_param.gcode\", \"print_type\": \"system\" }` - the same way any other print job in progress does, not a `calibration`-specific substitute for one.",
"allOf": [
{ "$ref": "../../../common/envelope.schema.json" },
{
"type": "object",
"properties": {
"command": { "const": "calibration" },
"option": {
"description": "Following bitmask is required for the `option` field: `if (lidarCalibration) bitmask |= 1; if (bedLevelling) bitmask |= 1 << 1; if (vibrationCompensation) bitmask |= 1 << 2; if (motorCancellation) bitmask |= 1 << 3;`",
"type": "integer",
"minimum": 0,
"maximum": 15
}
},
"required": ["option"]
}
]
}