Difference between revisions of "Anycubic i3 Mega"

From Blue-IT.org Wiki

(Calibrating extruder)
 
(4 intermediate revisions by the same user not shown)
Line 10: Line 10:
  
 
== Start GCODE ==
 
== Start GCODE ==
 +
=== With Nossle Clean (Cura 2.6.) and Octoprint 1.3.11 ===
 +
 +
[UPDATE 06/2019 - only works with Cura 3.2]
 +
* See bug: https://github.com/Ultimaker/Cura/issues/1036
 +
* This does NOT work (comment out M190/M109) http://blog.mike-greene.com/fixing-cura-temperature-resets/
 +
 +
First of all: ONLY put the code into Cura!
 +
DO NOT PUT it into Octoprint or both. This would mess things up.
 +
 +
End Codes will remain the same.
 +
 +
; CUSTOM START GCODE WITH NOSSLE CLEAN
 +
; Anycubic i3 Mega Scnd. Gen.
 +
; Put ONLY in Cura 3.6+ and NOT in Octoprint
 +
G21 ;metric values
 +
G90 ;absolute positioning
 +
M82 ;set extruder to absolute mode
 +
M107 ;start with the fan off
 +
G28 X0 Y0 ;move X/Y to min endstops
 +
G28 Z0 ;move Z to min endstops
 +
G1 Z15.0 ;move the platform down 15mm
 +
G28                          ; Home X/Y/Z axis
 +
M190 S{material_bed_temperature_layer_0}
 +
M109 S{material_print_temperature_layer_0}
 +
G0 X1 Y0 Z0.15 F9000        ; Move in 1mm from edge and up [z] 0.15mm
 +
G92 E0                      ; Set extruder to [0] zero
 +
G1 X100 E50 F500            ; Extrude 100mm filament along Y axis 190mm long to prime and clean the nozzle
 +
G92 E0                      ; Reset extruder to [0] zero end of cleaning run
 +
G1 E-3 F500                  ; Retract filiment by 3 mm to reduce string effect
 +
G1 X3 X100 Z15 F9000        ; Move over and rise to safe Z height
 +
G1 X3 Y0 Z15 F9000       ; Move back to front of bed at safe Z height to shear strings
 +
M117 Printing...
 +
G5
 +
 
=== With Nossle Clean ===
 
=== With Nossle Clean ===
 +
[UPDATE 06/2019 - only works with Cura 3.2]
 +
 
  ; CUSTOM START GCODE WITH NOSSLE CLEAN
 
  ; CUSTOM START GCODE WITH NOSSLE CLEAN
 
  ; ORIGINAL ANYCUBIC i3 MEGA STARTCODE (some disabled)
 
  ; ORIGINAL ANYCUBIC i3 MEGA STARTCODE (some disabled)
Line 52: Line 88:
 
  M117 Printing...
 
  M117 Printing...
 
  G5
 
  G5
 
  
 
=== Original ===
 
=== Original ===
Line 85: Line 120:
 
  G90
 
  G90
 
  M300 P300 S4000
 
  M300 P300 S4000
 +
 +
 +
== Calibrating extruder ==
 +
* http://sturm.selfhost.eu/wordpress/tronxy-x5sa-24v-extruder-kalibrieren-unter-nutzung-der-erweiterten-gcodes/
 +
* https://www.thingiverse.com/groups/anycubic-i3-mega/forums/general/topic:31353
 +
 +
I got an updated extruder for my i3 mega - the one of the i3Mega S. I did not want to flash my firmware, so I had to to calibrate the extruder.
 +
 +
It took me a while, until I recognized, the sending M92 Exxx codes to the printer had no effect. I googled a lot and found out, that the printer works with another subset of gcodes:
 +
 +
The whole idea is to set a "multiplicator" value instead of a fixed one. The command is
 +
 +
M8011 S0.002 ; set multiplicator to 0.002
 +
M8500        ; save to EEPROM
 +
 +
That was my starting point get exact 100mm of filament out of the extruder. The formula to precice the solution is:
 +
 +
new multiplicator = ( messured value (mm) /  [1] ) * [2]
 +
 +
[1] filament length reference value in mm - here 100mm
 +
[2] the acual messured value, that went through the extruder -  here 0.002 (our starting point)
 +
 +
Do this until [2] = [1] :-) Voilà.
  
  
  
 
[[Category:3D Printing]]
 
[[Category:3D Printing]]

Latest revision as of 01:04, 27 March 2020

Support

Cura Plugins

Electric Print Cost Calculator

Octoprint Plugin

Start GCODE

With Nossle Clean (Cura 2.6.) and Octoprint 1.3.11

[UPDATE 06/2019 - only works with Cura 3.2]

First of all: ONLY put the code into Cura! DO NOT PUT it into Octoprint or both. This would mess things up.

End Codes will remain the same.

