Solved M221 - Request for help for proper extruder drive mapping DWC
-
@code7 said in M221 - Request for help for proper extruder drive mapping DWC:
; Drives
M584 X0 Y1 Z2 E10 U4 E10 ; set drive mapping for Wire Control
M350 X16 Y16 Z16 U16 E16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z80.00 U58.21 E2487.71 W2487.71 ; set steps per mmYou've got E twice in your M584 but no W. Then you have no W in M350, but have W in M92. Start by cleaning that up.
-
Thanks for catching that. I cleaned up the config as per your suggestions but this didn't fix the problem. Do you have any other ideas?
-
Are you using FW 3.1.1 and DWC 3.1.1?
Please post your entire config.g along with the results of an M122 report.
Also send M98 P"config.g" in the console and report the results.Also, please detail exactly what you're trying to do and how you are trying to do it and what is actually happening.
Are you using the M221 command? Are you using the DWC extrusion multiplier slider?
-
I'm using FW 3.1.1 and DWC 3.1.1
Here are google doc links to the files:Config: https://docs.google.com/document/d/1BLNFMvzZ8esK1JvArW3sF61zfKlWRcS4iC9ZP0LmODM/edit?usp=sharing
M122 report: https://docs.google.com/document/d/1hMdD11lL7R2tLtmZr3LEhtUd5_bnmpR6ISe0Qh6TOmE/edit?usp=sharing
Sending the M98 P"config.g" command just resets the controller:
7/15/2020, 4:27:36 PM Connection established
7/15/2020, 4:27:36 PM Connection interrupted, attempting to reconnect...
HTTP request timed outI'm trying to change the extrusion feedrate with both the M221 command and with the DWC slider. Entering M221 D0 S150 in the header of the gcode file as well as sliding the DWC slider does not change the actual feedrate. However; entering the M221 D0 S200 in the header of the gcode file updates the DWC slider value properly.
-
m122 === Diagnostics === RepRapFirmware for Duet 2 WiFi/Ethernet version 3.1.1 running on Duet WiFi 1.02 or later Board ID: 08DGM-917NK-F2MS4-7J1DD-3SJ6Q-1ZU0G Used output buffers: 3 of 24 (21 max) === RTOS === Static ram: 27980 Dynamic ram: 93536 of which 212 recycled Exception stack ram used: 488 Never used ram: 8856 Tasks: NETWORK(ready,396) HEAT(blocked,1340) MAIN(running,896) IDLE(ready,80) Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:37:09 ago, cause: power up Last software reset at 2020-07-15 15:28, reason: User, spinning module GCodes, available RAM 8968 bytes (slot 3) Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task MAIN Error status: 10 MCU temperature: min 38.3, current 39.8, max 40.4 Supply voltage: min 24.1, current 24.3, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes Driver 0: standstill, SG min/max 0/138 Driver 1: standstill, SG min/max 0/144 Driver 2: standstill, SG min/max 0/155 Driver 3: standstill, SG min/max not available Driver 4: standstill, SG min/max not available Date/time: 2020-07-15 16:43:41 Cache data hit count 3678508979 Slowest loop: 117.00ms; fastest: 0.13ms 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 1.4ms, write time 395.2ms, max retries 0 === Move === Hiccups: 0(0), FreeDm: 169, MinFreeDm: 163, MaxWait: 1095185ms Bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves: 3, completed moves: 3, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1 === AuxDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1 === Heat === Bed heaters = -1 -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 Daemon is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 398.54ms; 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 1 WiFi firmware version 1.23 WiFi MAC address 84:f3:eb:42:a5:f1 WiFi Vcc 3.30, reset reason Unknown WiFi flash size 4194304, free heap 25904 WiFi IP address 192.168.1.4 WiFi signal strength -45dBm, reconnections 0, sleep mode modem Socket states: 0 0 0 0 0 0 0 0
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Feb 11 2020 11:45:16 GMT-0700 (Mountain Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Premier Metal MVP" ; set printer name M665 R88 L236 B55 H259.5 ; Set delta radius, diagonal rod length, printable radius and homed height M666 X-1.170 Y1.058 Z0.112 ; put your endstop adjustments here, or let auto calibration find them (default X0 Y0 Z0) ; Panel Due M575 P1 B57600 S1 ;Set baud rate Duet Board. ; Network M587 S"AM LAB" M551 P"hit2fix" ; set password M552 S0 ; Turn on Wifi ;M552 P192.168.1.0 ; enable network and set static IP - doesn't work. Static IP needs to be setup in Router M552 S1 ;M553 P255.255.255.0 ; Netmask ;M554 P192.168.1.1 ; Gateway (not used yet) M586 P0 S1 ; enable HTTP ;M586 P1 S0 ; disable FTP ;M586 P2 S0 ; disable Telnet ; Drives M569 P0 S0 ; physical drive 0 goes forwards - X M569 P1 S0 ; physical drive 1 goes forwards - Y M569 P2 S0 ; physical drive 2 goes forwards - Z M569 P3 S0 ; physical drive 3 goes forwards - E0 M569 P4 S0 ; physical drive 4 goes forwards - U - wire spool ;M584 X0 Y1 Z2 E3 ;U4 E3 ; set drive mapping M584 X0 Y1 Z2 E10 U4 W5 ; set drive mapping for Wire Control (W5 is a shadow axis) M350 X16 Y16 Z16 U16 E16 W16 I1 ; configure microstepping with interpolation ;M92 X80.00 Y80.00 Z80.00 U58.21 E3918.10 W3918.10 ; set steps per mm (original but E0 is extruding 15mm when 10mm is called) M92 X80.00 Y80.00 Z80.00 U58.21 E2487.71 W2487.71 ; set steps per mm M566 X1200.00 Y1200.00 Z1200.00 U1200 E10 W10 ; set maximum instantaneous speed changes (mm/min) M203 X4500 Y4500 Z4500 U4500 E2000 W2000 ; set maximum speeds (mm/min) M201 X300.00 Y300.00 Z300.00 U500 E500 W500 ; set accelerations (mm/s^2 (default 1000 for XYZ) M906 X2000 Y2000 Z2000 U1000 E800 I65 ; set motor currents (mA) and motor idle factor in per cent (18 Mar '20 previous value for current was 1000) (I30 is default but doesn't hold effector) M906 E800 I20 ; set motor currents (mA) and motor idle factor in per cent (18 Mar '20 previous value for current was 1000) (I30 is default but doesn't hold effector) M84 S30 ; Set idle timeout ; Axis Limits M208 Z0 S1 ; set minimum Z ; Endstops M574 X2 S1 P"!xstop" ; configure active-low endstop for high end on X via pin xstop M574 Y2 S1 P"!ystop" ; configure active-low endstop for high end on Y via pin ystop M574 Z2 S1 P"!zstop" ; configure active-low endstop for high end on Z via pin zstop ;M574 U2 S1 P"!zstop" ; test to see if we can share zstop with multiple axis. M574 U2 S1 P"exp.E2_STOP" ; configure active-low endstop for high end on Z via pin zstop (configured this pin for a Spool Rewind dummy endstop. Can use XYZ endstop as well with +) ; Z-Probe M558 P5 C"^!zprobe.in" H5 F120 T6000 ; set Z probe type to switch and the dive height + speeds (P5 selects switch for bed probing between the In/Gnd pins of the Z-probe connector) (Defualt H5 F120) ;M558 H30 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved with M500 ;G31 P500 X0 Y0 Z-5.5 ; set Z probe trigger value, offset and trigger height (Default 7.0, used -6.5 for awhile on 10 July '20 changed to -5.5) G31 P500 X0 Y0 Z-9.0 ; set Z probe trigger value, offset and trigger height (Default 7.0, used -6.5 for awhile on 13 July '20 changed to X to get more energy focused on the wire) M557 R30 S10 ; define mesh grid M208 S1 Z-5.5 ; allow movement down to Z=-1.5 ; Heaters M308 S0 P"bedtemp" A"Bed Temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S1 P"e0temp" A"Deposition Head" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S2 P"e1temp" A"Power 1" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S3 P"exp.thermistor3" A"Power 2" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S4 P"exp.thermistor4" A"Power 3" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S5 P"exp.thermistor5" A"Stepper X" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S6 P"exp.thermistor6" A"Y Axis SMA AG" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S7 P"^exp.thermistor7" A"X Axis SMA Ceramic" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S0 H-1 ; set fan 1 value. Thermostatic control is turned off M950 F2 C"!fan2" Q100 ; create fan 2 on pin fan2 and set its frequency M106 P2 C"Power Power" S0 H-1 B0.05 ; set fan 2 name and value. Thermostatic control is turned off. Blip time is set at .05sec full PWM (0.1 sec is default if field is empty). ; Expansion Pins M950 P2 C"spi.cs2" ; Auto or not for E0 controller. Set by M42 P1 S0 or S1 in macros ; Tools M563 P0 S"Deposition Head" D0 F-1 ; 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 ; Miscellaneous T0 ; select tool 0 ; Custom settings M302 P1 ; allow cold extrusion M42 P1 S50 ; turn on chamber light G92 A0 ; Start with A Axis at 0 M501 ; Loads saved (M500) values at startup (calibration etc.); Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Feb 11 2020 11:45:16 GMT-0700 (Mountain Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Premier Metal MVP" ; set printer name M665 R88 L236 B55 H259.5 ; Set delta radius, diagonal rod length, printable radius and homed height M666 X-1.170 Y1.058 Z0.112 ; put your endstop adjustments here, or let auto calibration find them (default X0 Y0 Z0) ; Panel Due M575 P1 B57600 S1 ;Set baud rate Duet Board. ; Network M587 S"AM LAB" M551 P"hit2fix" ; set password M552 S0 ; Turn on Wifi ;M552 P192.168.1.0 ; enable network and set static IP - doesn't work. Static IP needs to be setup in Router M552 S1 ;M553 P255.255.255.0 ; Netmask ;M554 P192.168.1.1 ; Gateway (not used yet) M586 P0 S1 ; enable HTTP ;M586 P1 S0 ; disable FTP ;M586 P2 S0 ; disable Telnet ; Drives M569 P0 S0 ; physical drive 0 goes forwards - X M569 P1 S0 ; physical drive 1 goes forwards - Y M569 P2 S0 ; physical drive 2 goes forwards - Z M569 P3 S0 ; physical drive 3 goes forwards - E0 M569 P4 S0 ; physical drive 4 goes forwards - U - wire spool ;M584 X0 Y1 Z2 E3 ;U4 E3 ; set drive mapping M584 X0 Y1 Z2 E10 U4 W5 ; set drive mapping for Wire Control (W5 is a shadow axis) M350 X16 Y16 Z16 U16 E16 W16 I1 ; configure microstepping with interpolation ;M92 X80.00 Y80.00 Z80.00 U58.21 E3918.10 W3918.10 ; set steps per mm (original but E0 is extruding 15mm when 10mm is called) M92 X80.00 Y80.00 Z80.00 U58.21 E2487.71 W2487.71 ; set steps per mm M566 X1200.00 Y1200.00 Z1200.00 U1200 E10 W10 ; set maximum instantaneous speed changes (mm/min) M203 X4500 Y4500 Z4500 U4500 E2000 W2000 ; set maximum speeds (mm/min) M201 X300.00 Y300.00 Z300.00 U500 E500 W500 ; set accelerations (mm/s^2 (default 1000 for XYZ) M906 X2000 Y2000 Z2000 U1000 E800 I65 ; set motor currents (mA) and motor idle factor in per cent (18 Mar '20 previous value for current was 1000) (I30 is default but doesn't hold effector) M906 E800 I20 ; set motor currents (mA) and motor idle factor in per cent (18 Mar '20 previous value for current was 1000) (I30 is default but doesn't hold effector) M84 S30 ; Set idle timeout ; Axis Limits M208 Z0 S1 ; set minimum Z ; Endstops M574 X2 S1 P"!xstop" ; configure active-low endstop for high end on X via pin xstop M574 Y2 S1 P"!ystop" ; configure active-low endstop for high end on Y via pin ystop M574 Z2 S1 P"!zstop" ; configure active-low endstop for high end on Z via pin zstop ;M574 U2 S1 P"!zstop" ; test to see if we can share zstop with multiple axis. M574 U2 S1 P"exp.E2_STOP" ; configure active-low endstop for high end on Z via pin zstop (configured this pin for a Spool Rewind dummy endstop. Can use XYZ endstop as well with +) ; Z-Probe M558 P5 C"^!zprobe.in" H5 F120 T6000 ; set Z probe type to switch and the dive height + speeds (P5 selects switch for bed probing between the In/Gnd pins of the Z-probe connector) (Defualt H5 F120) ;M558 H30 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved with M500 ;G31 P500 X0 Y0 Z-5.5 ; set Z probe trigger value, offset and trigger height (Default 7.0, used -6.5 for awhile on 10 July '20 changed to -5.5) G31 P500 X0 Y0 Z-9.0 ; set Z probe trigger value, offset and trigger height (Default 7.0, used -6.5 for awhile on 13 July '20 changed to X to get more energy focused on the wire) M557 R30 S10 ; define mesh grid M208 S1 Z-5.5 ; allow movement down to Z=-1.5 ; Heaters M308 S0 P"bedtemp" A"Bed Temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S1 P"e0temp" A"Deposition Head" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S2 P"e1temp" A"Power 1" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S3 P"exp.thermistor3" A"Power 2" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S4 P"exp.thermistor4" A"Power 3" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S5 P"exp.thermistor5" A"Stepper X" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S6 P"exp.thermistor6" A"Y Axis SMA AG" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp M308 S7 P"^exp.thermistor7" A"X Axis SMA Ceramic" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S0 H-1 ; set fan 1 value. Thermostatic control is turned off M950 F2 C"!fan2" Q100 ; create fan 2 on pin fan2 and set its frequency M106 P2 C"Power Power" S0 H-1 B0.05 ; set fan 2 name and value. Thermostatic control is turned off. Blip time is set at .05sec full PWM (0.1 sec is default if field is empty). ; Expansion Pins M950 P2 C"spi.cs2" ; Auto or not for E0 controller. Set by M42 P1 S0 or S1 in macros ; Tools M563 P0 S"Deposition Head" D0 F-1 ; 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 ; Miscellaneous T0 ; select tool 0 ; Custom settings M302 P1 ; allow cold extrusion M42 P1 S50 ; turn on chamber light G92 A0 ; Start with A Axis at 0 M501 ; Loads saved (M500) values at startup (calibration etc.) and overrides any similar commands earlier in config.g ; Power Enable/Disable Safety Relay - Expansion GPIO (0-9 pins available on Heater/Fan pins) M950 P0 C"exp.heater5" ; Expansion connector pin 18 M42 P0 S0 ; Disable Powers - DC/SSR M950 P1 C"exp.heater6" ; Expansion connector pin 23 M42 P1 S0 ; Deposition Signal OFF - AC/SSR M950 P6 C"exp.heater7" ; Expansion connector pin 31 M42 P6 S0 ; Turns On the Aiming Beams (Full Power is 0, Off is 255) M950 P5 C"exp.heater4" ; Expansion connector pin 13 M42 P5 S0 ; Turns Shield Gas OFF (Full Power is 255, Off is 0) M950 J7 C"exp.heater3" ; Expansion connector pin 8 M42 P7 S1 ; Senses conductivity between wire and bed/part ; M581 P"exp.heater3" T2 C1 ; Power Enable/Disable Safety Relay - Expansion GPIO (0-9 pins available on Heater/Fan pins) M950 P0 C"exp.heater5" ; Expansion connector pin 18 M42 P0 S0 ; Disable Powers - DC/SSR M950 P1 C"exp.heater6" ; Expansion connector pin 23 M42 P1 S0 ; Deposition Signal OFF - AC/SSR M950 P6 C"exp.heater7" ; Expansion connector pin 31 M42 P6 S0 ; Turns On the Aiming Beams (Full Power is 0, Off is 255) M950 P5 C"exp.heater4" ; Expansion connector pin 13 M42 P5 S0 ; Turns Shield Gas OFF (Full Power is 255, Off is 0) M950 J7 C"exp.heater3" ; Expansion connector pin 8 M42 P7 S1 ; Senses conductivity between wire and bed/part ; M581 P"exp.heater3" T2 C1
-
I think you should read the entry for M584 on the creation of new axis.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping
I'm not sure what your U and W axis are being used for.
I don't think it matters so much in RRF3, but maybe use V instead of W.
Also ensure you're defining all your axis in the subsequent axis commands. You're missing the W axis from M906 for instance, and you're defining E in two separate commands and overriding the Idle current from I65 to I20.
-
@code7 I second what @Phaedrux said about using V instead of W. It always used to be the case that axis had to be created in the order XYZUVWABCD. It may be different in RRF3 but I'd stick with using V instead of W just in case.
Also, as @Phaedrux said, you need to have motor/driver commands for all axes that are defined in M584. That includes M569 (drives 5 and 10 are missing from your config.g).
Not that it's relevant to your extruder issue but you've only set axes minima for Z and there is no axes maxima.
At the end of your config.g there is a G2 A0 but nowhere else is there any mention of an "A" axis. Suggest you remove that command or replace the "A" with a valid axis letter.
Once you have put all that right, check on DWC STATUS Page that there is only one extruder drive displayed and that it is drive 0. If it isn't, hit the "Change visibility" button and deselect all drives, then select just drive 0.
-
Thanks for both of your suggestions. I have implemented all of your suggestions but am still having this problem. I would like to be able to map the DWC Extruder to E10 but don't see that this as an option and wonder if this possible? Danal (God bless him) helped me design a custom extruder circuit that runs off of E10.
-
Copy and paste your updated config.g into a post here so we can see all your changes.
-
Here is the updated config.g. I've also removed all references to the U and V axis as they were for testing.
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Feb 11 2020 11:45:16 GMT-0700 (Mountain Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Delta Printer" ; set printer name M665 R88 L236 B55 H259.5 ; Set delta radius, diagonal rod length, printable radius and homed height M666 X-1.170 Y1.058 Z0.112 ; put your endstop adjustments here, or let auto calibration find them (default X0 Y0 Z0)
; Panel Due
M575 P1 B57600 S1 ;Set baud rate Duet Board.; Network
M587 S"Ammon"
M551 P"12345" ; set password
M552 S0 ; Turn on Wifi
;M552 P192.168.1.0 ; enable network and set static IP - doesn't work, Static IP needs to be setup in RouterM552 S1
;M553 P255.255.255.0 ; Netmask
;M554 P192.168.1.1 ; Gateway (not used yet)
M586 P0 S1 ; enable HTTP
;M586 P1 S0 ; disable FTP
;M586 P2 S0 ; disable Telnet; Drives
M569 P0 S0 ; physical drive 0 goes forwards - X
M569 P1 S0 ; physical drive 1 goes forwards - Y
M569 P2 S0 ; physical drive 2 goes forwards - Z
M569 P3 S0 ; physical drive 3 goes forwards - E0
M569 P10 S1 ; physical drive 10 goes forwards - E10
M584 X0 Y1 Z2 E10 ; set drive mapping with Wire Control
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
;M92 X80.00 Y80.00 Z80.00 E3918.10 ; set steps per mm (original values)
M92 X80.00 Y80.00 Z80.00 E2487.71 ; set steps per mm
M566 X1200.00 Y1200.00 Z1200.00 E10 ; set maximum instantaneous speed changes (mm/min)
M203 X4500 Y4500 Z4500 E2000 ; set maximum speeds (mm/min)
M201 X300.00 Y300.00 Z300.00 E500 ; set accelerations (mm/s^2 (default 1000 for XYZ)
M906 X2000 Y2000 Z2000 I65 ; set motor currents (mA) and motor idle factor in per cent (I30 is default but doesn't hold effector)
M906 E800 I20 ; set motor currents (mA) and motor idle factor in per cent (I30 is default but doesn't hold effector)
M84 S30 ; Set idle timeout; Axis Limits
M208 Z0 S1 ; set minimum Z for Delta Printer; Endstops
M574 X2 S1 P"!xstop" ; configure active-low endstop for high end on X via pin xstop
M574 Y2 S1 P"!ystop" ; configure active-low endstop for high end on Y via pin ystop
M574 Z2 S1 P"!zstop" ; configure active-low endstop for high end on Z via pin zstop
M574 U2 S1 P"exp.E2_STOP" ; configure active-low endstop for high end on Z via pin zstop (configured this pin for a Spool Rewind dummy endstop. Can use XYZ endstop as well with +); Z-Probe
M558 P5 C"^!zprobe.in" H5 F120 T6000 ; set Z probe type to switch and the dive height + speeds (P5 selects switch for bed probing between the In/Gnd pins of the Z-probe connector) (Defualt H5 F120)
;M558 H30 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved with M500
G31 P500 X0 Y0 Z-9.0 ; set Z probe trigger value, offset and trigger height (Default Z=-6.5)
M557 R30 S10 ; define mesh grid
M208 S1 Z-2.5 ; allow movement down to Z=-2.5; Heaters
M308 S0 P"bedtemp" A"Bed Temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S1 P"e0temp" A"Deposition Head" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S2 P"e1temp" A"Power 1" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S3 P"exp.thermistor3" A"Power 2" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S4 P"exp.thermistor4" A"Power 3" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S5 P"exp.thermistor5" A"Stepper X" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S6 P"exp.thermistor6" A"Y Axis SMA AG" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp
M308 S7 P"^exp.thermistor7" A"X Axis SMA Ceramic" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin bedtemp; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S0 H-1 ; set fan 1 value. Thermostatic control is turned off
M950 F2 C"!fan2" Q100 ; create fan 2 on pin fan2 and set its frequency
M106 P2 C"Power Power" S0 H-1 B0.05 ; set fan 2 name and value. Thermostatic control is turned off. Blip time is set at .05sec full PWM (0.1 sec is default if field is empty).; Expansion Pins
M950 P2 C"spi.cs2" ; Auto or not for E0 controller. Set by M42 P1 S0 or S1 in macros; Tools
M563 P0 S"Deposition Head" D0 F-1 ; 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; Miscellaneous
T0 ; select tool 0; Custom settings
M302 P1 ; allow cold extrusion
M42 P1 S50 ; turn on chamber light
M501 ; Loads saved (M500) values at startup (calibration etc.) and overrides any similar commands earlier in config.g; Power Enable/Disable Safety Relay - Expansion GPIO (0-9 pins available on Heater/Fan pins)
M950 P0 C"exp.heater5" ; Expansion connector pin 18
M42 P0 S0 ; Disable Powers - DC/SSR
M950 P1 C"exp.heater6" ; Expansion connector pin 23
M42 P1 S0 ; Deposition Signal OFF - AC/SSR
M950 P6 C"exp.heater7" ; Expansion connector pin 31
M42 P6 S0 ; Turns On the Aux. (Full Power is 0, Off is 255)
M950 P5 C"exp.heater4" ; Expansion connector pin 13
M42 P5 S0 ; Turns Shield Gas OFF (Full Power is 255, Off is 0)
M950 J7 C"exp.heater3" ; Expansion connector pin 8
M42 P7 S1 ; Senses conductivity between wire and bed/part
; M581 P"exp.heater3" T2 C1 -
Can you explain a bit more about what you're trying to accomplish? What is driver 10? What did Danal create for you? Was it working before in RRF2? Do you have a config example from then?
@code7 said in M221 - Request for help for proper extruder drive mapping DWC:
M574 U2 S1 P"exp.E2_STOP" ; configure active-low endstop for high end on Z via pin zstop (configured this pin for a Spool Rewind dummy endstop. Can use XYZ endstop as well with +)
You still refer to U axis endstop here.
-
@code7 What @Phaedrux said plus can you explain what hardware you are using?
By that I mean what board and any expansion boards.
I'm making a guess from you signature and the config.g file that you only have a Duet Wifi. In which case you only have 5 drivers (0 to 4). You might have a Duex 5 but it doesn't look likely from the config.g. A Duex 5 would give you 5 additional drivers which would be drivers 5 to 9.
So driver 10 would need to be somehow connected to an expansion board or the expansion header. But although it would driver 10, it can't be extruder 10 because XY and Z take up the first 3 drivers (0 to 2). So what I think you are trying to do is connect extruder 0 (the only extruder) to driver 10 which is an external driver connected to an expansion board or the expansion header.
But this all conjecture and deduction on my part so we need some more information about the hardware. A picture or two might help.
-
Thanks, I removed this line.
This was created in RRF3 to automatically speed up the extrusion feed rate based on an external trigger for closed-loop control. I was hoping to do this within the firmware, but Danal said the FW and Controller would not be able to react quickly enough.
-
Yes I am using a Duet Wifi with the external controller and motor driver wired through the expansion header. I am no longer using the E0 pins on the board so maybe it would be simpler to not use the expansion header pins for the external controller/motor driver?
-
@code7 said in M221 - Request for help for proper extruder drive mapping DWC:
Yes I am using a Duet Wifi with the external controller and motor driver wired through the expansion header. I am no longer using the E0 pins on the board so maybe it would be simpler to not use the expansion header pins for the external controller/motor driver?
Probably. But I have zero experience of using external drivers so personally, I am unable to help. If you can connect the motor directly to the onboard driver, then it becomes a piece of cake.
-
Do you know why sending either M221 S150 D0 or M221 S150 D10 has no effect on changing the feedrate?
-
Well D10 wouldn't work because there is no 10th motor driver. Not sure why D0 wouldn't work unless it is working, just not being reflected in DWC. What do you get if you just send M221 D0 by itself? Does it report the currently set feedrate?
I have to admit, I'm still pretty lost on what your setup is and what's going on. sorry.
-
Sending M221 D0 returns the current set feedrate: Extrusion factor for extruder 0: 150.0%
But sending G0 E10 F100 still feeds the extruder forward 10mm at a feed of only 100mm/min as verified with an external timer. -
I'm not sure if M221 will modify a G0 command in the way that you're expecting since it's not being detected as a coordinated print extrusion move with an X Y E value. I could be wrong, but if you're sending G0 E10 it will give you G0 E10 regardless of the M221 set.
Try giving it a G1 X Y E command instead and see if it then applies M221. I'm not sure, but that might also need to be executed from a print file.
@dc42 would have to clarify.
-
You are correct and this explains everything. M221 will only modify a G0 or G1 if it contains a coordinated print extrusion move with an X Y E value.
Would it be OK to remove most of the intermediate posts on this topic to save future users from having to read through them?
Sure appreciate your help.