Solved Duet3 6CH + 3CH expansion board - Missing steps.
-
Have you done just one print since powering the printer up?
-
@dc42 said in Duet3 6CH + 3CH expansion board - Missing steps.:
Have you done just one print since powering the printer up?
No, I did several tests. But let power cycle and try again.
-
Started fresh with power-cycle.
According to job info and gcode file the filament usage should be 2652.10 mm
And according to driver position it extruded only 1418.20
So there is 1233.9 mm discrepancy...
Diagnostics for Duet 3
M122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.2 running on Duet 3 MB6HC v1.01 or later (SBC mode) Board ID: 08DJM-956L2-G43S8-6JKDL-3SJ6L-1802G Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 149788 Dynamic ram: 63168 of which 68 recycled Never used RAM 145808, free system stack 128 words Tasks: Linux(ready,75) HEAT(blocked,296) CanReceiv(blocked,848) CanSender(blocked,337) CanClock(blocked,352) TMC(blocked,19) MAIN(running,720) IDLE(ready,19) Owned mutexes: HTTP(MAIN) === Platform === Last reset 01:15:28 ago, cause: power up Last software reset at 2021-01-06 22:26, reason: User, none spinning, available RAM 145840, slot 0 Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 MCU temperature: min 38.9, current 39.0, max 39.8 Supply voltage: min 24.0, current 24.3, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.1, current 12.1, max 12.2, under voltage events: 0 Driver 0: position 0, standstill, reads 18607, writes 2 timeouts 0, SG min/max 0/240 Driver 1: position 0, standstill, reads 18607, writes 2 timeouts 0, SG min/max 0/231 Driver 2: position 4760, standstill, reads 18607, writes 2 timeouts 0, SG min/max 0/239 Driver 3: position 0, standstill, reads 18607, writes 2 timeouts 0, SG min/max 0/254 Driver 4: position 0, standstill, reads 18607, writes 2 timeouts 0, SG min/max 0/792 Driver 5: position 0, standstill, reads 18606, writes 2 timeouts 0, SG min/max 0/1023 Date/time: 2021-01-07 00:26:32 Slowest loop: 89.52ms; fastest: 0.04ms === Storage === Free file entries: 10 SD card 0 not detected, interface speed: 37.5MBytes/sec SD card longest read time 0.0ms, write time 0.0ms, max retries 0 === Move === DMs created 125, maxWait 131ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 95097, completed moves 95097, 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 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1 Heater 0 is on, I-accum = 0.3 Heater 1 is on, I-accum = 0.3 === GCodes === Segments left: 0 Movement lock held by null HTTP* is doing "M122" 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 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === CAN === Messages queued 89455, send timeouts 0, received 242, lost 0, longest wait 20ms for reply type 6024, free buffers 48 === SBC interface === State: 4, failed transfers: 0 Last transfer: 1ms ago RX/TX seq numbers: 28721/28721 SPI underruns 0, overruns 0 Number of disconnects: 0, IAP RAM available 0x2c8a8 Buffer RX/TX: 0/0-0 === Duet Control Server === Duet Control Server v3.2.0 Code buffer space: 4096 Configured SPI speed: 8000000 Hz Full transfers per second: 51.22 Maximum length of RX/TX data transfers: 2584/1324
Diagnostics for board 1
M122 B1 Diagnostics for board 1: Duet EXP3HC firmware version 3.2 (2021-01-05) Bootloader ID: not available Never used RAM 154848, free system stack 156 words HEAT 90 CanAsync 94 CanRecv 84 TMC 30 MAIN 287 AIN 257 Last reset 01:06:25 ago, cause: power up Last software reset data not available Driver 0: position 0, 80.0 steps/mm, standstill, reads 48117, writes 0 timeouts 0, SG min/max not available Driver 1: position 290732, 205.0 steps/mm, standstill, reads 48116, writes 0 timeouts 0, SG min/max 0/698 Driver 2: position 0, 80.0 steps/mm, standstill, reads 48115, writes 0 timeouts 0, SG min/max not available Moves scheduled 74262, completed 74262, in progress 0, hiccups 144 No step interrupt scheduled VIN: 24.7V, V12: 12.3V MCU temperature: min 43.8C, current 44.0C, max 44.2C Ticks since heat task active 138, ADC conversions started 3985880, completed 3985879, timed out 0 Last sensors broadcast 0x00000000 found 0 141 ticks ago, loop time 0 CAN messages queued 22, send timeouts 0, received 15281, lost 0, free buffers 36
config.g
; Configuration file for Duet 3 (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sat Aug 01 2020 21:20:25 GMT-0400 (Eastern Daylight Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name M669 K1 ; select CoreXY mode ; Drives ; Dnnn 0=constant off time, 1=random off time, 2=spread cycle, 3=stealthChop or stealthChop2 M569 P0.0 S1 D2 ; Z1 physical drive goes forwards, spread cycle M569 P0.1 S1 D2 ; Z2 physical drive goes forwards, spread cycle M569 P0.2 S1 D2 ; Z3 physical drive goes forwards, spread cycle M569 P0.3 S1 D2 ; Z4 physical drive goes backwards, spread cycle M569 P0.4 S1 D2 ; X physical drive goes forwards, spread cycle M569 P0.5 S1 D2 ; Y physical drive goes forwards, spread cycle M569 P1.1 S1 D2 ; E0 physical drive goes forwards, spread cycle ; set drive mappings M584 X0.4 Y0.5 Z0.0:0.1:0.2:0.3 E1.1 ; leadscrews at rear left, front middle, rear right M671 X14.891:14.891:567.309:567.309 Y-44.113:466.887:466.887:-44.113 S20 ; configure microstepping with interpolation M350 X16 Y16 Z1 E8 I1 ; set steps per mm ;M92 X160.00 Y160.00 Z200.00 E172 M92 X160.00 Y160.00 Z200.00 E205 ; set maximum instantaneous speed changes (jerk) (mm/min) M566 X500.00 Y500.00 Z50.00 E3000.00 ; set maximum speeds (mm/min) M203 X30000.00 Y30000.00 Z1200.00 E180000.00 ; set accelerations (mm/s^2) M201 X10000.00 Y10000.00 Z100.00 E5000.00 ; set motor currents (mA) and motor idle factor in percent M906 X1500 Y1500 Z1500 E1300 I80 ; Set idle timeout M84 S30 ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X515 Y515 Z540 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io1.in" ; configure active-high endstop for low end on X via pin io1.in M574 Y1 S1 P"io0.in" ; configure active-high endstop for low end on Y via pin io0.in M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M950 S0 C"io4.out" ; create servo pin 0 for BLTouch M558 P9 C"!io4.in" H10 A5 R0.2 S0.005 F100 T10000 ; set Z probe type to bltouch(P9),the dive height(H), number of repeats(A), recovery time(R), speed(F dive and T travel) ;M558 P8 C"^io4.in" H30 F600 T6000 ; set Z probe type to switch and the dive height + speeds G31 P500 X43.00 Y-24 Z1.82 ; set Z probe trigger value, offset and trigger height ;G31 P1000 X0 Y0 Z0 ; set Z probe trigger value, offset and trigger height M557 X40:480 Y40:450 S55:51.2 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S105 ; set temperature limit for heater 0 to 100C M308 S1 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit ; Fans M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency M106 P0 C"PART COOLING" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off M950 F1 C"out8" Q500 ; create fan 1 on pin out8 and set its frequency M106 P1 C"AQUA" S1 H1 T45 ; set fan 1 name and value. Thermostatic control is turned on ; Tools M563 P0 S"Hotend" D0 H1 F0 ; define tool 0 G10 P0 X-3 Y24 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; set voltage thresholds and actions to run on power loss M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; select first tool T0 ; Print and travel acceleration ;M204 P6000 T4000 ; fix for BLTouch self-test at startup ;M280 P0 S60 ; BLtouch - toggle switch mode ;G4 P1000 ; wait 1 second ;M280 P0 S120 ; BLtouch toggle self-test ; pressure advance M572 D0 S0.046 ; Firmware retraction M207 D0 S0.8 F900 Z0.1 R0 ; Dynamic acceleration. Cancel ringing at 27.59Hz M593 F27.59 ; Use config override M501
-
I tried to connect XY to expansion board and E to Duet3, now X and Y missing steps... So it has to be something wrong...
-
@evomotors said in Duet3 6CH + 3CH expansion board - Missing steps.:
I tried to connect XY to expansion board and E to Duet3, now X and Y missing steps... So it has to be something wrong...
Are you sure they are missing steps? Has there been a layer shift?
-
@evomotors said in Duet3 6CH + 3CH expansion board - Missing steps.:
So there is 1233.9 mm discrepancy...
Please provide the GCode file you are printing, and I will run it on my bench system, using the config.g file you have already posted.
-
@dc42
No, It is likely a layer shifts on every layer when I wired YX motors to the expansion board.So any motor connected to expansion board is under powered for some reason in my setup.
-
@dc42 said in Duet3 6CH + 3CH expansion board - Missing steps.:
@evomotors said in Duet3 6CH + 3CH expansion board - Missing steps.:
So there is 1233.9 mm discrepancy...
Please provide the GCode file you are printing, and I will run it on my bench system, using the config.g file you have already posted.
To save time I tried just a simple cookie cutter from thingiverse bun.gcode
But I think you are right and the issue could be with motor stalling, but it's not stalling because of the bed motor or mechanical issue as when I switched XY to the EXP3HC, XY started stalling. So there is something wrong with drivers current adjustments.
I have exactly the same issue with tool board. I had to use E motor driver on Duet 3 instead of Tool-Board as I had exactly the same issue.
-
@evomotors Just a suggestion - if you run M122 B1 during a print do all the voltages look good? No under voltage events or anything like that? It sounds a bit like power supply issue (to the expansion board) but I'd have thought that would show up as under voltage.
-
@deckingman said in Duet3 6CH + 3CH expansion board - Missing steps.:
@evomotors Just a suggestion - if you run M122 B1 during a print do all the voltages look good? No under voltage events or anything like that? It sounds a bit like power supply issue (to the expansion board) but I'd have thought that would show up as under voltage.
M122 B1 always showing up something like this, never under voltage.
VIN: 24.7V, V12: 12.3V
-
@dc42
Any news on running test? -
@dc42
So XY wasn't staling, expansion board just couldn't keep up step rate at 250mm/s travel moves. -
@evomotors said in Duet3 6CH + 3CH expansion board - Missing steps.:
@dc42
So XY wasn't staling, expansion board just couldn't keep up step rate at 250mm/s travel moves.What was the steps/mm and microstepping for the motor on the expansion board? Are you certain that you were running RRF 3.2 on both boards? [EDIT: your M122 reports indicate that you are, assuming you haven't downgraded firmware since then.]
PS:
- Why are you sure that it couldn't keep up? Perhaps because it worked at a lower speed?
- Did you capture a M122 B1 report after the print at 250mm/sec travel speed?
-
@dc42 said in Duet3 6CH + 3CH expansion board - Missing steps.:
@evomotors said in Duet3 6CH + 3CH expansion board - Missing steps.:
@dc42
So XY wasn't staling, expansion board just couldn't keep up step rate at 250mm/s travel moves.What was the steps/mm and microstepping for the motor on the expansion board? Are you certain that you were running RRF 3.2 on both boards? [EDIT: your M122 reports indicate that you are, assuming you haven't downgraded firmware since then.]
PS:
- Why are you sure that it couldn't keep up? Perhaps because it worked at a lower speed?
- Did you capture a M122 B1 report after the print at 250mm/sec travel speed?
It was the same micro stepping on the expansion board as in my config (x16). I'm running conservative jerk but pretty fast acceleration.
; configure microstepping with interpolation M350 X16 Y16 Z1 E8 I1 ; set steps per mm M92 X160.00 Y160.00 Z200.00 E172 ; set maximum instantaneous speed changes (jerk) (mm/min) M566 X500.00 Y500.00 Z50.00 E3000.00 ; set maximum speeds (mm/min) M203 X30000.00 Y30000.00 Z1200.00 E180000.00 ; set accelerations (mm/s^2) M201 X10000.00 Y10000.00 Z100.00 E5000.00
Yes I'm sure I'm running 3.2, I did not downgrade.
- It appeared fine on print moves but was layer shifting after each fast travel move.
- Unfortunately I didn't capture after trying to use expansion board for XY
-
@evomotors Suggestion. If you can, run a print with XY on the mainboard and take a video of it - nothing fancy - a phone should be good enough. Then put the XY motors on the expansion board and run the same print and video that. The might provide the evidence................
-
@deckingman said in Duet3 6CH + 3CH expansion board - Missing steps.:
@evomotors Suggestion. If you can, run a print with XY on the mainboard and take a video of it - nothing fancy - a phone should be good enough. Then put the XY motors on the expansion board and run the same print and video that. The might provide the evidence................
And post it on YouTube? that will give negative advertisement to Duet3d, I don't have many subscribers, but it will have at least 300 to 400 views.
-
We're not afraid of troubleshooting.
-
@Phaedrux said in Duet3 6CH + 3CH expansion board - Missing steps.:
We're not afraid of troubleshooting.
I spent 3 month troubleshooting exactly the same issue (inconsistent or under extrusion) on the tool-board, finally I had to remove it completely from my printer. And then I made the same mistake ordering expansion board....
-
I am sorry you're having issues. We'd very much like to get to the bottom of it and have a solution for you.
-
@evomotors said in Duet3 6CH + 3CH expansion board - Missing steps.:
@deckingman said in Duet3 6CH + 3CH expansion board - Missing steps.:
@evomotors Suggestion. If you can, run a print with XY on the mainboard and take a video of it - nothing fancy - a phone should be good enough. Then put the XY motors on the expansion board and run the same print and video that. The might provide the evidence................
And post it on YouTube? that will give negative advertisement to Duet3d, I don't have many subscribers, but it will have at least 300 to 400 views.
...or just upload it to google drive or dropbox. But then again, there is already this video of mine on YouTube comparing Duet 2 with Duet 3 which isn't necessarily flattering https://www.youtube.com/watch?v=8Ej7DZAK22o. Fair and balanced IMO, but I do mention "warts and all" and it's had 1.4k views to date......