; CUSTOM START GCODE WITH NOSSLE CLEAN
; Anycubic i3 Mega Scnd. Gen.
; Put ONLY in Cura 3.6+ and NOT in Octoprint
G21 ;metric values
G90 ;absolute positioning
M82 ;set extruder to absolute mode
M107 ;start with the fan off
G28 X0 Y0 ;move X/Y to min endstops
G28 Z0 ;move Z to min endstops
G1 Z15.0 ;move the platform down 15mm
G28                          ; Home X/Y/Z axis
M190 S{material_bed_temperature_layer_0}
M109 S{material_print_temperature_layer_0}
G0 X1 Y0 Z0.15 F9000         ; Move in 1mm from edge and up [z] 0.15mm
G92 E0                       ; Set extruder to [0] zero
G1 X100 E50 F500             ; Extrude 100mm filament along Y axis 190mm long to prime and clean the nozzle
G92 E0                       ; Reset extruder to [0] zero end of cleaning run
G1 E-3 F500                  ; Retract filiment by 3 mm to reduce string effect
G1 X3 X100 Z15 F9000         ; Move over and rise to safe Z height
G1 X3 Y0 Z15 F9000	      ; Move back to front of bed at safe Z height to shear strings
M117 Printing...
G5

With Nossle Clean

[UPDATE 06/2019 - only works with Cura 3.2]

; CUSTOM START GCODE WITH NOSSLE CLEAN
; ORIGINAL ANYCUBIC i3 MEGA STARTCODE (some disabled)
G21 ;metric values
G90 ;absolute positioning
M82 ;set extruder to absolute mode
M107 ;start with the fan off
G28 X0 Y0 ;move X/Y to min endstops
G28 Z0 ;move Z to min endstops
G1 Z15.0 F{speed_travel} ;move the platform down 15mm
;G92 E0 ;zero the extruded length
;G1 F200 E3 ;extrude 3mm of feed stock
;G92 E0 ;zero the extruded length again
;G1 F{speed_travel}
;M117 Printing...
;G5

; http://diy3dtech.com/nozzle-cleaning-g-code/
; Place as start G-Code in Slicer
; Use of this code is at your own risk (no warranties made or implied)
;
M117 Clean			; Indicate nozzle clean in progress on LCD
;M109 S<your temp>   		; Uncomment to set your own temp [run warmer to clean out nozzle]
; M107				; Turn layer fan off
; G21				; Set to metric [change to G20 if you want Imperial]
; G90                          ; Force coordinates to be absolute relative to the origin
G28                          ; Home X/Y/Z axis
G0 X1 Y0 Z0.15 F9000         ; Move in 1mm from edge and up [z] 0.15mm
G92 E0                       ; Set extruder to [0] zero
G1 X100 E50 F500             ; Extrude 100mm filament along Y axis 190mm long to prime and clean the nozzle
G92 E0                       ; Reset extruder to [0] zero end of cleaning run
G1 E-3 F500                  ; Retract filiment by 3 mm to reduce string effect
G1 X3 X100 Z15 F9000         ; Move over and rise to safe Z height
G1 X3 Y0 Z15 F9000	      ; Move back to front of bed at safe Z height to shear strings
;
; Ensure extruder is not reset by other code or it will be 3mm short [see next line also]
;G1 E3 F500					; Uncomment if you believe exruder will be reset
; Recommend turning off SKIRT in the slicer to avoid strings pulled into first layer
; Begin printing with sliced GCode after here
G1 F{speed_travel}
M117 Printing...
G5

Original

; ORIGINAL ANYCUBIC i3 MEGA STARTCODE
G21 ;metric values
G90 ;absolute positioning
M82 ;set extruder to absolute mode
M107 ;start with the fan off
G28 X0 Y0 ;move X/Y to min endstops
G28 Z0 ;move Z to min endstops
G1 Z15.0 F{speed_travel} ;move the platform down 15mm
G92 E0 ;zero the extruded length
G1 F200 E3 ;extrude 3mm of feed stock
G92 E0 ;zero the extruded length again
G1 F{speed_travel}
M117 Printing...
G5

End Code

Original

; ANYCUBIC i3 MEGA END GCODE
M104 S0 ; turn off extruder
M140 S0 ; turn off bed
M84 ; disable motors
M107
G91 ;relative positioning
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle to release some of the pressure
G1 Z+0.5 E-5 ;X-20 Y-20 F{speed_travel} ;move Z up a bit and retract filament even more
G28 X0 ;Y0 ;move X/Y to min endstops so the head is out of the way
G1 Y180 F2000
M84 ;steppers off
G90
M300 P300 S4000


Calibrating extruder

I got an updated extruder for my i3 mega - the one of the i3Mega S. I did not want to flash my firmware, so I had to to calibrate the extruder.

It took me a while, until I recognized, the sending M92 Exxx codes to the printer had no effect. I googled a lot and found out, that the printer works with another subset of gcodes:

The whole idea is to set a "multiplicator" value instead of a fixed one. The command is

M8011 S0.002 ; set multiplicator to 0.002
M8500        ; save to EEPROM

That was my starting point get exact 100mm of filament out of the extruder. The formula to precice the solution is:

new multiplicator = ( messured value (mm) /  [1] ) * [2]
[1] filament length reference value in mm - here 100mm
[2] the acual messured value, that went through the extruder -  here 0.002 (our starting point)

Do this until [2] = [1] :-) Voilà.