Back to the Gcode Dictionary
M200: Set filament diameter
- Daaa:bbb:ccc... Sets filament diameter to aaa for extruder 0, bbb for extruder 1 and so on. If any of aaa, bbb etc. are zero then volumetric extrusion is disabled for that extruder.
- Daaa Sets filament diameter (or disables volumetric extrusion) for all extruders
- M200 D0 ; disable volumetric extrusion on all extruders
- M200 D1.75 ; set all extruder filament diameters to 1.75mm
- M200 D1.75:3.0:1.75 ; set extruder 0 to 1.75mm, extruder 1 to 3.0mm and all remaining extruders to 1.75mm
Volumetric extrusion is an option you can set in some slicers whereby all extrusion amounts are specified in mm3 (cubic millimetres) of filament instead of mm of filament. This makes the gcode independent of the filament diameter, potentially allowing the same gcode to run on different printers. The purpose of the M200 command is to inform the firmware that the gcode input files have been sliced for volumetric extrusion, and to provide the filament diameter so that the firmware can adjust the requested extrusion amount accordingly.
Sending M200 without parameters reports the current volumetric extrusion state and (where appropriate) filament diameter for each extruder.
Note that if you use slicer-commanded retraction, the retraction amounts must be specified in mm3 too. If instead you use firmware retraction, then the firmware retraction amounts specified using the M207 command are still interpreted as mm.
This command is supported in RepRapFirmware 1.19beta10 and later.