What's New In The 3D Printer World
Chitu G code Explained
Once again Scott Here to see if I can’t help you understand the something else I have seen questions about in the 3D printing community. This Time around I’ll go over the G-code used By Chitu on their F mini control board and other custom made control boards used by Tronxy and several other companies now. This control board comes on the Tronxy X5SA, X5ST, X5S-E2, XY-3 and XY-2 to name a few.
PLEASE NOTE CHANGING THESE SETTING WILL change your printers behavior. Therefore I do not recommend changing settings yourself without understanding what each setting your adjusting does.
So To start with G code files can not be written in word you are better off writing then in notepad because it does not leave artifacts in the background. Therefore any time you want to update the firmware you need to either edit the g code you have or start a new notepad document for it.
I am going to do my best to explain each of the G codes in every day terms If I can think of how. Then if you want you can copy each line into a notepad document and edit and save it. Once saved to the SD card put the SD card into the control board and run that G code file as if it was a print and done. Make sure ever g code file you make has the save g code at the end.
Please not that this is the first G code I have seen that is like this “ M8012 I200” in this case the M8012 is the code then “ I” is the actual settings your adjusting so in the above example it is 200. The this example M8012 is the code for X Y max movement speed then the 200 is the mms. So if you wanted to slow down the max speed you could change it to 120 or 300 to speed it up depending on your printer.
Resume on power Lose
M8000 I1 ; used if you have the resume on power lose module installed
M8000 I0 ; used if you do not have the resume on power lose module installed
Stepper Motor Direction
X stepper motor
M8002 I-1 ; current direction
M8002 I1 ; Reverse direction
Y stepper motor
M8003 I-1 ; current direction
M8003 I1 ; Reverse direction
Z stepper motor
M8004 I-1 ; current direction
M8004 I1 ; Reverse direction
E stepper motor
M8005 I-1 ; current direction
M8005 I1 ; Reverse direction
Movement configuration
X axis Movement
M8005 X0 ; print head moves in X axis
M8005 X1 ; Bed moves in X axis
Y axis Movement
M8005 Y0 ; print head moves in X axis
M8005 Y1 ; Bed moves in X axis
Z axis Movement
M8005 Z0 ; print head moves in X axis
M8005 Z1 ; Bed moves in X axis
Speed settings:
speed is in mm/s; acceleration is in mm/ s^2 start speed. When the moving speed exceeds this speed, it takes this speed as the starting speed and begins to accelerate.Otherwise, it is in constant motion at the moving speed
M8006 I120
JERK
M8007 I10 ; Lower this is your getting ringing
ACCLELERATION
Acceleration, the larger the value is, the greater the actual average moving speed is.
M8008 I1000
Axis Steps Per Millimeter
example, 1.8 degree stepper motor, pulley with 20 teeth, tooth pitch is 2.032mm, 1/16 microstepping are (20*2.032)/((360/1.8)*16)
Set X and Y the same
M8009 S0.0125 ; adjust the 0.0125 to correct both at once
independent X,Y stepper motor parameters
M8009 X0.0127 Y0.0127
Z axis
value of each step of Z. The calculation formula: lead /((360/1.8)*16),
M8010 S0.0025
Extruder Calibration
value of each step of E. This value is equal to the 1/3200 circumference of extruder gear. In addition
M8011 S0.010799
Max Movement / print speed
XY movement mm/s
M8012 I200
Z movement mm/s
M8013 I30
extruder mm/s
M8014 I120
Home Speed settings
first home speed
Z-axis
M8015 I8
X-axis and Y-axis
M8015 S30
second home speed
Z-axis returns
M8016 I4
X-axis and Y-axis
M8016 S5
Pre-extrusion before print
Pre- extruded
M8017 I10
max speed of pre-extrusion(mm/s)
Feeding by non-reduction gear, max speed always above 100.
M8018 I20
E max speed
Not sure why this one is here because M8014 does the same thing
M8019 I50
Retract
Distance
M8020 S1.5 ; will set the retract to 1.5mm no matter what the slicer says
M8020 S0 ; Follows slicer retract settings
Speed
M8033 S8 ; will set retract speed to 8mms
M8033 S0 ; Follows slicer retract speed settings
Filament Diameter
M8021 S1.75
Max hotend temperature
M8022 I260
Min Hotend Temperature for extruder to turn on
M8022 T170
Maximum temperature of hot bed
M8023 I120
Temperature error detection
M8023 T0 ; Enable temperature error detection
M8023 T1 ; Forbidding temperature error detection
Maximum distance of X, Y, Z,
exceeding the distance will cause the buzzer to buzz
X
M8024 I330
Y
M8025 I330
Z
M8026 I439
number of extrusion head Or use of second E stepper driver If the second driver chip set is there. (tronxy E2 versions only)
Set the number of extrusion headat least 1, at most 3 at present
M8027 I1
Whether it is 3 in 1 out nozzle or 2 in 1 out nozzle, these two nozzles share a temperature sensor, share a heating rod
0: not 3/2 in 1 out nozzle 1: 3/2 in 1 out nozzle
M8027 S0
The second extrusion head will be used as Z. For some large equipment, two Z axes will be needed. Therefore E2 can be used as Z axis.
This order will force the number of extrusion heads to be 1 0: double Z double limit mode, the second limit connect to X+,
1£ºdouble Z single limit mode, only connect to one limit switch . if to enable this function, place a tick in front of the command.
M8027 Z0
the second extrusion head will be used as Y
if to enable this function, place a tick in front of the command.
M8027 Y0
The second extrusion head is used as the first one, because some machines use two motors to feed the wire
If you need to enable this feature, place a tick in front of the command
M8027 E0
Heated Bed
M8027 T1 ; enable hot bed
M8027 T1 ; disable hot bed
Advanced Settings
Extra pri after retract
M8028 S0.00 ; Add to the 0.00 to add extra length on the prime length after retract.
Home location
M8029 I0 ; front left
M8029 I1 ; Unilateral maximum point limit
M8029 I2 ; Bilateral limit
M8029 I3 ; Limit in the left rear of the machine
types for limit switch
M8029 T0 , limit switch normally open, when not triggered, the signal level is open
M8029 T1:XYZ limit switch normally closed, when not triggered, the signal level is closed
Filament out Detection
Uses same plus as auto bed level sensor
M8029 D0 ; ban fault detection
M8029 D1 ; enabled fault detection
Limit switch type for filament out detection
M8029 P1 ; same with XYZ limit type
M8029 P-1 ; opposite to XYZ limit type
part cooling Fan
M8030 I0 ; fan is controlled by slicing software
M8030 Ixxx ; setting a temperature that is larger than 0 fan controlled by firmware
Coldend Fan
M8030 I0 ; full speed from powering on control board
M8030 I50 T-1 ; allows you to set what speed and temp the coldend fan comes on at
SD card displayed on screen
M8034 I1 ; Yes
M8034 I0 ; No
Auto level point setup
The maximum is 5 as regard to leveling setting, X, Y are floating number, if X, Y are small than 1, then it indicates the corresponding proportion of journey. Otherwise, it indicates the absolute coordinates of X and Y, the unit is mm.
M8035 I3 ; the number of instruction is same with that of point
M8036 X-20 Y0 ; start point
M8036 X50 Y50 ; second point
M8036 X250 Y250 , Third point
M8036 X£» ; ends auto level
Machine type
M8080 I0 ; Cartesian
M8080 I2 ; Corexy
Thermistor type
M8081 I0 ; Ideal NTC 100K 1% 3950 B
M8081 I2 ; corresponding to the type 2 sensor of marlin
Auto leveling setting
M8083 I0 ; ban auto leveling
M8083 I1; enable auto leveling (leveling switch connect Z)
Z Height Offset(TORONXY HAS THE ONSCREEN)
I skipped this because Tronxy has it onscreen. Height difference of Z leveling limit = Z zero position-Z position for leveling limit. 0: forbid deviation, the route of Z is determined by¡°set Z as zero¡±,the printed
G code doesn’t need the automatic high leveling order. It's recommended to use this mode. Non 0:Z is automatically determined when the leveling limit is triggered. Under this mode,
G29 automatic leveling order must be after the return to zero of G28 and before begin print. If the extrusion head is near to main board during limitation, the value is positive.
M8084 Z4
Boot Screen
The minimum is 100ms,the maximum is 6000ms
M8085 I500
standby mode to shutdown
This function can only be used for the equipment installed with the power module. The unit is second(s). When the value is 0, it indicates forbidding the function of shutdown after standby.
M8085 P0
Max Fan speed
Max 256 with more noise, which can be adjusted through this parameter
M8489 I256
Disable steppers and turn off all heating after printing
M8489 P0 ; Turn off all
M8489 P1 ; G Code Controlled
PID
I have not used these one will more than likely be hotend the other the bed
M301 P22.2 I1.08 D114 ; enables PID
M303 E0 S150 C5; enables PID
Laser Engraver
M8520 I0 ; do not support the laser engraving
M8520 I1 ; support laser engraving, there are more buttons inside to set speed
Wifi Setup
Replace the word networkname with your network's name leaving the quotation marks, Replace the word Password with your networks password leaving quotation marks.
M9005 '"Networkname","Password"'
SAVE
MUST DO THIS IN EVER G CODE SET YOU SEND THE PRINTER
M8500
below is an example of a Gcode I personally used to do basic update to the X5SA.
;Speed settings: speed is in mm/s; acceleration is in mm/ s^2
;start speed.When the moving speed exceeds this speed, it takes this speed as the starting speed and begins to accelerate.
;Otherwise, it is in constant motion at the moving speed c3d
M8006 I120
; ==================================
;
;JERK
;
;maximum speed while turning a corner. There there will be a large number of reciprocating motion while filling.
;The noise is loud while this value is large. When the value is small, the speed is slow c3d
M8007 I10
; ==================================
;ACCLELERATION
;
;acceleration, the larger the value is, the greater the actual average moving speed is.
;However, the noise is loud. The actual speed is small when the value is small c3d
M8008 I3000
; ==================================
;MAX MOVEMENT / PRINT SPEED.
;
;maximum speed of various parameters. In order to ensure the stabilization of the machine,
;please make settings according to the measured results
;maximum speed of XY movement mm/s
M8012 I200
; ==================================
;maximum speed of Z movement mm/s
M8013 I30
; ==================================
;maximum speed of the extruder mm/s
M8014 I120
; ==================================
;Z-axis home speed.When using makerware software,the home speed will be ignored while slicing,
;because gcode specified the home speed
;first home speed when Z-axis returns to zero, higher
M8015 I8
; ==================================
;first home speed when X-axis and Y-axis returns to zero, higher
M8015 S30
; ==================================
;second home speed when Z-axis returns to zero, slower
M8016 I4
; ==================================
;second home speed when X-axis and Y-axis returns to zero, slower
M8016 S5
; ==================================
;Thermal Protection.
;
; Tronxy Has this turned off
;Forbidding temperature error detection. The default temperature error detection will pop up the warning when the temperature
;sensor is not well plugged in or the heating power is too small. Strongly suggest not forbidding this function
;1: Forbidding temperature error detection 0: Enable temperature error detection
M8023 T0
; ==================================
;MAX TRAVEL (adjusted because I have bed lowering installed).
;
;maximum distance of Z
M8026 I439
; ==================================
;the duration of the boot screen,the minimum is 100ms,the maximum is 6000ms c3d
M8085 I500
; ==================================
M117 PRINTER NOW CUSTOMIZED
;SAVE
;
;¡¾Save command¡¿ This parameter must not be less, otherwise all parameters can not be saved to the device
;save the configuration
M8500
Related Posts
Comments 99
Thank you for the compliments.. I will send chitu a massage and see if it can be done as far as the swap goes but sorry to say it but your control board while it has plugs on it for the second extruder it does not have to driver chip set to be able to use the plug... the main chip and a capacitor are missing. Tronxy has not released an x5sa with the full e2 control board the board looks exactly the same minus a few chips you have to look close to see...
Btw I do have factory replacement control boards listed In the store
Hey
I'm a total Noob to editing G-code and could do with some help from the higher echelons please.
I have an X5SA with auto-leveling.
Before I go to print anything I auto level the bed and then manually set the Z offset.
What do I need to change in the Cura Start G-Code box to streamline the startup and not have the machine redo what I do manually?
Also, I read somewhere in these comments that I could take the measurement of the Z offset and make that hard wired into the system. Is that easy to do?
Current Start G-Code:
G28 ;Home
G1 Z15.0 F6000 ;Move the platform down 15mm
;Prime the extruder
G92 E0
G1 F200 E3
G92 E0
END G-Code:
G91
G1 F1800 E-3
G1 F3000 Z10
G90
G28 X0 Y0 ; home x and y axis
M106 S0 ; turn off cooling fan
M104 S0 ; turn off extruder
M140 S0 ; turn off bed
M84 ; disable motors
Many thanks in advance.
SS
Hi can someone explain me how to configure the auto level grid as I just added to my x5st-500 the auto level sensor,
when homing the sensor is homing in the left front corner and not in the middle of the bed.
Also when launching the auto level sequence I got if like the whole grid is not centered onto the bed, like it is shifted to the left side so every fourth probes the sensor is probing on the left side of the bed and it gets outside of it...
ok well the chitu board does not use the marlin step count so 415 will not work you need to figure out the number to use and place it in a Gcode file along with the save code. this is the section you need to change.
Extruder Calibration
value of each step of E. This value is equal to the 1/3200 circumference of extruder gear. In addition
M8011 S0.010799
Got it
M8011 S0.00236
M8005 I-1
M8500
bond tech extruder now works like a charm
IF you are going to be using a titan extruder specifically on the X5SA the proper codes to follow are this:
M8011 S0.00247
M8005 I-1
M8500
Be advised the S0.00247 worked on my extruder IF your extrusion is OVER 100mm then INCREASE this number if it is under 100MM then DECREASE this number also be advised that small changes make a big difference. for example, S0.00247 spit out 100mm exactly but s00250 spit out 105mm and s00240 spit out 90mm so its a huge difference.
M8005 I-1 This will reverse your extruder motor only use this if needed
M8500 this will save the settings to the board. As you try out different values you need to enter this after each one for the new value to take effect before you try your new extrusion.
Over all i think the settings i posted above will get you VERY close on your setup with a titan extruder or a bondtech keep in mind i am NOT using direct drive this is WITH the bowden tube.
Thanks for all the helpful info. I have a Tronxy xy-3 and would like to use gcode to find out the value of the limit switches. It looks like M119 (Endstop States) is the command for some printers, but the Tronxy xy-3 just returns ok N:0
Do you know if there is any command to get the value of the 3 limit switches and the filament out sensor?
Ok, I just wanted to comment that either I was totally confused or the way you phrased the stepper motor direction is kinda backwards. I installed a genuine Bondtech BMG extruder and wanted to reverse the extruder stepper motor direction. Based on the way I read your article above I used the command M8005 I1 --- and I tried it through a good USB cable using Simplify3D and then tried doing it as a print gcode with the M8500 after to save the settings. It kept turning the same/wrong way... So, after about 15 minutes of trying everything else I thought wth and tried it as M8005 I-1 --- lo and behold it freaking reversed the motor and now it's printing smooth and fast just like I had it before I started messing with mods and upgrades (my personal bad, as I have a tendency to experiment when things are running perfectly fine and then REALLY screw things up!). Anyway, all is well and now I can finish my big Saturn V stack with the S-II second stage. It will be about four feet tall when I'm done and I've used four different 3d printers to make all the sections but the tronxy x5sa is the only one big enough for that second stage! And like I said, maybe it was just the way I read it but to me saying the current direction means it would turn how it did originally with the standard extruder. Great article and I've learned a ton about the tronxy system already - mostly by screwing things up then figuring out how to fix it!