Firmware 0.5.2 Release Thread

Do you mean to say I should use a lower-valued brake resistor?

In terms of the other factors, I have the brake resistor enabled in config, and haven’t had issues since setting a more negative dc_max_negative_current value :+1:

Thank you @Samuel , added your changes and for me it’s still not working perfectly;

It homes nicely and works as expected, but only the first time.
Every homing cycle after that the offset increases slightly (while it is hardcoded at the same value).

How is this possible? How to fix it?
(maybe it has something to do with both axis homing?)

odrv0.axis0.motor.config.pre_calibrated = True
odrv0.axis0.motor.config.motor_type = 0                    
odrv0.axis0.motor.config.pole_pairs = 7                    
odrv0.axis0.motor.config.current_lim = 30                       
odrv0.axis0.motor.config.current_lim_margin = 20             
odrv0.axis0.motor.config.calibration_current = 10          
odrv0.axis0.motor.config.resistance_calib_max_voltage = 3 
odrv0.axis0.motor.config.current_control_bandwidth = 1000   
odrv0.axis0.motor.config.torque_constant = (8.27 / 800)

odrv0.config.gpio1_mode = 10  
odrv0.config.gpio1_pwm_mapping.min = 5
odrv0.config.gpio1_pwm_mapping.max = -60
odrv0.config.gpio1_pwm_mapping.endpoint = odrv0.axis0.controller._input_pos_property

odrv0.axis0.encoder.config.pre_calibrated = True  
odrv0.axis0.encoder.config.mode = 0                
odrv0.axis0.encoder.config.cpr = 8192             
odrv0.axis0.encoder.config.use_index = True        
odrv0.axis0.encoder.config.calib_range = 0.05       
odrv0.axis0.config.step_gpio_pin = 6                
odrv0.axis0.config.dir_gpio_pin = 6      

odrv0.axis0.controller.config.enable_overspeed_error = False
odrv0.axis0.controller.config.input_mode = 5        
odrv0.axis0.controller.config.control_mode = 3        
odrv0.axis0.controller.config.pos_gain = 80
odrv0.axis0.controller.config.vel_gain = 0.03           
odrv0.axis0.controller.config.vel_integrator_gain = 0.5
odrv0.axis0.controller.config.vel_limit = 30           
odrv0.axis0.controller.config.vel_limit_tolerance = 2    
odrv0.axis0.controller.config.vel_ramp_rate = 10     

odrv0.axis0.trap_traj.config.vel_limit = 20
odrv0.axis0.trap_traj.config.accel_limit = 20
odrv0.axis0.trap_traj.config.decel_limit = 20     

odrv0.config.gpio8_mode = 2 
odrv0.axis0.min_endstop.config.gpio_num = 8
odrv0.axis0.min_endstop.config.is_active_high = True
odrv0.axis0.min_endstop.config.debounce_ms = 200
odrv0.axis0.min_endstop.config.enabled = True
odrv0.axis0.min_endstop.config.offset = -5
odrv0.axis0.controller.config.homing_speed = -2

It’s quite likely that the PWM input could interfere with homing.
Can you set odrv0.config.gpio1_pwm_mapping.endpoint to something else and then try again?