Duet Forum Discussion Thread
https://discord.com/channels/711873626080804914/711873626080804917/1496987879199604818
Which Duet products are you using?
Firmware Version
3.6.2
Duet Web Control Version
2.2.1
Are you using a Single Board Computer (RaspberryPi) with your Duet?
Please upload the results of sending M122 in the gcode console.
Please upload the content of your config.g file.
M929 P"system.log" S3 ;event log file
;Config.g
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M669 K1 ; select CoreXY mode
; Network
;M551 P"octo" ;set password
;M552 S-1 ; to reactivate wifi send M552 S-1 then M552 S1 to activate wifi
M552 S1 p"ethernet" ; enable ethernet network
M550 P"octo" ; set printer name also network name
M586 P0 S1 ; enable HTTP
M586 P1 S1 ; enabled FTP
; Drives
M569 P0 S1 D2 ; Y physical drive 0 goes forwards using default driver timings
M569 P1 S1 D2 ; X physical drive 1 goes forwards using default driver timings
M569 P2 S0 ; extruder physical drive 3 goes forwards using default driver timings
M569 P3 S1 D2 ; Z LF physical drive 3 goes forwards using default driver timings
M569 P4 S0 D2 ; Z RF physical drive 4 goes forwards
M569 P5 S1 D2 ; Z CR physical drive 6 goes forwards
M569 P6 S1 ; spare physical drive 7 goes backwards
M569 P7 S0 ; Push extrudeer physical drive 8 goes forwards
;stepper motor layout
; rear
; | 5 |
;| 3 | 4 |
; front
;
M584 Y0 X1 Z3:4:5 E2 ;:7 ; set drive mapping
M350 X16 Y16 I1 ; configure microstepping with interpolation
M350 Z16 E32 ; configure microstepping
M92 X80.00 Y80.00 Z320 E1124 ; set steps per mm
M566 X300.00 Y300.00 Z100 E150 P1 ; set maximum instantaneous speed changes (mm/min) jerk
M203 X30000 Y30000 Z3000 E9000 ; set maximum speeds (mm/min)
M201 X5000 Y5000 Z600 E3000 ; set accelerations (mm/s^2)
M201.1 X1000 Y1000 Z200 ;Set reduced acceleration for special move types (mm/s^2)probing moves,stall detection
;set current
M906 X1500 Y1500 Z900 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 X Y S125 ; Set idle timeout
; Axis Limits bed size x320 y300
; Axis Limits X338 Y355 max travel not bed size
M208 x 0:300 Y0:300 Z0:300 ; set axis minima and maxima set in Tool.g
;M208 X0:310 Y0:270 Z0:300 ; set minimum and maximum axis limits
;M208 S0 X320 Y311 Z320 ; set axis maxima "Travel area" set in tool.g
;M208 S1 X-8 Y0 Z0 ; set axis minima "Travel Area" set in tool.g
; Endstops
M574 X2 S3 ; configure sensorless endstop, 1 = low end, 2 = high end. s3 = single motor,
M574 Y2 S3 ; configure sensorless endstop, 1 = low end, 2 = high end. s3 = single motor,
M574 Z2 S4 ; configure sensorless endstop, 1 = low end, 2 = high end. s3 = single motor,
;Ball joint 3pl
M671 X-11:319:154 Y-10:-10:320 S35 ;leadscrews at front left,front right, rear Center s= max correction factor must be in same order as M584
; Z-Probes >
M558 K0 P5 C"probe1" H12:6 F500:200 T30000 A3 S0.02 ; set in tool.g ..set Z probe type to unmodulated and the dive height + speeds, T= travel speed !=inverted signal tool.g
G31 K0 Z0 ; clear Z offset
G31 K0 P500 X0 Y0 Z0.0
; Anvil Probe nozzel offset
M558 K1 P8 C"PG11" H12:6 F500:200 T20000 A3 S0.02 ; set Z probe trigger value, offset and trigger height bigger the posative number the closer to the bed set in Tool.g
G31 K1 Z0 ; clear anvil offset
G31 K1 P500 X0 Y0 Z0.0
; Mesh
M557 X15:295 Y15:280 P3 ; define mesh grid P number of points
; Heaters + temperature sensors
;bed >
M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 A"Bed T °C" ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"e0heat" T0 Q10 ; create bed heater output on bed and map it to sensor 0
M307 H0 R0.838 K0.331:0.000 D3.08 E1.35 S0.90 B0 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S130 A2 ; set temperature limit for heater 0 to 120C
;hotend >
M308 S1 P"F.8" Y"rtd-max31865" F50 R430 A"Hot End °C" ; R430 for PT100 R4300 for PT1000
M950 H1 C"e1heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 R2.750 K0.452:0.000 D5.56 E1.35 S1.00 B0 V11.6 ; disable bang-bang mode for heater and set PWM limit increase D to stop temperature swing
M570 H1 P10 T20 ; heat fault detection P number of seconds before fault reported, T <> teperature from setpoint
M143 H1 S350 A2 ; set temperature limit for heater 1 to 280C
;Chamber >
M308 S2 P"e2temp" Y"thermistor" T100000 B4267 A"Chamber T °C" ; configure sensor 2 as thermistor on pin temp2
M950 H2 C"e2heat" T2 ; create chamber heater output on 1.out0 and map it to sensor 2
M307 H2 R0.384 K0.430:0.000 D8.24 E1.35 S1.00 B0 ; disable bang-bang mode for the chamber heater and set PWM limit
M570 H2 P10 T20 ; heat fault detection P number of seconds before fault reported, T <> teperature from setpoint
M141 P1 H2 ; map chamber 1 to heater number Hx
M143 H2 S85 ; set temperature limit for heater
;Dry Box >
M308 S3 P"e0temp" Y"thermistor" T100000 B4267 A"Drybox T °C" ; configure sensor as thermistor
M950 H3 C"e3heat" T3 ; create chamber heater output on duex.e2heat and map; it to sensor 3
;M307 H3 B1 S1 ; bang bang setup
M307 H3 R0.116 K0.260:0.000 D13.16 E1.35 S1.00 B0 ; B= (bang-bang mode = 1 PWM =0) s=max PWM, R lower if temperature doesnt rise fast enough, if the heater over shoots loswer the D value
M141 P2 H3 ; map heater 3 to chamber 2
M143 H3 S80 A1 ; set temperature limit for heater
;external heater >
;M308 S4 P"e1temp" Y"thermistor" T100000 B4267 A"external heater °C" ;
;M950 H3 C"e3heat" T3 ; create chamber heater output on duex.e2heat and map; it to sensor 3
;M307 H3 B1 S1
;M307 H3 R0.116 K0.260:0.000 D13.16 E1.35 S1.00 B0 ; B= (bang-bang mode = 1 PWM =0) s=max PWM, R lower if temperature doesnt rise fast enough
;M141 H3 ; map heater 3
;M143 H3 S80 A1 ; set temperature limit for heater
;DHT Sensor >
M308 S10 P"A.15" Y"dht22" A"Drybox DHT°C[C]"
M308 S11 P"S10.1" Y"dhthumidity" A"Dry box Humidity[%]"
;BME Sensor >
;m308 s11 y"bme280" p"spi.cs6" a"Ambient temp"
;m308 s12 y"bme-pressure" p"s11.1" a"Pressure[hPa]"
;m308 s13 y"bme-humidity" p"s11.2" a"Humidity[%]"
; highest tmc driver temp
;M308 S7 Y"drivers" A"max tmc temp" ; Highest driver temp
;M308 S8 Y"drivertemp" p"S7.0" A"A Drv 0" ; Motor A driver temp
;M308 S9 Y"drivertemp" p"S7.1" A" B Drv 1" ; Motot B driver temp
;M308 S12 Y"drivertemp" p"S7.2" A"Ext Drv 2" ; Motor A driver temp
;Neo Pixe LED
M950 E0 C"neopixel" T1 Q3000000 ; create a RGB Neopixel LED strip on the LED port and set SPI frequency to 3MHz
;Driver A >
;M308 S3 P"e0temp" Y"thermistor" T2000 B-746.91 A"Stepper Driver A °C" ;
;Driver B >
;M308 S4 P"e1temp" Y"thermistor" T2000 B-746.91 A"Stepper Driver B °C" ;
;stepper motor
M308 S5 P"e3temp" Y"thermistor" T100000 B4260 A"Extruder Motor °C" ;
;~~~~~~~~~~~~~~~~~~~~ Fans ~~~~~~~~~~
; Cpap
M950 F7 C"!fan0" Q25000 ; create fan and set its frequency ! invert control
M106 p7 S1 H-1 L0.25 X0.6 C"Cpap Fan" B1 ; S fan speed , L minium fan speed , x maxium fan speed B blip time in sec, H-1 disable thermostat mode ,
;extruder Heat sink >
M950 F1 C"fan1" Q250 ; create fan and set its frequency
M106 P1 S1 H1 T35 C"Extruder Heatsink Fan" B1 ; Extruder Heatsink Fan
;Dry Box
M950 F3 C"fan3" Q20000 ; create fan and set its frequency
;M106 P3 S0.1 H3 T22:45 C"Dry Box Fan"
M106 P3 S0 H-1 C"Dry Box Fan" B2 ; Dry box
;M106 P3 S0 H1 T35 L10 C"Dry Box Fan"
;Part cooling
M950 F0 C"fan5" Q25 ; create fan and set its frequency
M106 P0 S0 H-1 C"Part cooling Fan" L0.25 B0.2 ; Part cooling
;~~~~~~~~~~~~~~~~ outputs ~~~~~~~~~~~~~~~~~~
;filter
M950 F2 C"hbed" Q25000 ; create fan and set its frequency
M106 P2 S0 H-1 C"Filter Fan" B1 ; Filter fan
;12V output
;M950 P7 C"!fan0" Q25000
;M42 P7 S0.5
;ROS
M591 P1 C"e2stop" S1 D0 ;d extrurder,s1 simple senor ,Sn 0 off Sn2 on all the time
; Tools
M563 P0 D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
;M567 P0 E1.0 ;:1.0 ; use this to get the 2 exturudes to work at the same time
; Tool
T0 ; select first tool
;LIS3DH Input shaping
;M955 P0 C"PE_12+PE_10" I20
M593 P"mzv" F43
;External Buttons
M950 J1 C"!e4stop" ; config input pin switch NO connected to io2 and Gnd
M581 P1 T0 C0 ; T0 = emergency stop on trigger; T1 = pause print; T{N} = runs the macro "sys/trigger{N}.g", rising edge S1 falling edge S0
M950 J2 C"!e1stop" ; config input pin switch NO connected to io and Gnd
M581 P2 T5 C0 ; Print Again macro trigger5.g
M582 T0 T5 ; Check External Trigger
;debug
M552 s-1 ; -1 = disable WiFi module
M111 P14 S0 ;debug wifi/ethernet s1 on s0 off
M552 s1 p"ethernet" ;set up for ethernet
;service interval calculate 1000 hours into seconds 1000 * 60 *60 = 3600000
if !exists(global.serviceInterval)
global serviceInterval = 14000.0
if !exists(global.cumulativeTime)
global cumulativeTime = 0
; Custom macros
M98 P"0:/sys/global.g" ; Define Global variables
M400
M98 P"/macros/showTotalPrintTime.g" ;update printtime in BtnCmd
M98 P"0:/sys/tool.g" ; load tool settings
echo"tool"
;M98 P"0:/sys/totalValue.g"
;echo"total value"
M400
echo"start startup"
M98 P"/macros/startup_sequence"
echo"end startup"
Please upload the content of any other releveant macro files.
;update values below
echo "L1"
var filamentType = "ASA" ; filamenmnt type
var toolT =240 ; set hotend temperature
var dryboxT = 65 ; set dry box temperature
var purgeLength = 100 ; set the length of filament to purge
echo "L2"
; Don't touch anyting beyond this point(unless you know what you're doing)!!
echo "loading", {var.filamentType}
M564 S0 ; let travel outside print zone
M400 ; Wait for moves to finish
G91
echo "L3" ; Relative positioning
M83 ; Extruder relative positioning
G90 ; Absolute positioning
M98 P"/macros/park_bucket" ; Move the nozzle to the bucket defined in the settings section
M400
echo "L4" ; Wait for moves to finish
M291 P"Please wait while the nozzle is being heated up" R{"Loading " ^ var.filamentType} T5 ; Display message
M568 P0 S{var.toolT} ; Set current tool temperature
M116
echo "L5" ; wait for temperature to be reached
M291 S4 R"Inset filament" P"Is filament inserted, then press OK." K{"OK","SKIP",}
if input == 0
M291 P"Feeding filament..." R{"Loading " ^ var.filamentType} T5 ; Display new me0mode
G1 E{var.purgeLength} F300 ; purge filament at 3000mm/min
G4 P1000 ; Wait one second
G1 E-3 F180 ; Retract filament at 1800mm/min
M400
echo "L6" ; Wait for moves to complete
M292 ; Hide the message
G10 S0 ; Turn off the heater again
; Set Dry box Temperature
M291 P{"Dry box temperature being set to " ^ var.dryboxT^"°C"} T5 ; Display message
M141 P2 S{var.dryboxT} ; set drybox temperature
M143 H3 S{var.dryboxT+10} A2
echo "L7"
; "SKIP"
if input == 1
echo "skipped"
M400
;update values below
var filamentType = "ASA" ; filamenmnt type
var toolT =240 ; set hotend temperature
var dryboxT =20 ; set dry box off temperature
var purgeLength = 60 ; set the length of filament to purge
var unloadLength = -120 ; unload length
echo "U1"
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; Don't touch anyting beyond this point(unless you know what you're doing)!!
echo "Going to unload", {var.filamentType}
M564 S0 ; let travel outside print zone
M400 ; Wait for moves to finish
G91 ; Relative positioning
M83 ; Extruder relative positioning
G90 ; Absolute positioning
M98 P"/macros/park_bucket"
echo "U2" ; Move the nozzle to the bucket defined in the settings section
M400 ; Wait for moves to finish
M291 P"Please wait while the nozzle is being heated up" R{"Unloading " ^ var.filamentType} T5 ; Display message
M568 P0 S{var.toolT} ; Set current tool temperature
M116 ; wait for temperature to be reached
M291 P"Unfeeding filament..." R{"Unloading " ^ var.filamentType} T5 ; Display new message
M83
echo "U3" ; Extruder to relative mode
G1 E{var.unloadLength} F300 ; purge filament at 3000mm/min
G4 P1000 ; Wait one second
M400 ; Wait for moves to complete
M292 ; Hide the message
G10 S0 ; Turn off the heater again
; Set Dry box Temperature
M291 P{"Dry box temperature being set to " ^ var.dryboxT^"°C"} T5
echo "U4" ; Display message
M141 P2 S{var.dryboxT} ; set drybox temperature
Details specific to your printer.
core xy
Links to additional info.
What happened?
can load and unload filaments from the tool option in DWC , but the change filament will only unlad the filament .
Duet Forum Discussion Thread
https://discord.com/channels/711873626080804914/711873626080804917/1496987879199604818
Which Duet products are you using?
Firmware Version
3.6.2
Duet Web Control Version
2.2.1
Are you using a Single Board Computer (RaspberryPi) with your Duet?
Please upload the results of sending M122 in the gcode console.
Please upload the content of your config.g file.
Please upload the content of any other releveant macro files.
Details specific to your printer.
core xy
Links to additional info.
What happened?
can load and unload filaments from the tool option in DWC , but the change filament will only unlad the filament .