Skip to content

Setup current and speed limits

Candas1 edited this page Apr 21, 2022 · 26 revisions

⚡ Current Limit

You can adjust I_MOT_MAX parameter in config.h file to decrease/increase current limit(Amps).
I_DC_MAX should be set to I_MOT_MAX + 2A.

⭕ Speed Limit

You can adjust N_MOT_MAX in config.h file to decrease/increase the speed limit(RPMs).
This is only limiting the speed, the speed you will actually reach depends on control type, control mode, phase advance/field weakening settings, speed coefficient, and current limit.
Be aware that the firmware has a hard limit of 2000 RPMs to prevent overflows.
This issue explains how to reach high speeds, but use it at your own risk.
The speed can overshoot the limit, this is a known issue.

⚙️ Setting up the Current and Speed limits on the go

This feature let's you change the Max Current(I_MOT_MAX) and Max Speed(N_MOT_MAX) on the go without having to modify config.h and flash the board

  • press the power button for more than 5 sec and immediately after the beep sound press one more time shortly
  • move and hold the pots to a desired limit position for Max Current(INPUT1) and Max Speed(INPUT2), maximum being the values you have put in config.h
  • press the power button to confirm or wait for the 10 sec timeout

⚠ Current and speed limits will be stored in flash memory if you set them up on the go or if you do the auto-calibration, so changing it in config.h file won't have any effect anymore. It will be only erased from flash memory if you fully delete memory before flashing.
An alternative to bypass those settings is to change FLASH_WRITE_KEY in config.h.

Debug Protocol

Another way to change those settings without flashing the board is the debug protocol. You will be able to change the settings via commands through the serial port.