Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC
-
@Phaedrux said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
And for good measure can you post the results of M122 as well when configured as E?
We could also start sending the basic axis setup commands by themselves to see what the firmware thinks is configured and see if it meets expectation.
M201, M203, M566, M584, etc etc
But I think we may get good results from a clean config.
1/5/2021, 11:17:48 PM M122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.2 running on Duet 3 MB6HC v1.01 or later (SBC mode)
Board ID: 08DJM-956BA-NA3TJ-6JKDJ-3S86P-1T9LT
Used output buffers: 1 of 40 (10 max)
=== RTOS ===
Static ram: 149788
Dynamic ram: 62828 of which 36 recycled
Never used RAM 146180, free system stack 192 words
Tasks: Linux(ready,102) HEAT(blocked,297) CanReceiv(blocked,927) CanSender(blocked,371) CanClock(blocked,352) TMC(blocked,19) MAIN(running,1179) IDLE(ready,19)
Owned mutexes: HTTP(MAIN)
=== Platform ===
Last reset 00:00:49 ago, cause: software
Last software reset at 2021-01-05 23:16, reason: User, none spinning, available RAM 146252, slot 2
Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 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 33.9, current 34.3, max 34.4
Supply voltage: min 24.2, current 24.3, max 24.3, 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 13340, writes 20 timeouts 0, SG min/max 0/0
Driver 1: position 0, standstill, reads 13341, writes 20 timeouts 0, SG min/max 0/0
Driver 2: position 0, standstill, reads 13341, writes 20 timeouts 0, SG min/max 0/0
Driver 3: position 0, standstill, reads 13342, writes 19 timeouts 0, SG min/max 0/0
Driver 4: position 0, standstill, reads 13341, writes 20 timeouts 0, SG min/max 0/41
Driver 5: position 0, standstill, reads 13350, writes 11 timeouts 0, SG min/max 0/0
Date/time: 2021-01-05 23:17:48
Slowest loop: 0.44ms; fastest: 0.05ms
=== 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 18449ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 1, completed moves 1, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 1], 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 1 is on, I-accum = 0.0
=== 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 188, send timeouts 433, received 0, lost 0, longest wait 0ms for reply type 0, free buffers 48
=== SBC interface ===
State: 4, failed transfers: 0
Last transfer: 1ms ago
RX/TX seq numbers: 1696/1696
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: 35.40
Maximum length of RX/TX data transfers: 4788/860 -
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
With the generated config file it also does not print anything to the console.
That may be normal. In SBC mode there aren't any network commands present to echo back, and your heaters may not be over powered so no warning.
Can you post the generated config?
-
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
M906 X{20000.8} M906 Y{20000.8} M906 Z{20000.8} ;M906 E{10000.9} M906 U{1000*0.9}
If you're trying to get percentages with this, just use M913 instead. I set my current to the rated max with M906 and then use M913 to set it to a percentage of that.
-
@Phaedrux said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
M906 X{20000.8} M906 Y{20000.8} M906 Z{20000.8} ;M906 E{10000.9} M906 U{1000*0.9}
If you're trying to get percentages with this, just use M913 instead. I set my current to the rated max with M906 and then use M913 to set it to a percentage of that.
I found the culprit:
M906 E900 ; Works
and
M906 E{1000*0.9} ; Gives the issue.Interesting that these seem to work:
M906 X{20000.8}
M906 Y{20000.8}
M906 Z{2000*0.8} -
@Phaedrux said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
M906 X{20000.8} M906 Y{20000.8} M906 Z{20000.8} ;M906 E{10000.9} M906 U{1000*0.9}
If you're trying to get percentages with this, just use M913 instead. I set my current to the rated max with M906 and then use M913 to set it to a percentage of that.
One more note:
M906 U{1000*0.9} ; Works -
Thanks so much for the help!
The original Config file now works with the one change:
M906 X{20000.8}
M906 Y{20000.8}
M906 Z{20000.8}
; M906 E{10000.9} ; This seems to not work
M906 E900
;M906 U{1000*0.9} -
@Phaedrux said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
M906 X{20000.8} M906 Y{20000.8} M906 Z{20000.8} ;M906 E{10000.9} M906 U{1000*0.9}
If you're trying to get percentages with this, just use M913 instead. I set my current to the rated max with M906 and then use M913 to set it to a percentage of that.
My homing macros try and set stealthchop and sensorless homing. To do that I have to cut the current to 30% using the M913 command. So if I cut to 80% at first in the config file, do I then cut to 80% * 30%? Then set back to 80% when done?
-
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
My homing macros try and set stealthchop and sensorless homing. To do that I have to cut the current to 30% using the M913 command. So if I cut to 80% at first in the config file, do I then cut to 80% * 30%? Then set back to 80% when done?
This is exactly why I leave M906 as the full rated current and then adjust with M913. That way I know that M913 80 is 80% of rated. And 30% is 30% of rated. It's just more direct. No percentage of a percentage.
-
@Phaedrux said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
My homing macros try and set stealthchop and sensorless homing. To do that I have to cut the current to 30% using the M913 command. So if I cut to 80% at first in the config file, do I then cut to 80% * 30%? Then set back to 80% when done?
This is exactly why I leave M906 as the full rated current and then adjust with M913. That way I know that M913 80 is 80% of rated. And 30% is 30% of rated. It's just more direct. No percentage of a percentage.
Mathematically I want the 80%*30%. My intention was that once Variables get implemented I would make a MAX_MOTOR_LDO that has the 2000mA value. And another variable that would have the percentage MAX_RUN_PERCENT to be like 80%. Then set the M906 to the multiplication of the two. Then I can use percentages of that MAX_RUN_VALUE.
-
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
@Phaedrux said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
@MikeGeppert said in Extruder issues with 3.2-beta 3.2 - Duet 3 MB6HC:
My homing macros try and set stealthchop and sensorless homing. To do that I have to cut the current to 30% using the M913 command. So if I cut to 80% at first in the config file, do I then cut to 80% * 30%? Then set back to 80% when done?
This is exactly why I leave M906 as the full rated current and then adjust with M913. That way I know that M913 80 is 80% of rated. And 30% is 30% of rated. It's just more direct. No percentage of a percentage.
Mathematically I want the 80%*30%. My intention was that once Variables get implemented I would make a MAX_MOTOR_LDO that has the 2000mA value. And another variable that would have the percentage MAX_RUN_PERCENT to be like 80%. Then set the M906 to the multiplication of the two. Then I can use percentages of that MAX_RUN_VALUE.
Seems needless when M913 already exists, but it would work either way.