Solved Missing Steps - Cant Print SpreadCycle StealthChop tuning help
-
I tested a small print on my machine at 300 mm/s travel speed and 4000 mm/s acceleration (LDO-42STH48-MAC 0.9 motors) in SpreadCycle mode without issues.
Unfortunately I don't have a Duet 3 Mini 2+ Dual-stepper Expansion Board but the issue might only occur when using all stepper channels at once (just a guess).
Could you also replicate that part? -
@droftarts said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
Can you post the Gcode and I’ll try and replicate on my machine.
g code file exceeds the max allowed size for attachment
I revert sending you the STL(s), both were printed on same plate at once
thanks
-
@droftarts Argo might be right
Two (of four) of my Z steppers are on the Mini 2+ expansion (there were issues on those channels looking at the fixes done)
It might be that + mesh creates a bad combination... and destabilize calculations on X/Y/Z don't know what to think else(Voron 2 has a four Z steppers gantry with autoleveling)
-
@oc_geek said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
Two (of four) of my Z steppers are on the Mini 2+ expansion (there were issues on those channels looking at the fixes done)
It might be that + mesh creates a bad combination... and destabilize calculations on X/Y/Z don't know what to think else-
What fixes?
-
What motor currents have you set, and are you using fan cooling of the Duet? With so many stepper drivers in use, I am wondering whether you might be getting over-temperature cutout of some of the stepper drivers.
-
-
@dc42 said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
- What fixes?
this (3.3 beta3)
The 2-driver expansion board on a Duet Maestro or Duet 3 Mini used a separate channel to make it available as a pseudo temperature sensor, however that channel was not accessible. Those drivers are now included in the main channel.
- What motor currents have you set,
1200 mA on all X/Y/Z
and are you using fan cooling of the Duet? With so many stepper drivers in use, I am wondering whether you might be getting over-temperature cutout of some of the stepper drivers.
indeed it is cooled there are two fans pointed on the drivers by design
Question: as i'm going to transplant the new Mini 5+ v1.0 soon
Is it better to have all four Z steppers on the 5+ drivers
and A/B on the 2+or is it irrelevant ?
-
@oc_geek said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
Is it better to have all four Z steppers on the 5+ drivers
and A/B on the 2+
or is it irrelevant ?If they are all moving most of the time (as they are when you are using bed compensation) and they all run at the same current, then it should make no difference.
The correct way to cool the drivers is to use a fan to blow air along the line of drivers, in particular cooling the underside of the PCBs.
-
@dc42 said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
The correct way to cool the drivers is to use a fan to blow air along the line of drivers, in particular cooling the underside of the PCBs.
Would this do ? or better rotated ACW 90*
-
@oc_geek, this is where I would put an electronics cooling fan:
However, 1200mA per driver isn't a high current. Are the driver chips getting hot?
-
@dc42 said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
@oc_geek, this is where I would put an electronics cooling fan:
However, 1200mA per driver isn't a high current. Are the driver chips getting hot?
Honestly hard to say those are sitting upside down in the electronic bay below 35Kg of metal and plastic enclosure...
I may rotate the card 90 degrees if that helps... but again... i do print in 3.3beta1 without mesh and without forcing any modes and so on...
the issues comes when mesh get enabled ...then axis go crazy -
@oc_geek, if you print with mesh bed compensation turned off then standstill current reduction will kick in on the Z axis.
Can you hold your finger on the Z driver chips while the machine is printing with bed compensation enabled? If you can't because they are too hot, then you probably need better cooling or lower current.
-
@dc42 said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
@oc_geek, if you print with mesh bed compensation turned off then standstill current reduction will kick in on the Z axis.
Can you hold your finger on the Z driver chips while the machine is printing with bed compensation enabled? If you can't because they are too hot, then you probably need better cooling or lower current.
there are 1000(s) Voron 2 out there (made at spec) and none have these issues... perhaps those use different hw though...
-
@oc_geek said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
@dc42 said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
@oc_geek, please load the firmware at https://www.dropbox.com/sh/dupd9u1xppr1om5/AADYg4guuj2n8LJokVqtK-C7a?dl=0. When you observe the problem, pause the print and run the following command for values of # from 0 to 4:
M569.2 P# E0
Post the results here.
I'm sorry but i moved away from the beta
and went back in 3.3 beta 1 without mesh....At some point also homing went crazy and
G1 X... F360 H1
was stopping in the middle of the rail without the sensor beeng actually triggered... i had to power off twice to get it back to normal....@droftarts I encountered this and also on Thursday, how did we overcome it?
-
@carcamerarig said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
was stopping in the middle of the rail without the sensor beeng actually triggered... i had to power off twice to get it back to normal....
Sensitivity in homing files too low or motor current reductions in homing files - too low
- false stallguard like trigger appears - no ?
Youre on a voron with no stallguard useage - is the new fw youre usingor the config.g used have it on ?
-
@oc_geek said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
@dc42 said in Missing Steps - Cant Print SpreadCycle StealthChop tuning help:
@oc_geek, if you print with mesh bed compensation turned off then standstill current reduction will kick in on the Z axis.
Can you hold your finger on the Z driver chips while the machine is printing with bed compensation enabled? If you can't because they are too hot, then you probably need better cooling or lower current.
there are 1000(s) Voron 2 out there (made at spec) and none have these issues... perhaps those use different hw though...
very few of them on Duet 5+ - MOST on dual skr's - locked in stealthchop
-
Finished configuring homing, reset the pinda height after Wednesdays crashes and levelled the gantry. New mesh map
1st print much the same as before quite disappointed... Travel bangs and layer shifts.
1st bang / layer shift
M122 === Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.3beta2+2 (2021-04-14 10:44:57) running on Duet 3 Mini5plus WiFi (standalone mode) Board ID: Z9NZN-A296U-D65J0-40KM4-LY03Z-ZPQPD Used output buffers: 3 of 40 (21 max) === RTOS === Static ram: 100040 Dynamic ram: 106340 of which 32 recycled Never used RAM 34436, free system stack 122 words Tasks: NETWORK(ready,218) HEAT(delaying,294) CanReceiv(notifyWait,944) CanSender(notifyWait,357) CanClock(delaying,334) TMC(delaying,101) MAIN(running,312) IDLE(ready,20) AIN(notifyWait,266) Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:25:10 ago, cause: software Last software reset at 2021-04-17 19:23, reason: User, GCodes spinning, available RAM 34436, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 MCU revision 3, ADC conversions started 1764656, completed 1764655, timed out 0, errs 0 Step timer max interval 75166 Supply voltage: min 23.4, current 23.8, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/1676/1622, gc cycles 17 Driver 0: position 17636, ok, SG min/max 0/504, read errors 0, write errors 1, ifcnt 109, reads 12101, writes 23, timeouts 0, DMA errors 0 Driver 1: position 10232, ok, SG min/max 0/442, read errors 0, write errors 1, ifcnt 107, reads 12101, writes 23, timeouts 0, DMA errors 0 Driver 2: position 389, ok, SG min/max 0/278, read errors 0, write errors 1, ifcnt 101, reads 12100, writes 24, timeouts 0, DMA errors 0 Driver 3: position 0, ok, SG min/max 0/462, read errors 0, write errors 1, ifcnt 73, reads 12111, writes 13, timeouts 0, DMA errors 0 Driver 4: position 0, ok, SG min/max 0/286, read errors 0, write errors 1, ifcnt 102, reads 12100, writes 24, timeouts 0, DMA errors 0 Driver 5: position 0, assumed not present Driver 6: position 0, assumed not present Date/time: 2021-04-17 19:49:01 Cache data hit count 2379678593 Slowest loop: 999.96ms; fastest: 0.07ms === Storage === Free file entries: 9 SD card 0 detected, interface speed: 22.5MBytes/sec SD card longest read time 97.9ms, write time 5.2ms, max retries 0 === Move === DMs created 83, maxWait 373533ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 2790, completed moves 2750, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 91, 3], CDDA state 3 === 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, chamberHeaters = -1 -1 Heater 0 is on, I-accum = 0.3 Heater 1 is on, I-accum = 0.6 === GCodes === Segments left: 1 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is doing "G1 X85.789 Y50.722 E0.02063" 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. === Filament sensors === Extruder 0 sensor: ok === CAN === Messages queued 13770, send timeouts 13766, received 0, lost 0, longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 17 (min 16) Last cancelled message type 4514 dest 127 === Network === Slowest loop: 172.97ms; 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.25beta0 WiFi MAC address f4:cf:a2:6f:e9:78 WiFi Vcc 3.36, reset reason Power up WiFi flash size 2097152, free heap 26400 WiFi IP address 192.168.1.226 WiFi signal strength -39dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
@nd bang / layer shift
M122 === Diagnostics === RepRapFirmware for Duet 3 Mini 5+ version 3.3beta2+2 (2021-04-14 10:44:57) running on Duet 3 Mini5plus WiFi (standalone mode) Board ID: Z9NZN-A296U-D65J0-40KM4-LY03Z-ZPQPD Used output buffers: 3 of 40 (27 max) === RTOS === Static ram: 100040 Dynamic ram: 106340 of which 32 recycled Never used RAM 34436, free system stack 121 words Tasks: NETWORK(ready,218) HEAT(delaying,294) CanReceiv(notifyWait,944) CanSender(notifyWait,357) CanClock(delaying,334) TMC(delaying,101) MAIN(running,312) IDLE(ready,20) AIN(notifyWait,266) Owned mutexes: WiFi(NETWORK) === Platform === Last reset 00:28:03 ago, cause: software Last software reset at 2021-04-17 19:23, reason: User, GCodes spinning, available RAM 34436, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 Aux0 errors 0,0,0 Aux1 errors 0,0,0 MCU revision 3, ADC conversions started 1961893, completed 1961892, timed out 0, errs 0 Step timer max interval 26171 Supply voltage: min 23.4, current 23.6, max 23.9, under voltage events: 0, over voltage events: 0, power good: yes Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/1820/1766, gc cycles 19 Driver 0: position 39096, ok, SG min/max 0/488, read errors 0, write errors 0, ifcnt 109, reads 8647, writes 0, timeouts 0, DMA errors 0 Driver 1: position 13324, ok, SG min/max 0/452, read errors 0, write errors 0, ifcnt 107, reads 8647, writes 0, timeouts 0, DMA errors 0 Driver 2: position 926, ok, SG min/max 0/296, read errors 0, write errors 0, ifcnt 101, reads 8647, writes 0, timeouts 0, DMA errors 0 Driver 3: position 0, ok, SG min/max 2/494, read errors 0, write errors 0, ifcnt 73, reads 8647, writes 0, timeouts 0, DMA errors 0 Driver 4: position 0, ok, SG min/max 0/264, read errors 0, write errors 0, ifcnt 102, reads 8647, writes 0, timeouts 0, DMA errors 0 Driver 5: position 0, assumed not present Driver 6: position 0, assumed not present Date/time: 2021-04-17 19:51:54 Cache data hit count 2620336000 Slowest loop: 87.33ms; fastest: 0.09ms === Storage === Free file entries: 9 SD card 0 detected, interface speed: 22.5MBytes/sec SD card longest read time 85.1ms, write time 0.0ms, max retries 0 === Move === DMs created 83, maxWait 0ms, bed compensation in use: mesh, comp offset 0.000 === MainDDARing === Scheduled moves 10602, completed moves 10562, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 125, 0], CDDA state 3 === 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, chamberHeaters = -1 -1 Heater 0 is on, I-accum = 0.3 Heater 1 is on, I-accum = 0.6 === GCodes === Segments left: 1 Movement lock held by null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is doing "G1 X172.165 Y56.722 E0.02599" 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. === Filament sensors === Extruder 0 sensor: ok === CAN === Messages queued 1557, send timeouts 1557, received 0, lost 0, longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 17 (min 17) Last cancelled message type 4514 dest 127 === Network === Slowest loop: 221.97ms; fastest: 0.08ms 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.25beta0 WiFi MAC address f4:cf:a2:6f:e9:78 WiFi Vcc 3.36, reset reason Power up WiFi flash size 2097152, free heap 21784 WiFi IP address 192.168.1.226 WiFi signal strength -40dBm, mode 802.11n, reconnections 0, sleep mode modem Clock register 00002002 Socket states: 0 0 0 0 0 0 0 0
Post print states.
M569 P0.0 Drive 0 runs in reverse, active low enable, timing fast, mode stealthChop, ccr 0x00053, toff 3, tblank 0, tpwmthrs 0 (inf mm/sec), pwmScaleSum 48, pwmScaleAuto 0, pwmOfsAuto 223, pwmGradAuto 34, pos 644 M569 P0.1 Drive 1 runs in reverse, active low enable, timing fast, mode stealthChop, ccr 0x00053, toff 3, tblank 0, tpwmthrs 0 (inf mm/sec), pwmScaleSum 45, pwmScaleAuto 0, pwmOfsAuto 210, pwmGradAuto 34, pos 132
; General preferences G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Network M550 P"Duet Caribou 420" ; Set machine name M552 S1 ; Enable network ;*** Access point is configured manually via M587 ;M586 P0 S1 ; Enable HTTP ;M586 P1 S0 ; Disable FTP ;M586 P2 S0 ; Disable Telnet M575 P1 S1 B57600 ; Panel Due ; Drive Mappings M569 P0.0 S0 D3 V0 ; Drive 0: X Axis M569 P0.1 S0 D3 V0 ; Drive 1: Y Axis M569 P0.2 S0 D3 V0 ; Drive 2: Z Axis M569 P0.3 S0 D3 V0 ; Drive 3: E Axis M569 P0.4 S0 D3 V0 ; Drive 4: E1 used for Z1 ; Motor remapping for dual Z and axis Limits M584 X0 Y1 Z2:4 E3 ; two Z motors connected to driver outputs Z and E1 M671 X-37:287 Y0:0 S4 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis ; Micrpstepping and Speed M350 X32 Y32 E16 Z16 I1 ; Configure microstepping with interpolation M92 X200.00 Y200.00 Z400.00 E830.00 ; Set steps per mm ; Speeds, Acceleration and Jerk M566 X900 Y900 Z25.00 E600.00 P1 ; Set maximum instantaneous speed changes (mm/min) M203 X18000.00 Y18000.00 Z720.00 E1200.00 ; Set maximum speeds (mm/min) M201 X1500.00 Y1500.00 Z1200.00 E4000.00 ; Set accelerations (mm/s^2) ; Motor currents M906 X700.00 Y700.00 Z700.00 E700.00 I20 ; Set motor currents (mA) and motor idle factor in percent X,Y,Z=1000/1.414 E=1400/1.414 M84 S30 ; Set idle timeout ; Printer geometry M208 X0:250 Y-4:215 Z-0.5:410 ; Axis Limits M564 H0 ; allow unhomed movement ; Endstops for each Axis M574 X1 S3 ; Set endstops controlled by motor load detection M574 Y1 S3 ; Set endstops controlled by motor load detection ; Stallgaurd Sensitivy ;M915 X S-2 F0 H200 R0 ; Set X axis Sensitivity MOVED TO HOMEALL.G ;M915 Y S15 F0 H200 R0 ; Set y axis Sensitivity ; Input Shaper ;M593 F58.5 P4 S0.2 ; Input Shaping 3.3/3.4 ;M593 F54.26 ; Z-Probe Super PINDA M574 Z1 S0 ; Set endstops controlled by probe M558 P5 C"^io3.in" I1 H1 F500 T4800 A30 S0.004 ; Mesh Grid M557 X24:221 Y10:195 P8 ; Define mesh grid for probing ; Sheets ;G31 P1000 X23 Y5 Z1.730 ; Satin Sheet G31 P1000 X23 Y5 Z1.95 ; Textured Sheet ;G31 P1000 X23 Y5 Z1.445 ; PEI Sheet ;G31 P1000 X23 Y5 Z1.445 ; PEI Sheet 0.6 nozzle -10 offset ; Heatbed Heaters and Thermistor Bed M308 S0 P"temp0" Y"thermistor" T100000 B4725 C7.060000e-8 ; Set thermistor + ADC parameters for heater 0 Bed M950 H0 C"out0" T0 Q10 ; Creates Bed Heater Qnn PWM frequency in Hz. Valid range: 0-65535, default: 500. (optional) 10hz stopped clicking M307 H0 R0.273 C345.3 D10.89 S1.00 V23.8 B0 ; PID 3.2 M140 H0 ; Bed uses Heater 0 M143 H0 S120 ; Set temperature limit for heater 0 to 120C Bed ; HotEnd Heaters and Thermistor HotEnd M308 S1 P"temp1" Y"thermistor" T500000 B4725 C1.19622e-7 ; define E0 temperature sensor e3d M950 H1 C"out1" T1 ; Create HotEnd Heater M307 H1 R2.383 C178.5:130.6 D5.32 S1.00 V23.9 B0 ; PID M143 H1 S285 ; Set temperature limit for heater 1 to 285C HotEnd M302 S185 R185 ; Fans M950 F1 C"out5" Q250 ; Creates HOTEND Fan M106 P1 T45 S235 H1 ; HOTEND Fan Settings M950 F0 C"out6" Q100 ; Creates PARTS COOLING FAN M106 P0 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off PARTS COOLING FAN ; Tools M563 P0 D0 H1 F0 ; 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 ; StealthCop calibration - MOVED TO HOMEALL.G ; M17 ; G4 P150 ; G1 X2 Y2 Z2 F2000 ; G4 S2 ; M84 ; disable motors ; Filament Sensor Logic M98 P"0:/macros/02_Functions/StartupFilamentSensorCheck" ; Runout Sensor Logic: Startup with filament = runout sensor active Startup without filament = autoload active
; homeall.g ; called to home all axes M400 M18 ; Stallgaurd Sensitivy M915 X S1 F0 H200 R0 ; Set X axis Sensitivity M915 Y S2 F0 H200 R0 ; Set y axis Sensitivity ; StealthCop calibration M17 G4 P150 G91 G1 H2 X2 Y2 Z2 F2000 G90 G4 S1 M913 X80 Y80 Z100 ; set X Y Z motors to 50% of their normal current G91 ; relative positioning G1 H2 Z5 F800 ; lift Z relative to current position G1 H1 X-255 F3600 ; move quickly to X and Y axis endstops and stop there (first pass) G1 H1 Y-225 F3600 ; move quickly to X and Y axis endstops and stop there (first pass) G90 M913 X100 Y100 Z100 ; set X Y Z motors to 100% of their normal current G1 X104 Y100 F3800 ; put head over the centre of the bed, or wherever you want to probe G30 ; lower head, stop when probe triggered and set Z to trigger height
-
@carcamerarig hmm, yes, very disappointing, sorry this still isn’t resolved. As you seem to be able to reproduce the problem very reliably, can you update to the firmware from this post https://forum.duet3d.com/post/226010 and report using the commands @dc42 says? The only way we’re going to be able to fix it is to catch the fault in reporting.
For adjusting the homing, I basically ended up doing what @SputnikOC3d says; I set the sensitivity to M915 S1, then adjusted the current reduction in homing until it stalled correctly. I tried it the other way round, setting a low current and then trying to set sensitivity, but couldn’t get it to stall reliably.
Edit: looks like the layer shift is just in X?
Ian
-
I wonder if you could get one of those stepper motor analyzers made by @zapta on loan to see if it can catch something?
-
When @carcamerarig was visiting you he told me that you two could not reproduce the layer shift issue when printing cold in the air without filament.
Now the issue is suddenly back when printing under normal conditions with all heaters on.Can a overheating stepper or MCU be the cause of those layer shifts??
I know that normally an overheating message should appear before the driver actually overheats but is it somehow possible that maybe the MCU or stepper chips are not perfectly in contact with the PCB for heat transfer?
I know from graphics card that old / bad heat transfer compound can cause a high junction GPU temperature though the overall chip temperature readings are ok the junction temperature was not. Just recently I had that issue and had to reapply the compound to the GPU.For further testing I already told him to to do a cold air print like you did when he was visiting you.
When there is no issue he should then activate the heaters. When the shifts/bangs are then happening again we might know the cause. -
@alankilian both @T3P3Tony and I have one, but don’t have all the parts yet. Waiting for screens to come from China.
The other difficulty is reproducing it. In 6 hours of testing with @carcamerarig’s machine (admittedly not printing, mostly just movement) it didn’t happen once. I’ll be setting up my printer as close as possible to his, and running his Gcode, hopefully on Tuesday, if @dc42 doesn’t fix it first!
Ian
-
@argo it’s possible. A driver shutdown due to heat could cause a bang like that. But id be surprised if it did it without reporting it.
If it’s the X axis on his machine, which I think is on driver 0, this is closest to the Mosfets for bed and hotend, which may be getting hot. His board is also in an enclosure, can’t remember if there was a fan. Worth trying with the cover off and a fan pointing at it, perhaps.
Ian