Upgraded to RRF3 now I can't select tools
-
Updated my E3D tool changer from rrf2.5 to to rrf3.2 as recommended via version 3.00. All looks correct on DWC3.2. However I can't set the heaters to active or select a tool. If I select say T0, it will collect T0 as usual but it has no knowledge it is holding the tool. If I now select T1 it will go and collect T1 without dropping off T0. Sounds horrible. All other aspects work ok.
All worked fine in version2 and I have gone through the rrf3 configuration numerous times but can't see an issue.Board: Duet 2 WiFi (2WiFi)
Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 3.2 (2021-01-05)
Duet WiFi Server Version: 1.25
Duet Web Control 3.2.0; Configuration file for Duet WiFi / Ethernet
; executed by the firmware on start-up; General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P2 ; Set firmware compatibility to look like Marlin
M667 S1 ; Select CoreXY modeM575 P1 S1 B115200 ; enable support for PanelDue
; Network
; Read https://duet3d.dozuki.com/Wiki/Gcode#Section_M587_Add_WiFi_host_network_to_remembered_list_or_list_remembered_networks
M550 P"ToolChanger" ; Set machine name
M552 S1 ; Enable Networking
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet
M551 Preprap ; Machine password (used for FTP); Drive direction
M569 P0 S0 ; Drive 0 X
M569 P1 S0 ; Drive 1 Y
M569 P2 S1 ; Drive 2 Z
M569 P3 S0 ; Drive 3 E0
M569 P4 S1 ; Drive 4 E1
M569 P5 S0 ; Drive 5 E2
M569 P6 S0 ; Drive 6 E3
M569 P7 S0 ; Drive 7 COUPLER
M569 P8 S1 ; Drive 8 CLEANING BRUSH (Right)
;M569 P9 S0 ; Drive 9 CLEANING BRUSH (Left)M584 X0 Y1 Z2 C7 U8 E3:4:5:6 ; Apply custom drive mapping
M208 X-25:325.5 Y-49:250 Z-1:300 C0:260 U0:100 S0 ; Set axis maxima & minima
M350 C8 I0 ; Configure microstepping without interpolation
M350 X16 Y16 Z16 E16:16:16:16 U16 I1 ; Configure microstepping with interpolation
M92 X100 Y100 Z1600 C100 U4000 E800:818:800:804 ; Set steps per mm
M566 X400 Y400 Z8 C2 U2 E2:2:2:2 ; Set maximum instantaneous speed changes (mm/min)
M203 X12000 Y12000 Z1000 C5000 U500 E1000:5000:5000:5000 ; Set maximum speeds (mm/min)
M201 X3000 Y3000 Z100 C400 U400 E2500:2500:2500:2500 ; Set accelerations (mm/s^2)
M906 X1600 Y1600 Z1000 C400 U1000 E1400:1000:1000:1000 I30 ; Set motor currents (mA) and motor idle factor in percent
M84 S30 ; Set idle timeout; Endstops
M574 Z0 ; Set Z endstop probe
M574 Y1 S1 P"ystop" ; set endstop configuration (Y endstop only, at Low end,
M574 X2 S1 P"xstop" ; set endstop configuration (X endstop only, at High end,;Z Probe
M558 P8 C"zstop" H5 F120 T10000
G31 P200 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height
M557 X10:290 Y20:180 S40 ; Define mesh grid;Stall Detection
M915 C S5 F0 H200 ; Coupler
M574 U1 S3 ; Set U endstop stall detection
M915 U S3 F0 H200 R4700 ; U Axes Right Brush; Heaters
;Bed
M308 S0 P"bedtemp" Y"thermistor" A"Bed" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H0 C"bedheat" T0 ; Bed heater
M140 H0 ; Add heater to bed after RRF3.01 RC10
M143 H0 S120 ; Set temperature limit for heater 0 (Bed)160C
M307 H0 A313.6 C235.3 D1.8 V24.2 S0.5 B0 ; PIDM308 S1 P"e0temp" Y"thermistor" A"T0" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H1 C"e0heat" T1 ; Extruder 0 heater
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
;M307 H1 A414.9 C221.2 D3.8 V24.2 B0 ; PID
M307 H1 R1.753 C217.6 D5.37 S1.00 V24.3 ; Pid values from rrf3M308 S2 P"e1temp" Y"thermistor" A"T1" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H2 C"e1heat" T2 ; Extruder 1 heater
M143 H2 S280 ; Set temperature limit for heater 2 to 280C
M307 H2 A458.2 C218.0 D4.2 V24.2 B0 ; PIDM308 S3 P"e2temp" Y"thermistor" A"T2" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H3 C"duex.e2heat" T3 ; Extruder 2 heater
M143 H3 S280 ; Set temperature limit for heater 3 to 280C
M307 H3 A484.6 C225.0 D3.6 V24.3 B0 ; PIDM308 S4 P"e3temp" Y"thermistor" A"T3" T100000 B4725 C7.06e-8 ; Set thermistor
M950 H4 C"duex.e3heat" T4 ; Extruder 3 heater
M143 H4 S280 ; Set temperature limit for heater 4 to 280C
M307 H0 A468.2 C284.7 D4.0 V 24.3 B0 ; PID; Tools
M563 P0 S"T0" D0 H1 F2 ; Define tool 0
G10 P0 X15 Y60 Z-5.6 ; Reset tool 0 axis offsets
G10 P0 R0 S0 ; Reset initial tool 0 active and standby temperatures to 0CM563 P1 S"T1" D1 H2 F4 ; Define tool 1
G10 P1 X10 Y55 Z-30.77 ; Reset tool 1 axis offsets
G10 P1 R0 S0 ; Reset initial tool 1 active and standby temperatures to 0CM563 P2 S"T2" D2 H3 F6 ; Define tool 2
G10 P2 X-25 Y55 Z-30.69 ; Reset tool 2 axis offsets
G10 P2 R0 S0 ; Reset initial tool 2 active and standby temperatures to 0CM563 P3 S"T3" D3 H4 F8 ; Define tool 3
G10 P3 X-26 Y47 Z-39.38 ; Reset tool 3 axis offsets
G10 P3 R0 S0 ; Reset initial tool 3 active and standby temperatures to 0C; Fans
M106 P0 S0 ; UNUSED
M950 F1 C"fan1"
M950 F2 C"fan2"
M950 F3 C"duex.fan3"
M950 F4 C"duex.fan4"
M950 F5 C"duex.fan5"
M950 F6 C"duex.fan6"
M950 F7 C"duex.fan7"
M950 F8 C"duex.fan8"M106 P1 S200 H1 T45 ; T0 HE
M106 P2 S0 ; T0 PCF
M106 P3 S200 H2 T45 ; T1 HE
M106 P4 S0 ; T1 PCF
M106 P5 S200 H3 T45 ; T2 HE
M106 P6 S0 ; T2 PCF
M106 P7 S200 H4 T45 ; T3 HE
M106 P8 S0 ; T3 PCFM593 F50 ; cancel ringing at 50Hz (https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
;M376 H15 ; bed compensation taperT-1 ;deselect tools
;M572 D0 S0.2 ; pressure advance T0
;M572 D1 S0.2 ; pressure advance T1
;M572 D2 S0.2 ; pressure advance T2
;M572 D3 S0.2 ; pressure advance T3##################################
; tpre3.g
; called before tool 3 is selected;Ensure no tool is selected
T-1;Unlock Coupler
G0 Z3 F700
G1 X313.5 Y150 F50000 ; Move to location
G1 X313.5 Y200 F50000 ; Move in
G1 X313.5 Y221 F3500 ; CollectM98 P/macros/Coupler - Lock ; Close Coupler
;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
G91
G1 Z50 F1000
G90
G1 H2 U70 F1200 ; Reset brush heightG1 X313.5 Y120 F4000 ; Move Out
##############################
09/01/2021, 20:50:16 M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.2 running on Duet WiFi 1.02 or later + DueX5
Board ID: 08DLM-996RU-N85S4-7JKD2-3SJ6J-1A9MR
Used output buffers: 3 of 24 (24 max)
=== RTOS ===
Static ram: 23460
Dynamic ram: 76344 of which 60 recycled
Never used RAM 12216, free system stack 95 words
Tasks: NETWORK(ready,163) HEAT(blocked,309) DUEX(blocked,35) MAIN(running,450) IDLE(ready,19)
Owned mutexes:
=== Platform ===
Last reset 00:52:21 ago, cause: software
Last software reset at 2021-01-09 19:57, reason: User, GCodes spinning, available RAM 12216, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x0c
Aux0 errors 0,0,0
MCU temperature: min 38.4, current 38.6, max 39.8
Supply voltage: min 24.2, current 24.3, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes
Driver 0: position 11950, standstill, SG min/max not available
Driver 1: position -14050, standstill, SG min/max not available
Driver 2: position 8000, standstill, SG min/max not available
Driver 3: position 120000, standstill, SG min/max not available
Driver 4: position 3300, standstill, SG min/max not available
Driver 5: position 0, standstill, SG min/max not available
Driver 6: position 0, standstill, SG min/max not available
Driver 7: position 0, standstill, SG min/max not available
Driver 8: position 0, standstill, SG min/max not available
Driver 9: position 0, standstill, SG min/max not available
Driver 10: position 0
Driver 11: position 0
Date/time: 2021-01-09 20:50:12
Cache data hit count 3910540218
Slowest loop: 12.55ms; fastest: 0.21ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 4.3ms, write time 1.0ms, max retries 0
=== Move ===
DMs created 83, maxWait 0ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 65, completed moves 65, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is idle in state(s) 0
Trigger is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
Daemon is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 201.80ms; fastest: 0.10ms
Responder states: HTTP(2) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
HTTP sessions: 1 of 8- WiFi -
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 1
WiFi firmware version 1.25
WiFi MAC address f4:cf:a2:6e:64:8e
WiFi Vcc 3.37, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 24000
WiFi IP address 172.24.1.106
WiFi signal strength -48dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0
=== DueX ===
Read count 0, 0.00 reads/min
09/01/2021, 20:19:01 M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 3.2 running on Duet WiFi 1.02 or later + DueX5
Board ID: 08DLM-996RU-N85S4-7JKD2-3SJ6J-1A9MR
Used output buffers: 3 of 24 (24 max)
=== RTOS ===
Static ram: 23460
Dynamic ram: 76344 of which 60 recycled
Never used RAM 12216, free system stack 95 words
Tasks: NETWORK(ready,163) HEAT(blocked,309) DUEX(blocked,35) MAIN(running,450) IDLE(ready,19)
Owned mutexes: WiFi(NETWORK)
=== Platform ===
Last reset 00:21:07 ago, cause: software
Last software reset at 2021-01-09 19:57, reason: User, GCodes spinning, available RAM 12216, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
Error status: 0x0c
Aux0 errors 0,0,0
MCU temperature: min 38.4, current 39.4, max 39.8
Supply voltage: min 24.1, current 24.3, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes
Driver 0: position 11950, standstill, SG min/max 0/179
Driver 1: position -14050, standstill, SG min/max 0/1023
Driver 2: position 8000, standstill, SG min/max 0/1023
Driver 3: position 120000, standstill, SG min/max not available
Driver 4: position 3300, standstill, SG min/max not available
Driver 5: position 0, standstill, SG min/max not available
Driver 6: position 0, standstill, SG min/max not available
Driver 7: position 0, standstill, SG min/max 33/543
Driver 8: position 0, standstill, SG min/max 0/394
Driver 9: position 0, standstill, SG min/max not available
Driver 10: position 0
Driver 11: position 0
Date/time: 2021-01-09 20:18:58
Cache data hit count 1571915535
Slowest loop: 22.12ms; fastest: 0.19ms
I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
=== Storage ===
Free file entries: 10
SD card 0 detected, interface speed: 20.0MBytes/sec
SD card longest read time 3.9ms, write time 2.3ms, max retries 0
=== Move ===
DMs created 83, maxWait 1054604ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 65, completed moves 65, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== Heat ===
Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
=== GCodes ===
Segments left: 0
Movement lock held by null
HTTP is idle in state(s) 0
Telnet is idle in state(s) 0
File is idle in state(s) 0
USB is idle in state(s) 0
Aux is idle in state(s) 0
Trigger is idle in state(s) 0
Queue is idle in state(s) 0
LCD is idle in state(s) 0
Daemon is idle in state(s) 0
Autopause is idle in state(s) 0
Code queue is empty.
=== Network ===
Slowest loop: 36.67ms; fastest: 0.00ms
Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
HTTP sessions: 1 of 8 - WiFi -
Network state is active
WiFi module is connected to access point
Failed messages: pending 0, notready 0, noresp 0
WiFi firmware version 1.25
WiFi MAC address f4:cf:a2:6e:64:8e
WiFi Vcc 3.37, reset reason Turned on by main processor
WiFi flash size 4194304, free heap 24000
WiFi IP address 172.24.1.106
WiFi signal strength -47dBm, mode 802.11n, reconnections 0, sleep mode modem
Clock register 00002002
Socket states: 0 0 0 0 0 0 0 0
=== DueX ===
Read count 1, 0.05 reads/min
09/01/2021, 20:18:35 Upload of config.g successful after 0s
09/01/2021, 19:58:22 T0
Error: G0/G1: insufficient axes homed
09/01/2021, 19:58:05 Connection established
09/01/2021, 19:58:02 Connection interrupted, attempting to reconnect...
HTTP request timed out
09/01/2021, 19:57:50 Upload of config.g successful after 0s
09/01/2021, 19:54:55 Connection established
09/01/2021, 19:54:53 Connection interrupted, attempting to reconnect...
HTTP request timed out
09/01/2021, 19:54:41 Upload of config.g successful after 0s
09/01/2021, 19:52:07 Upload of config.g successful after 0s
09/01/2021, 19:48:59 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:48:07 Auto tuning heater 1 completed after 3 idle and 5 tuning cycles in 445 seconds. This heater needs the following M307 command:
M307 H1 R1.753 C217.6 D5.37 S1.00 V24.3
Edit the M307 H1 command in config.g to match this. Omit the V parameter if the heater is not powered from VIN.
09/01/2021, 19:45:50 Auto tune starting phase 3, fan off
09/01/2021, 19:43:52 Auto tune starting phase 2, heater settling
09/01/2021, 19:40:46 Auto tune starting phase 1, heater on
09/01/2021, 19:40:41 M303 H1 S240
Auto tuning heater 1 using target temperature 240.0°C and PWM 1.00 - do not leave printer unattended
09/01/2021, 19:35:15 Connection established
09/01/2021, 19:35:13 Connection interrupted, attempting to reconnect...
09/01/2021, 19:35:04 M25
Cancelled printing file 0:/gcodes/Switchbox lid.gcode, print time was 0h 0m
Resume state saved
Warning: Obsolete use of S parameter on G1 command. Use H parameter instead.
Printing paused at X0.0 Y0.0 Z0.0 U0.0 C0.0
09/01/2021, 19:35:04 Emergency stop, attemping to reconnect...
09/01/2021, 19:34:25 M32 "0:/gcodes/Switchbox lid.gcode"
File 0:/gcodes/Switchbox lid.gcode selected for printing
09/01/2021, 19:28:10 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:09 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:09 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:08 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:08 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:05 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:03 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:28:00 T1
Error: G0/G1: insufficient axes homed
09/01/2021, 19:27:51 Connection established
09/01/2021, 19:27:49 Connection interrupted, attempting to reconnect...
HTTP request timed out
09/01/2021, 19:27:37 Upload of config.g successful after 0s
09/01/2021, 19:26:22 Connected to 172.24.1.106
- WiFi -
-
I would suggest you run
M98 P"config.g"
My guess is because you're creating your fans after the tools are being defined, that the tool definitions are failing as your don't have any fans defined at that point.
-
@jay_s_uk
Afraid that didn't help. I re ordered config as you suggested but the same outcome. -
@johneato can you post your pre, post and free file contents for T0?
-
@jay_s_uk said in Upgraded to RRF3 now I can't select tools:
@johneato can you post your pre, post and free file contents for T0?
; tpre0.g
; called before tool 0 is selected;Ensure no tool is selected
T-1
;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
G1 Z15 F1000M98 P/macros/Coupler - Unlock ; Unlock Coupler
G1 X-10.5 Y180 F20000 ; Move to location
G1 X-10.5 Y200 F20000 ; Move in
G1 X-10.5 Y220.5 F3500 ; CollectM98 P/macros/Coupler - Lock ; Close Coupler
G1 X-10.5 Y130 F4000 ; Move Out
#################
; tpost0.g
; called after tool 0 has been selectedG1 H2 U58 F1200 ; Set brush height
;M98 Pprime_Right.g ;prime nozzle
G29 S1 ;mesh levelling on#################
; tfree0.g
; called when tool 0 is freed;Drop the bed
G91
G1 Z4 F1000
G90;mesh levelling off
G29 S2;Purge nozzle
;M98 Ppurge.g;Move In
G53 G1 X-10.5 Y150 F10000
G53 G1 X-10.5 Y200 F10000
G53 G1 X-10.5 Y220.5 F2500;Open Coupler
M98 P/macros/Coupler - Unlock;fan off
M106 P2 S0;Move Out
G53 G1 X-10.5 Y175 F10000 -
@johneato I think the T-1 is your issue in your tpre.
Take that out. -
@jay_s_uk said in Upgraded to RRF3 now I can't select tools:
@johneato I think the T-1 is your issue in your tpre.
Take that out.Absolutely right. That has sorted it. I also removed it from config.g. I would love to know your logic for suspecting that command.
Thanks very much indeed for your help. -
T-1 unloads whatever tool is loaded.
Calling it would run the free file for whatever is active.
It's just illogical to have it as part of a tool change file.