Firmware update v0.8.11

Hello, riders!

We recently released big firmware updates v0.8.10 and v0.8.11 for the Controller and v0.80B for the Onboard Computer. Due to the fact that more and more settings and new menu items appear in each new firmware, we decided to post not only a list of changes but also a more detailed description of the updated devices menu. We hope this will help you quickly understand the settings and try out the new functionality.
Let's start with firmware v0.8.10 and v0.8.11 for the Controller:
- Added Adaptive throttle mode (by default with 6%).
- Added Power throttle mode.
- Added PAS scaling with buttons.
- Added Torque sensor minimal pressure for insta-start.
- Forwarded hall error to display a flag.
- Changed hall error detection logic.
- DC-DC now shows current on each phase.
- Added TF21904M potential driver fix.
- PhaseResponse added phase selection.
- Updated flag names for sensor errors.
- Added phase currents and voltages for LR detect.
- Added PAS voltage filter.
- Added PAS voltage selection (throttle or vpas).
- Added new inputs (I1-I13).
- Inputs renamed.
- Added checks to HWPort HAL.
- Added t-sensor resistance compensation.
- Added DAC current protection temperature correction, needs optimization.
- Added 5V for FW.
- VBUS calculation moved to RAM.
- Added FreeRTOS-gcc workaround.
- R detection now uses 50% pwm as offset.
- New timer sync method for upcounter mode (R detect).
- Motor LR auto-detect enabled.
- Added AN brake input 'switch' detect by dV.
- Added MTPA enable detect when inductance is 30% bigger.
- Added hall input filter.
- Added hall step forward filter with min step time.
- Added fallthrough directives.
- Added parameters size check as a warning.
- Fixed inputs array position.
- Motor LR moved to the last detection position.
- Added local port input filter.
- Added Enable Throttle function (opposite to Disable Throttle).
- Added Hall sensor minimal step time.
- Added wait code for R detect.
- Fixed voltage error on R detect.
- Fixed negative flux linkage.
- Disabled MTPA, FW, and other options for hall calibration.
- Added Adaptive throttle to adv. modes.
- Control structure optimized.
- FOC FW improved, should not stuck.
- Vq limit removed, now it is by default.
- Added (by default) MTPA mode by real Q current.
- Small FOC optimizations.
- Added TIM1 as a variable to the linker script.
- Hall code moved to upcounter while FOC in down-counter (buzz fix #1).
- DMA is now in circular mode, it needs less code with the same effect.
- Added noise suppression in vq vd to decrease sector change (buzz fix #2).
- Storage updated, improved reliability and now with version system.
- Fixed invisible fault flag in logger.
- Updated logger defaults.


- Small optimizations.
- Logger FOC parameters replaced with filtered values in fast mode.
- Data Storage unit test updated.
- Fixed a few bugs in Data Storage.
- LEVCAN updated with recent bugfixes.
- Added additional tests for Data Storage.
- Startup junk removed.
- Logger fixed hang-on display disconnect.
- Logger cache moved to SRAM2.
- FOC pids rolled back to v0.8.9.
- Speed max increased to 200%.

What has changed in the Controller menu?
In the menu section Controller > Control, there is a new item Adaptive throttle, which is set to 6% by default. This function allows you to more accurately dose throttle at high speed, when the battery current in the settings is several times lower than the phase current.
In the settings, Controller > Controls > Throttle mode, a new mode of operation of the throttle lever has been added — Power. In this mode, you can fine-tune the consumption from the battery using the throttle.
New menu items have appeared in the Motor setup > Motor t°-sensor section:
Resistance Offset — temperature sensor offset, in Ohms. Select values from -100 Ohm to 100 Ohm, in increments of 1 Ohm.
Temperature correction — temperature sensor correction with wire resistance. Select values On or Off.
GND wire resistance — resistance of a ground wire, in Ohms. Select values from 0 Ohm to 1000 Ohm, in increments of 1 Ohm.
Sensors current — hall sensor current consumption, if temperature sensor uses common ground with hall sensors, in milliamps (mA). Select values from 0 mA to 100 mA, in increments of 1 mA.
# Total current: — calculated current, to check with a tester, in mA.
In the section Controller > Motor setup > Position sensor > Hall settings, there are items for more precise setting of the Hall sensors:
Min step filter — minimum hall switch time, in microseconds (µs). Select values from 25 µs to 5000 µs, in increments of 1 µs.
Disable pullup — disable hall pullup, mostly not needed. Select of values On or Off.
In the menu section Controller > I/O configuration, a new item Input filter has appeared, which is used for digital input filtering, in seconds (s). Select of values from 0.05 s to 1.10 s, in increments of 0.05 s.
Due to the release of a new version of the controller, the names of the inputs have been changed in the same section of the menu:
Port S1 to I1
Port S3 to I2
Port RV to I3
Port CR to I4
Port P1 to IO5
Port P2 to IO6
Port P to I7
Port M to I8
Further in this section, was added new inputs from I9 to I13.
The PWM P1 and PWM P2 ports have changed their name to PWM IO5 and PWM IO6.
Accordingly, the Controller > I/O configuration > Port State menu will now use the new input names listed above and add the states of the new inputs I9-I13.
Also in this menu there is a new item # PAS An, which shows an analog PAS sensor voltage, in volts (V).
The Controller > Control > Pedal Assist System section has also been updated. New menu items have been added:
Start torque — minimum torque to trigger "Instant Torque", in newton meters (Nm). Select of values from 0 Nm to 120 Nm, in increments of 2 Nm.
Default scale — starting power level of PAS control (for changing PAS level with buttons), in percentages (%). Select of values from 1% to 100%, in increments of 1%.
Button step — power step change with button, in percentages (%). Select of values from 1% to 100%, in increments of 1%.
# Set scale — current PAS power level, in percentages (%).
Some changes in Controller > Debug information > Debug FOC. The Ireqest Q item is replaced by I Q reqest and Ireqest D is replaced by I D reqest.
In the Controller > Debug information > Remote inputs section, new menu items have been added that show which signals come from devices connected to the CAN bus:
Neutral — On or Off signals
Brake — On or Off signals
Disable Motor — On or Off signals
Disable Throttle — On or Off signals
Disable PAS — On or Off signals
Reverse — On or Off signals
Speed mode: — S1, S2 or S3 signals
And finally, in the Controller > Logger section, the Fault flag item has been added to record the error code to the log.
New firmware v.0.80B update for On-board computer:
- Changed voltage drop saving
- Fixes in LEVCAN
- Fixes in a flash saving
- Fixed RPM in info lines
- Data Storage updated with latest fixes
There are no changes in the On-board computer menu, all improvements were aimed at the stability of the firmware code.
You can download both firmware here.