Added option to load model material onto the support hotend for multi-material printing
Added G-code support
Added manual nozzle offset Z calibration for Endureal printer
Other fixes, improvements and changes in firmware architecture
About G-code support:
We currently support G-code files generated by PrusaSlicer and Ultimaker Cura. We parse the headers accordingly, verify the dimensions of the build area, read the print time, etc.
G2/G3 arc and M900 linear advance commands are supported.
To print G-codes, enable G-code support in the Working Options menu and disable filtering by printer type in the Files menu to display G-code files.
Basic parameters of the printers for adding a printer profile to your preferred software:
Work Area Dimensions (XYZ):
M200 Plus: 200 x 200 x 175 mm
M300 Plus: 300 x 300 x 312 mm
M300 Dual: 265 x 265 x 300 mm
Endureal: 390 x 300 x 300 mm
Relative positioning for E axis
No offset added for second extruder in dual extrusion mode (offset is handled by firmware)
I hope SO much this comes to the inventure too. I have a whole print farm of those and this would basically save it from being discontinued.
Thanks for finally going these steps! If this would have happened earlier, it would have been so good for Zortrax!
After investigation I can share 2 conclusions/bugs:
For gcode lines where there is no space separating command and arguments (ie. “G28X0” instead of “G28 X0”), the command won’t be parsed and will be ignored. Quick fix to that is to edit file in text editor and replace all occurences of “G28” (without space) to "G28 " (with space).
If you are using printer in language where decimal separator is comma instead of dot then you may experience error as in picutre. Quick fix is to change language to english.
@m4cias
Hello, what are the basic commands in G-Code, so that the M200Plus does the same start and end routine when slicing for example with Prusa-Slicer?
Hello, this should be enough for the start. You can upgrade it as you see fit. I did not test this exact code yet, so you you need to run it yourself. Before I used Prusa MK4 as template with some minor changes but this is simplier.
Start G-code:
G90 ; use absolute coordinates
M83 ; extruder relative mode
M900 T0 K0.00 ; set linear advance K to 0 for extruder 0
M900 T1 K0.00 ; set linear advance K to 0 for extruder 1
M140 S[first_layer_bed_temperature] ; set bed temperature
G28 X0.0000 Y0.0000 ; home X & Y axes
G28 Z0.0000 ; home Z axis
G1 Z15.0000 F180 ; move to 15mm above print bed
M190 S{first_layer_bed_temperature[0] - 5} ; wait for bed temperature - 5
M140 S[first_layer_bed_temperature] ; set bed temperature
M109 S[first_layer_temperature] T0; wait for nozzle 0 temperature
Hello @m4cias, thank you for the information.
today I’ve tested this start and end-code with prusa slicer
The printer is jumping back and forth a little bit with the percentage count while heating. Also the heater is already fully heated up, while the platform is still heating up.
G28 X0.0000 Y0.0000 ; home X & Y axes
G28 Z0.0000 ; home Z axis
G1 Z15.0000 F180 ; move to 15mm above print bed
As firmware does homing before it starts executing gcode anyway.
Then we can get rid of some heating commands and stay with relatively short gcode:
G90 ; use absolute coordinates
M83 ; extruder relative mode
M900 T0 K0.00 ; set linear advance K to 0 for extruder 0
M900 T1 K0.00 ; set linear advance K to 0 for extruder 1
M190 S[first_layer_bed_temperature] ; wait for bed temperature
M109 S[first_layer_temperature] T0; wait for nozzle 0 temperature
Our firmware hadles heating a bit different than others so there can be some confusion in heating progress but that shouldn’t affect printing in any way. This way we get homing twice.