Sadulli firmware update

HI, I have a grosso.

But, I can’t update the firmware using your instruction.

Please describe what exactly is going wrong. For reference, the test log for your device is here:

because of warning, i try to update firmware.
when I try to update firmware to 0.5 or 0.6 using uavcan gui tool through babel, timeout occurred and fail to update.

You need to install the patch firmware first as explained here Workaround for a regression in the Telega Bootloader v1.x affecting the users of the legacy firmware Telega v0.x - #2 by pavel-kirienko

Then install v0.6

I have already try but failed.
There is an error in the capture.

And I also have try to update using interactive console as you said #1 but failed.

You are still running v0.4. You need to install the OTP fix first, then the normal firmware. To install the OTP fix, you need to follow these instructions: GitHub - pavel-kirienko/bootloader-crc-collider: Telega Bootloader v1.1 legacy regression workaround

For diagnostic purposes, keep looking at the log messages, they are displayed in a separate panel on the main screen of the GUI tool. The node info view contains no useful information aside from the firmware version number.

I have updated. But critical error occurs. plz, see the param list.
Why Critical occurs?

Online nodes (Node ID, Health, Mode):
     123 CRIT       OPERAT    
     125 CRIT       OPERAT    

uavcan: cycle time: 117595 events, 6066199us elapsed, 51.59us avg, min 12us max 17088us 151.824us rms
uavcan: cycle interval: 117595 events, 2636.39us avg, min 23us max 17097us 1036.732us rms
nsh> uavcan param list 123
name: uavcan.node_id 0
name: uavcan.esc_index 3
name: uavcan.esc_ttl 0.5000
name: uavcan.esc_sint 0.0500
name: uavcan.esc_sintp 0.5000
name: uavcan.esc_rcm 2
name: uavcan.esc_revrs 0
name: rcpwm.ttl 0.3000
name: rcpwm.ctl_mode 2
name: rcpwm.reverse 0
name: ctl.spinup_durat 1.5000
name: ctl.num_attempts 100
name: ctl.vm_cci_comp 0
name: ctl.vm_oversatur 0
name: ctl.pwron_slftst 0
name: ctl.hard_stop 0
name: ctl.vm_pppwm_thr 0.9500
name: ctl.field_weaken 0
name: m.num_poles 0
name: m.max_current 0.0000
name: m.max_id_current 0.0000
name: m.min_current 0.0000
name: m.spup_curr_begn 0.0000
name: m.spup_curr_end 0.0000
name: m.flux_linkage 0.0000
name: m.resistance 0.0000
name: m.induct_direct 0.0000
name: m.induct_quadrat 0.0000
name: m.min_eangvel 400.0000
name: m.max_eangvel 10000.0000
name: m.current_ramp 5000.0000
name: m.voltage_ramp 15.0000
name: m.eangvel_accel 15000.0000
name: m.eangvel_decel 10000.0000
name: m.eangvel_ctl_kp 0.0100
name: m.eangvel_ctl_ki 0.0100
name: m.eangvel_ctl_kd 0.0000
name: m.current_ctl_bw 0.0600
name: m.fw_bemf_ctl_kp 9.6000
name: m.fw_bemf_ctl_ki 0.9500
name: m.fw_eangvel_hys 100.0000
name: m.fw_volt_boost 1.2000
name: load.linear_coef 0.0000
name: load.square_coef 0.0000
name: mid.phi.curr_mul 0.3000
name: mid.phi.eangvel 300.0000
name: mid.phi.stall_th 4.0000
name: mid.phi.curr_bw 0.0100
name: mid.l.curr_mul 0.0600
name: mid.l.curr_freq 900.0000
name: mid.l.curr_bw 0.0010
name: mid.r.curr_mul 0.3000
name: o.type 0
name: o.ekf.q_id 14000.0000
name: o.ekf.q_iq 43000.0000
name: o.ekf.q_eangvel 4000000.0000
name: o.ekf.p0_idq 0.0010
name: o.ekf.p0_eangvel 0.0010
name: o.ekf.sched_curr 20.0000
name: o.ekf.sched_ind 0.8000
name: o.ekf.sched_flux 0.9500
name: o.ekf.cc_comp 0.0000
name: o.mras.gain 150000.0000
name: bec.can_pwr_on 0
name: rcpwm.enable 0
name: 0.0010
name: rcpwm.pulse.mid 0.0015
name: 0.0020
name: rcpwm.pulse.hyst 0.0000
name: vsi.pwm_freq 32000.0000
name: m.temp_sens_typ 0
name: vsi.curr_shunt 0.0030
name: vsi.tr_rds_on 0.0060
name: vsi.tr_ton_ns 14.0000
name: vsi.tr_toff_ns 25.0000
name: vsi.divider_up 35600.0000
name: vsi.divider_lo 2000.0000
name: exec_aux_command -1

The health is critical because the configuration is lost after a firmware update. To restore it, save the following configuration into a .parm file and upload it using the DroneCAN GUI Tool:

uavcan.esc_rcm         1
ctl.spinup_durat       1.5
ctl.hard_stop          True
ctl.vm_pppwm_thr       0.8
ctl.field_weaken       False
m.num_poles            24
m.max_current          30.0
m.max_id_current       4.0
m.min_current          0.5
m.spup_curr_begn       1.8
m.spup_curr_end        0.5
m.flux_linkage         0.001530292
m.resistance           0.045121562
m.induct_direct        1.8722e-05
m.induct_quadrat       1.8722e-05
m.min_eangvel          300.0
m.max_eangvel          6900.0
m.current_ramp         500.0
m.voltage_ramp         25.0
m.eangvel_accel        15000.0
m.eangvel_decel        15000.0
m.eangvel_ctl_kp       0.1
m.eangvel_ctl_ki       0.15
m.eangvel_ctl_kd       1.0e-6
m.current_ctl_bw       0.09
mid.phi.curr_mul       0.1
mid.l.curr_mul         0.02
mid.r.curr_mul         0.1
o.ekf.q_id             13.0e+3
o.ekf.q_iq             25.0e+3
o.ekf.q_eangvel        3000.0e+3
m.temp_sens_typ        2
vsi.curr_shunt         0.003
vsi.tr_rds_on          0.006
vsi.tr_toff_ns         45.0
vsi.tr_ton_ns          6.0

Thanks for your help.

Before reading your post, I did motor identification using exec_aux_command(1002).

three of them are successfully finishing the process, But One motor could not enter moto identification process.

warning appears in log messages(Level:waring, Source AuxCmdlface, Test : HW test result:8)

And also, I upload the param value you post using “load from file”
after that warning appears. vendor-specific code 3072 / 0x0c00 / 0b00001100_00000000

Thanks for reading.

Please post a screenshot of the node info window for the node that reports the warning.

after booting

the below image is after motor identification.


Hardware test error 8 means that the phase A is malfunctioning. Has the device sustained any damage?

Please send the order number to and we will investigate.

No damage. I just test to electronic connectivity and wiring. After that I will assembly a multicopter.

For oder number, I will check and e-mail to you.

But for one motor, What should I do?