Expansion 3HC M906 not working properly
-
@fcwilt No problems here. I have XY and Z connected to a 3HC expansion board. X and Y are Nema 17s set to 1800mA, Z is a single Nema 23 set to 2300 mA.
-
@deckingman Could you please share your config.g?
Thanks! -
@fcwilt Thanks for you feedback!
Could you try what @deckingman is suggesting, sending just M906 without parameters to check the motors currents?
Thanks! -
@deckingman said in Expansion 3HC M906 not working properly:
@fcwilt No problems here. I have XY and Z connected to a 3HC expansion board. X and Y are Nema 17s set to 1800mA, Z is a single Nema 23 set to 2300 mA.
Interesting. I wonder what the difference will turn out to be.
Frederick
-
@mauriciomartins said in Expansion 3HC M906 not working properly:
@fcwilt Thanks for you feedback!
Could you try what @deckingman is suggesting, sending just M906 without parameters to check the motors currents?
Thanks!I rebooted a few times using different M906 values in the config file.
After the reboot I executed M906 from the console and the values reported always matched.
Interesting situation.
Frederick
-
-
@mauriciomartins said in Expansion 3HC M906 not working properly:
@deckingman Could you please share your config.g?
Thanks!I don't how mush use it'll be to you - it's a CoreXYUVAB with a 6 input (that's 6 extruders) mixing hot end. But as you asked......config.g
-
@mauriciomartins said in Expansion 3HC M906 not working properly:
@fcwilt yah, weird behaviour...
Let's try to bring @dc42 to this topic to help us understanding itI just returned to my workbench and powered up the boards.
Still no torque from the stepper on the 3HC.
A temp sensor connected to 3HC was reading correctly.
I tried resetting the boards - first M999 B1 and then M999 - no change to the torque.
I cycled power and now the torque was as expected.
I reset the boards again.
The torque was gone and the temp sensor reading was way off.
I cycled power and now the torque was as expected.
It seems to me that a reset using M999 should restore the boards to the same state as cycling power but it doesn't seem to be
Frederick
-
@fcwilt Welcome to my world!
How are you powering the expansion board? Does M122 B1 show anything? All voltages good?
-
@fcwilt how long have you had it?
might be a lazy crystal -
@jay_s_uk said in Expansion 3HC M906 not working properly:
@fcwilt how long have you had it?
might be a lazy crystalGood point. Also, crazy things happen with RRF 3.2 which seem to be fixed in RRF3.2.2. (I had extruders running backwards and fixed with a power cycle). So if either of you are using 3.2 upgrade to 3.2.2..
-
@deckingman said in Expansion 3HC M906 not working properly:
@fcwilt Welcome to my world!
I thought this kind of problem sounded familiar.
How are you powering the expansion board? Does M122 B1 show anything? All voltages good?
In this picture I removed the CAN bus cables as they obscured the power wiring:
The 24 volt power is coming from a bench top power supply with voltage and current settings. The current limit is set at 1.5 amps.
The power wiring is 14 gauge except for the wiring to the 1LC board - which is currently not doing anything - just lighting up the LEDs.
M122, M122 B1 and M122 B121 report power is good.
Frederick
-
@fcwilt said in Expansion 3HC M906 not working properly:
M122, M122 B1 and M122 B121 report power is good.
@fcwilt and @mauriciomartins would you be able to share your M122 reports for the main board and expansion?
-
I am posting two sets of M122 reports. One set after power on, one set after editing config.g and doing the reset.
They may be the same - I did not take the time to compare them.
After Power On
3/4/2021, 5:01:38 PM: M122: === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v0.6 or 1.0 (standalone mode) Board ID: 08DJM-956L2-G43S4-6J9F0-3SJ6T-9A6LH Used output buffers: 1 of 40 (12 max) === RTOS === Static ram: 149788 Dynamic ram: 92500 of which 220 recycled Never used RAM 116324, free system stack 200 words Tasks: NETWORK(ready,167) ETHERNET(blocked,119) HEAT(blocked,356) CanReceiv(blocked,813) CanSender(blocked,371) CanClock(blocked,352) TMC(blocked,51) MAIN(running,1119) IDLE(ready,19) Owned mutexes: === Platform === Last reset 00:01:29 ago, cause: power up Last software reset at 2021-03-04 16:37, reason: User, GCodes spinning, available RAM 116324, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 MCU temperature: min 29.7, current 35.7, max 35.9 Supply voltage: min 23.8, current 23.8, max 23.9, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.0, current 12.1, max 12.1, under voltage events: 0 Driver 0: position 0, standstill, reads 45041, writes 14 timeouts 0, SG min/max 0/0 Driver 1: position 0, standstill, reads 45041, writes 14 timeouts 0, SG min/max 0/0 Driver 2: position 0, standstill, reads 45045, writes 11 timeouts 0, SG min/max 0/0 Driver 3: position 0, standstill, reads 45045, writes 11 timeouts 0, SG min/max 0/0 Driver 4: position 0, standstill, reads 45045, writes 11 timeouts 0, SG min/max 0/0 Driver 5: position 0, standstill, reads 45045, writes 11 timeouts 0, SG min/max 0/0 Date/time: 2021-03-04 17:01:36 Slowest loop: 3.93ms; fastest: 0.07ms === Storage === Free file entries: 10 SD card 0 detected, interface speed: 25.0MBytes/sec SD card longest read time 1.6ms, write time 0.0ms, max retries 0 === Move === DMs created 125, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed moves 0, 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 = -1 -1 -1 -1 -1 -1 -1 -1 -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 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. === Network === Slowest loop: 5.57ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions HTTP sessions: 1 of 8 - Ethernet - State: active Error counts: 0 0 1 0 0 Socket states: 5 2 2 2 2 2 0 2 === CAN === Messages queued 13, send timeouts 0, received 725, lost 0, longest wait 1ms for reply type 6042, free buffers 48
3/4/2021, 5:02:14 PM: M122 B1: Diagnostics for board 1: Duet EXP3HC firmware version 3.2.2 (2021-02-12) Bootloader ID: not available Never used RAM 154584, free system stack 200 words HEAT 92 CanAsync 94 CanRecv 84 TMC 64 MAIN 173 AIN 259 Last reset 00:02:05 ago, cause: power up Last software reset at 2106-02-07 06:28, reason: AssertionFailed, available RAM 154584, slot 0 Software reset code 0x0120 HFSR 0xffffffff CFSR 0xffffffff ICSR 0xffffffff BFAR 0xffffffff SP 0xffffffff Task ���� Freestk 4294967295 ok Stack: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff Driver 0: position 0, 80.0 steps/mm, standstill, reads 26270, writes 16 timeouts 0, SG min/max 0/0 Driver 1: position 0, 80.0 steps/mm, standstill, reads 26277, writes 11 timeouts 0, SG min/max 0/0 Driver 2: position 0, 80.0 steps/mm, standstill, reads 26280, writes 11 timeouts 0, SG min/max 0/0 Moves scheduled 0, completed 0, in progress 0, hiccups 0 No step interrupt scheduled VIN: 23.9V, V12: 12.2V MCU temperature: min 38.3C, current 38.5C, max 38.5C Ticks since heat task active 102, ADC conversions started 125344, completed 125343, timed out 0 Last sensors broadcast 0x00000400 found 1 105 ticks ago, loop time 0 CAN messages queued 1038, send timeouts 0, received 645, lost 0, free buffers 36
After editing config.g and saying YES to reset question
3/4/2021, 5:02:59 PM: Upload of config.g successful after 0s 3/4/2021, 5:03:19 PM: M122: === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v0.6 or 1.0 (standalone mode) Board ID: 08DJM-956L2-G43S4-6J9F0-3SJ6T-9A6LH Used output buffers: 1 of 40 (11 max) === RTOS === Static ram: 149788 Dynamic ram: 92500 of which 184 recycled Never used RAM 116360, free system stack 200 words Tasks: NETWORK(ready,187) ETHERNET(blocked,110) HEAT(blocked,356) CanReceiv(blocked,813) CanSender(blocked,371) CanClock(blocked,352) TMC(blocked,51) MAIN(running,1119) IDLE(ready,19) Owned mutexes: === Platform === Last reset 00:00:17 ago, cause: software Last software reset at 2021-03-04 17:03, reason: User, GCodes spinning, available RAM 116324, slot 0 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 MCU temperature: min 35.4, current 35.8, max 36.0 Supply voltage: min 23.8, current 23.8, max 23.9, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.0, current 12.1, max 12.1, under voltage events: 0 Driver 0: position 0, standstill, reads 33319, writes 14 timeouts 0, SG min/max 0/0 Driver 1: position 0, standstill, reads 33319, writes 14 timeouts 0, SG min/max 0/0 Driver 2: position 0, standstill, reads 33322, writes 11 timeouts 0, SG min/max 0/0 Driver 3: position 0, standstill, reads 33322, writes 11 timeouts 0, SG min/max 0/0 Driver 4: position 0, standstill, reads 33323, writes 11 timeouts 0, SG min/max 0/0 Driver 5: position 0, standstill, reads 33323, writes 11 timeouts 0, SG min/max 0/0 Date/time: 2021-03-04 17:03:18 Slowest loop: 3.94ms; fastest: 0.07ms === Storage === Free file entries: 10 SD card 0 detected, interface speed: 25.0MBytes/sec SD card longest read time 0.9ms, write time 0.0ms, max retries 0 === Move === DMs created 125, maxWait 0ms, bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves 0, completed moves 0, 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 = -1 -1 -1 -1 -1 -1 -1 -1 -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 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. === Network === Slowest loop: 2.27ms; fastest: 0.02ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions HTTP sessions: 1 of 8 - Ethernet - State: active Error counts: 0 0 1 0 0 Socket states: 5 2 2 2 2 2 0 2 === CAN === Messages queued 13, send timeouts 0, received 151, lost 0, longest wait 42ms for reply type 6031, free buffers 48
3/4/2021, 5:03:45 PM: M122 B1: Diagnostics for board 1: Duet EXP3HC firmware version 3.2.2 (2021-02-12) Bootloader ID: not available Never used RAM 154600, free system stack 200 words HEAT 92 CanAsync 94 CanRecv 87 TMC 64 MAIN 216 AIN 259 Last reset 00:00:43 ago, cause: software Last software reset at 2106-02-07 06:28, reason: AssertionFailed, available RAM 154584, slot 0 Software reset code 0x0120 HFSR 0xffffffff CFSR 0xffffffff ICSR 0xffffffff BFAR 0xffffffff SP 0xffffffff Task ���� Freestk 4294967295 ok Stack: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff Driver 0: position 0, 80.0 steps/mm, standstill, reads 27733, writes 11 timeouts 0, SG min/max 0/0 Driver 1: position 0, 80.0 steps/mm, standstill, reads 27735, writes 11 timeouts 0, SG min/max 0/0 Driver 2: position 0, 80.0 steps/mm, standstill, reads 27738, writes 11 timeouts 0, SG min/max 0/0 Moves scheduled 0, completed 0, in progress 0, hiccups 0 No step interrupt scheduled VIN: 23.9V, V12: 12.2V MCU temperature: min 38.5C, current 38.5C, max 38.5C Ticks since heat task active 38, ADC conversions started 43280, completed 43280, timed out 0 Last sensors broadcast 0x00000400 found 1 41 ticks ago, loop time 0 CAN messages queued 377, send timeouts 0, received 230, lost 0, free buffers 36
-
Following this thread with interest because although my XY and Z motors on expansion board 3 seem to be working well, my 6 extruders are on expansion boards 1 and 2 and I have no real way of knowing if the torque is borderline or not. Might that explain my print to print variability? One can't help but wonder......
-
@deckingman purely speculation, and I think you’re thinking what I’m thinking, but if the same thing is happening to your extruder board it may be why there’s such a difference between prints, ie bad ones have zero motor torque at standstill, good ones motor torque is set correctly. Could be that the idle timeout or idle current setting is set to 0, somehow? Unfortunately M84 doesn’t show the idle timeout, just cancels it.
Ian
-
@droftarts said in Expansion 3HC M906 not working properly:
@deckingman purely speculation, and I think you’re thinking what I’m thinking, but if the same thing is happening to your extruder board it may be why there’s such a difference between prints, ie bad ones have zero motor torque at standstill, good ones motor torque is set correctly. Could be that the idle timeout or idle current setting is set to 0, somehow? Unfortunately M84 doesn’t show the idle timeout, just cancels it.
Ian
Trying to keep an open mind, but over the course of the last 19 months, I have had 3 extruder motors fail - well I assumed at the time they had failed because they either wouldn't turn or had very little torque. IIRC, I would likely have tried a different motor on the same driver but that would have meant that I cycled the power (because I never plug or unplug anything on a "live" board). If that worked, I would have assumed a duff motor and would not have gone on to try the same motor on a different driver. When the last one failed, I assumed that they must have been a bad batch so I replaced all 6. One can't help wondering............
-
Hello guys, as I already said in my case the problem is that the 3HC card is not accepting the current settings of the motors, I believe that my config.g has the M906 configured correctly.
I have to check with M112 the status of the voltages as @Phaedrux is suggesting. All of my power wiring is 14 gauge.
Unfortunately only next Monday I will be able to do more tests but I will be following this topic carefully because I realized that I am not alone with this problem.
Thank you all for the support! -
@mauriciomartins said in Expansion 3HC M906 not working properly:
Hello guys, as I already said in my case the problem is that the 3HC card is not accepting the current settings of the motors, I believe that my config.g has the M906 configured correctly.
You still haven't posted the result of sending M906 without any parameters, so we have no way of knowing whether your claim that the board is not accepting the current settings.
-
@deckingman said in Expansion 3HC M906 not working properly:
You still haven't posted the result of sending M906 without any parameters, so we have no way of knowing whether your claim that the board is not accepting the current settings.
I don't know how to post a link to a previous post so I will just paste it here again:
I rebooted a few times using different M906 values in the config file.
After the reboot I executed M906 from the console and the values reported always matched.
I should have said cycled power instead of reboot since that is how I forced the reboot.
So the values are being accepted by the 3HC but something happens to kill the torque to the stepper.
After power on the torque always seems to be good but any reset kills the torque including the reset that is done after editing config.g and allowing the reset.
It's not just a problem with the torque. I also have a thermistor connected to the 3HC. It reads correctly after power on (in the 20s) but a reset usually screws it up and it starts reading 2000.
I haven't tested any other inputs and outputs on the 3HC yet to see if they also have issues.
It's no wonder that you are having problems with your printer.
Frederick