1HCL Boards disconnect during Closed Loop Tuning
-
Hey, I'm running into an issue when trying to tune closed loop for a Cartesian/IDEX 3D printer. Currently running 3.5.2 on all boards (MB6HC (1.01a) running CAN daisy-chained to a 3HC (V1.0) to four 1HCL Boards (V1.0) (For the X, U, Y1, and Y2 motors in that order).
The boards work fine as motor drivers, and the printer is able to perform the calibration motion for the closed loop. However, when I try to tune closed loop using the Closed Loop Plug in, the boards will disconnect mid tune (and then pops up with an error saying Expansion Board xx.0 reconnected, where xx is the CAN address of the board). Further attempts to run the tune will complain that there is no encoder configured (presumably because the board disconnected and reconnected). I have run into this on the X and U boards, have not attempted yet on Y1 or Y2. Additionally, the readings I do get do not seem to be anything similar to the examples in the tuning documentation.
Any insight here would be welcome.
I have attached the config, a homing script, and photos of the error outputs from the console as well as the what the Duet managed to collect on the encoder before the board disconnected. -
@Andrew2087
I think your M569.5 command is incorrect? You are usingD32766
, but that is not in the list of variables for the D parameter, see https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m5695-closed-loop-data-collection. It could be you meantD32768
? I'd guess there is no error trapping on the D parameter, causing a crash. I'll check with @dc42.I realise that D32766 should collect all data except variable ID1 and variable ID32768, the raw encoder reading and the motor current fraction. So probably not a mistake, and shouldn't be causing an error. Because:
To record multiple variables, sum the variable IDs and pass the resulting value as the D parameter. For example, to record coil A current (2048) and coil B current (4096), use D6144.
Was the M569.5 command generated by the Closed Loop plugin? Are you running in standalone or SBC mode? Is the SD card good (it could be the SD card can't cope with the speed at which the data is collected and written)? Can you send M122 B# (where # is the CAN address of the 1HCL board) when the printer restarts, which may show the reason for the crash?
Ian
-
@droftarts
Thanks for responding!
To answer your questions in order:
Was the M569.5 command generated by the Closed Loop plugin?- Yes
Are you running in standalone or SBC mode?
- Standalone
Is the SD card good (it could be the SD card can't cope with the speed at which the data is collected and written)?
- Not entirely sure how to qualify an SD card for this? It is a 16GB SanDisk Ultra micro SD (I believe the stock card that came with the board but not 100% certain of that). It has been reformatted to eliminate the partition that the stock micro SD cards that come with the boards have.
Can you send M122 B# (where # is the CAN address of the 1HCL board) when the printer restarts, which may show the reason for the crash?
M122 Prior to reconnection
M122 After Reconnection