HUVUD v.62 CANbus steppers won't buzz

Hi all,

I’m currently in the last steps of building a self sourced Voron 2.4.

I’m using a Raspberry Pi 4b with a Mellow Fly utoc-1 board for the CAN interface.
My Z axises are driven by an SKR 1.4 Turbo with 4 TMC2209s, which work fine.
My toolhead is a Stealthburner using the Mellow Fly SB2040 board, also driven by the CANbus.
My A and B drive both have a Huvud v.62 flashed with CANboot and then flashed with klipper.

I can get every stepper motor to buzz, including the extruder which is driven by the SB2040 on CAN.
But I cannot get EITHER Huvud board to buzz the steppers.

Steps taken:
Initially I had the Huvud’s flashed using a CAN speed of 500000, and while the LEDs responded to the commands the steppers wouldn’t buzz.
I reflashed CANboot and Klipper on the boards (and on the SB2040) using a CAN speed of 250000.
Same deal, I can turn the status LED on and off via CANbus on the Huvuds but no dice on the steppers.

I completely redid the connectors again, stripped and tinned the wires and made sure each crimp was solid and made good contact with the wire.

I tested continuity between the metal pin and the soldered pin connector on the board, all had good continuity with no excessive resistance.

I’ve tried about a billion different combinations of high and low pin settings in the cfg files.

I’ve attached my cfg file for the Huvud’s as well as my klipper log.

My printer cfg starts off like this… (if it makes a difference)

[include mainsail.cfg]


[mcu]
serial: /dev/serial/by-id/usb-Klipper_lpc1769_0ED0001522813AAFDA2F6A5CC12000F5-if00

[mcu host]
serial: /tmp/klipper_host_mcu

[include SB2040.cfg]
[include huvud.cfg]


[printer]
kinematics: corexy
max_velocity: 300  
max_accel: 3000             
max_z_velocity: 20          
max_z_accel: 350
square_corner_velocity: 5.0

I’m hoping it’s just my own stupidity and not bad boards, but any help would be greatly appreciated.

Thanks!

Edit:
Forgot to include the TMC_DUMP of the two HUVUD stepper drivers.
Both intermittently give the “openload” warning, but as I understand it from the datasheet, that’s just an informational warning and can be thrown when the drivers are in low power/standstill.

Dump of both steppers

SG_RESULT: 00000000
PWM_AUTO: 000e0024 pwm_ofs_auto=36 pwm_grad_auto=14
PWM_SCALE: 0000001d pwm_scale_sum=29
PWMCONF: c80d0e24 pwm_ofs=36 pwm_grad=14 pwm_freq=1 pwm_autoscale=1 pwm_autograd=1 pwm_reg=8 pwm_lim=12
DRV_STATUS: 80190000 cs_actual=25 stst=1
CHOPCONF: 23030053 toff=3 hstrt=5 tbl=2 vsense=1 mres=3(32usteps) dedge=1
MSCURACT: 00e10064 cur_a=100 cur_b=225
MSCNT: 00000044 mscnt=68
TSTEP: 000fffff tstep=1048575
FACTORY_CONF: 0000000c fclktrim=12
IOIN: 21000041 enn=1 pdn_uart=1 version=0x21
OTP_READ: 0000000c otp_fclktrim=12
IFCNT: 00000015 ifcnt=21
GSTAT: 00000001 reset=1(Reset)
GCONF: 000001c4 en_spreadcycle=1 pdn_disable=1 mstep_reg_select=1 multistep_filt=1
========== Queried registers ==========
SGTHRS: 00000000
TPOWERDOWN: 00000014 tpowerdown=20
IHOLD_IRUN: 00081919 ihold=25 irun=25 iholddelay=8
SLAVECONF: 00000200 senddelay=2
========== Write-only registers ==========
DUMP_TMC STEPPER=stepper_z
SG_RESULT: 00000000
PWM_AUTO: 000e0024 pwm_ofs_auto=36 pwm_grad_auto=14
PWM_SCALE: 00000012 pwm_scale_sum=18
PWMCONF: c80d0e24 pwm_ofs=36 pwm_grad=14 pwm_freq=1 pwm_autoscale=1 pwm_autograd=1 pwm_reg=8 pwm_lim=12
DRV_STATUS: 800f00c0 ola=1(OpenLoad_A!) olb=1(OpenLoad_B!) cs_actual=15 stst=1
CHOPCONF: 24030053 toff=3 hstrt=5 tbl=2 vsense=1 mres=4(16usteps) dedge=1
MSCURACT: 00f7000c cur_a=12 cur_b=247
MSCNT: 00000008 mscnt=8
TSTEP: 000fffff tstep=1048575
FACTORY_CONF: 0000000f fclktrim=15
IOIN: 21000041 enn=1 pdn_uart=1 version=0x21
OTP_READ: 0000000f otp_fclktrim=15
IFCNT: 0000001d ifcnt=29
GSTAT: 00000000
GCONF: 000001c4 en_spreadcycle=1 pdn_disable=1 mstep_reg_select=1 multistep_filt=1
========== Queried registers ==========
SGTHRS: 00000000
TPOWERDOWN: 00000014 tpowerdown=20
IHOLD_IRUN: 00080f0f ihold=15 irun=15 iholddelay=8
SLAVECONF: 00000200 senddelay=2
========== Write-only registers ==========
DUMP_TMC STEPPER=stepper_y

Files:
klippy (9).log (5.5 MB)
huvud.cfg (1.5 KB)

I thought aim of this all is to get the steppers rotating, not just buzz… :wink:

Guess that does need some clarification.

I mean using the command STEPPER_BUZZ in klipper.

They do in fact ROTATE, as expected using the STEPPER_BUZZ command.

1 Like

Didn’t was aware of this. Thank you very much for the info.

No problem, you brought up a good point that I didn’t clarify what I meant by “buzz”.

The Klipper documentation is a labyrinth in itself, I’ve been tinkering with Klipper for nearly a year and I still find new commands or ways to debug/tweak things that I didn’t know before.

Some of your pins are wrong. The sample config on the Huvud GitHub is for the v0.50. Several pins were changed for v0.61 and 0.62, but the documentation was not updated. See the link below for the correct pins. In particular the enable pin changed which is why your steppers aren’t working.

1 Like

You nailed it, someone else pointed that out to me in the discord.

I just came back to paste the same link for anyone else that stumbles on this.

Thanks!