Releases: lukash/refloat
Refloat 1.2.0-beta1
Refloat 1.2 reaches fully seamless upgrading experice (with automatic config restore and support for automatically migrating any changes in config options) and brings major improvements in various alerting mechanisms.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
Features
- Add support for BMS alerting (Pushback and Haptic) [Syler Clayton]
- Add support for speed-based alerting (Pushback and Haptic) [Henrik Buestad]
Trigger Pushback and Haptic Feedback at a desired speed. The properties other than the Speed Threshold are shared with Duty Cycle. - Support migrating package config from older versions to newer in the AppUI backups (doesn't work for XML and Start page backups).
- Groundworks for a new Alerting system
Right now only providing information about firmware faults (support for other alerts will come in future versions). - Support per-cell low and high voltage thresholds for Pushback / Haptic alerts.
Requires firmware 6.05+. Total values are still supported (but no longer recommended). If using the package-native backup/restore mechanism, the config will be automatically adjusted to per-cell values. - Add an option to enable/disable Quickstop.
- Add Rainbow Fade, Rainbow Cycle and Rainbow Roll LED effects. [acheronfail]
- Add an option for LEDs to not require a pullup resistor to 5V.
- Remove the conversion of old Float quicksaves into Refloat.
- Allow to configure both Internal and External LEDs at the same time.
- Remove the Swap Footpad Sensor ADCs AppUI Preferences option It only changed the visualization and was not a per-board option, which could cause confusion.
Fixes
- Fix LEDs color spectrum generation to be more uniform.
- Rotate Gyro Y to estimate the change in pitch due to rider input, without influence from turning (Credit to Michalmo for the math) [Nico Aleman]
- Fix motor config changes (current limits, temp thresholds, etc.) not being updated in the package until a restart.
- Fix displaying charging current and voltage on Floatwheel
Refloat 1.1.1
A bugfix release fixing a serious bug that would limit ERPM to 6000 if on surfdado's Pin Lock firmware and using flywheel. Also contains a fix for Remote behavior and a Reverse Stop fix.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
Fixes
- do not risk chance that erpm limit is reduced to 6000 after doing flywheel [Dado Mista]
- Fix remote not being reset on engage, not respecting the 30 degree threshold disabling the quickstop and pitch fault and not being properly reported to client apps.
- Don't ignore reverse-stop during error pushback situations. [Dado Mista]
- Fix Data Record buttons in the plot being displayed when they shouldn't.
Refloat 1.1.1-beta2
This second beta contains a fix for a critical bug which can reduce the ERPM limit to 6000 after doing a flywheel, if running surfdado's pinlock firmware (installed by default on all Thor400 controllers).
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
Fixes
- do not risk chance that erpm limit is reduced to 6000 after doing flywheel [Dado Mista]
Refloat 1.1.1-beta1
A small bugfix release, mainly fixing Remote behavior and also containing a Reverse Stop fix.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
Fixes
- Fix remote not being reset on engage, not respecting the 30 degree threshold disabling the quickstop and pitch fault and not being properly reported to client apps.
- Don't ignore reverse-stop during error pushback situations. [Dado Mista]
- Fix Data Record buttons in the plot being displayed when they shouldn't.
Refloat 1.1.0
This release contains Haptic Feedback as the major feature, as well as a number of other smaller features along with a handful of fixes.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
Features
- Implement Haptic Feedback.
- New Parking Brake feature
Parking Brake is a strong brake at standstill applied via shorting the motor phases. A new option is added that allows to turn it on, off or on only when idle (allowing for ghostride tricks). - Smoothened/faster setpoint ramping for ATR and Torque Tilt [Dado Mista]
- Implement manual per-board backup in Settings -> Setup
- Implement automatic board backup and restore
Each board's config is now automatically backed up in VESC Tool. In case of a config reset (due to installing a new package version), a restore dialog is automatically displayed. The backup can be viewed in Settings -> Setup. - UI: Highlight tunes that match the current config
- UI: Show list of changed options in tune / config dialogs
- UI: Add a settings toggle to show changed options count on tunes
- Make LED strip order configurable.
- Make LEDs color order configurable per-strip.
- Add the (W)RGB LED Color Order option (WS2814 LED chip). [Jared Harrison]
- Add the Felony LED effect. [acheronfail]
- LED status bar confirmation animation for config writes and konami triggers.
- Add konami codes for turning LED headlights on and off
To turn headlights on: LEFT LEFT RIGHT
To turn headlights off: RIGHT RIGHT LEFT - Realtime data plot in the package AppUI
In the Data tab in the AppUI the realtime values from the package are now plotted in a graph.
Also, with a special firmware, mainly intended for developers, it is now possible to have a short period of time recorded in the package, at the native loop frequency. - Reverse stop is now smooth, robust and beginner friendly. [Dado Mista]
- More tolerant simple-start implementation with 1 second grace period. [Dado Mista]
- Don't activate idle brake right after startup.
- Apply Startup Click to disengaging too.
- The Accelerometer Confidence Decay configuration option has been removed
The value is now hard-coded to 0.02. - The Darkride Pitch Offset configuration option has been removed.
- The Surge feature has been removed.
- The Remote Tiltback Smoothing Factor configuration option has been removed
Its default value of 1 is now used for smoothing.
Fixes
- Updates to Config Parameters [Nico Aleman, Dado Mista]
- Pitch KP: Min from 0 -> 0.2
- Brake Scalings: Max from 2x -> 3x
- Torquetilt Strengths: Defaults changed from 0 -> 0.1 º/A
- Torquetilt On Speed: from 5 -> 10
- Torquetilt Off Speed: from 3 -> 8
- Turntilt Aggregate Threshold: from 2 -> 5
- Turntilt ERPM Threshold: from 1000 -> 2000
- ATR Uphill Strength: Default changed from 0 -> 1.0
- ATR Downhill Strength: Default changed from 0 -> 0.5
- ATR On Speed: from 4 -> 10
- ATR Off Speed: from 3 -> 8
- Descriptions updated for: Rate P, Angle I, Pitch KP, Duty Buzz Strength/Frequency, Booster parameters, and ATR Amps to Deceleration.
- UI: Fix some Specs/Hardware options being included in tune quicksaves and remove Pushback Alerts config section the quicksaves too.
- Fix spurious braking current at standstill by raising the ERPM threshold to 10.
- Fix losing odometer distance of the last ride if turning the board off within 10 seconds after disengaging.
- Don't allow disabling the package while engaged.
- Fix the short jerk when writing a config.
Refloat 1.1.0-beta3
This release contains Haptic Feedback as the major feature, as well as a number of other smaller features along with a handful of fixes.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
1.1.0-beta3
Features
- Add back the text format for the Data tab, switchable with the graph via a button.
Fixes
- Remove items from the Pushback Alerts and Haptic Feedback config sections from the tune quicksaves.
- Updates to Config Parameters [Nico Aleman]
- Pitch KP: Min from 0 -> 0.2
- Brake Scalings: Max from 2x -> 3x
- Duty Buzz Frequency: Default from 400Hz -> 495Hz
- Error Buzz Frequency: Default from 500Hz -> 550Hz
- TT Strengths: Defaults changed from 0 -> 0.1 º/A
- ATR Uphill Strength: Default changed from 0 -> 1.0
- ATR Downhill Strength: Default changed from 0 -> 0.5
- Descriptions updated for: Rate P, Angle I, Pitch KP, Duty Buzz Strength/Frequency, Booster parameters, and ATR Amps to Deceleration.
1.1.0-beta2
Fixes
- Fix wrong speed being reported in 3rd party client apps.
1.1.0-beta1
Features
- Implement Haptic Feedback.
- New Parking Brake feature
Parking Brake is a strong brake at standstill applied via shorting the motor phases. A new option is added that allows to turn it on, off or on only when idle (allowing for ghostride tricks). - Smoothened/faster setpoint ramping for ATR and Torque Tilt [Dado Mista]
- Implement manual per-board backup in Settings -> Setup
- Implement automatic board backup and restore
Each board's config is now automatically backed up in VESC Tool. In case of a config reset (due to installing a new package version), a restore dialog is automatically displayed. The backup can be viewed in Settings -> Setup. - UI: Highlight tunes that match the current config
- UI: Show list of changed options in tune / config dialogs
- UI: Add a settings toggle to show changed options count on tunes
- Make LED strip order configurable.
- Make LEDs color order configurable per-strip.
- Add the (W)RGB LED Color Order option (WS2814 LED chip). [Jared Harrison]
- Add the Felony LED effect. [acheronfail]
- LED status bar confirmation animation for config writes and konami triggers.
- Add konami codes for turning LED headlights on and off
To turn headlights on: LEFT LEFT RIGHT
To turn headlights off: RIGHT RIGHT LEFT - Realtime data plot in the package AppUI
In the Data tab in the AppUI the realtime values from the package are now plotted in a graph.
Also, with a special firmware, mainly intended for developers, it is now possible to have a short period of time recorded in the package, at the native loop frequency. - Reverse stop is now smooth, robust and beginner friendly. [Dado Mista]
- More tolerant simple-start implementation with 1 second grace period. [Dado Mista]
- Don't activate idle brake right after startup.
- Apply Startup Click to disengaging too.
- The Accelerometer Confidence Decay configuration option has been removed
The value is now hard-coded to 0.02. - The Darkride Pitch Offset configuration option has been removed.
- The Surge feature has been removed.
- The Remote Tiltback Smoothing Factor configuration option has been removed
Its default value of 1 is now used for smoothing.
Fixes
- Fix spurious braking current at standstill by raising the ERPM threshold to 10.
- Fix losing odometer distance of the last ride if turning the board off within 10 seconds after disengaging.
- Don't allow disabling the package while engaged.
- Fix the short jerk when writing a config.
- UI: Fix some Specs/Hardware options being included in tunes.
Refloat 1.1.0-beta2
This release contains Haptic Feedback as the major feature, as well as a number of other smaller features along with a handful of fixes.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
1.1.0-beta2
Fixes
- Fix wrong speed being reported in 3rd party client apps.
1.1.0-beta1
Features
- Implement Haptic Feedback.
- New Parking Brake feature
Parking Brake is a strong brake at standstill applied via shorting the motor phases. A new option is added that allows to turn it on, off or on only when idle (allowing for ghostride tricks). - Smoothened/faster setpoint ramping for ATR and Torque Tilt [Dado Mista]
- Implement manual per-board backup in Settings -> Setup
- Implement automatic board backup and restore
Each board's config is now automatically backed up in VESC Tool. In case of a config reset (due to installing a new package version), a restore dialog is automatically displayed. The backup can be viewed in Settings -> Setup. - UI: Highlight tunes that match the current config
- UI: Show list of changed options in tune / config dialogs
- UI: Add a settings toggle to show changed options count on tunes
- Make LED strip order configurable.
- Make LEDs color order configurable per-strip.
- Add the (W)RGB LED Color Order option (WS2814 LED chip). [Jared Harrison]
- Add the Felony LED effect. [acheronfail]
- LED status bar confirmation animation for config writes and konami triggers.
- Add konami codes for turning LED headlights on and off
To turn headlights on: LEFT LEFT RIGHT
To turn headlights off: RIGHT RIGHT LEFT - Realtime data plot in the package AppUI
In the Data tab in the AppUI the realtime values from the package are now plotted in a graph.
Also, with a special firmware, mainly intended for developers, it is now possible to have a short period of time recorded in the package, at the native loop frequency. - Reverse stop is now smooth, robust and beginner friendly. [Dado Mista]
- More tolerant simple-start implementation with 1 second grace period. [Dado Mista]
- Don't activate idle brake right after startup.
- Apply Startup Click to disengaging too.
- The Accelerometer Confidence Decay configuration option has been removed
The value is now hard-coded to 0.02. - The Darkride Pitch Offset configuration option has been removed.
- The Surge feature has been removed.
- The Remote Tiltback Smoothing Factor configuration option has been removed
Its default value of 1 is now used for smoothing.
Fixes
- Fix spurious braking current at standstill by raising the ERPM threshold to 10.
- Fix losing odometer distance of the last ride if turning the board off within 10 seconds after disengaging.
- Don't allow disabling the package while engaged.
- Fix the short jerk when writing a config.
- UI: Fix some Specs/Hardware options being included in tunes.
Refloat 1.1.0-beta1
This release contains Haptic Feedback as the major feature, as well as a number of other smaller features along with a handful of fixes.
Disclaimer: Use at your own risk!!!
Read the package README for installation details.
Features
- Implement Haptic Feedback.
- New Parking Brake feature
Parking Brake is a strong brake at standstill applied via shorting the motor phases. A new option is added that allows to turn it on, off or on only when idle (allowing for ghostride tricks). - Smoothened/faster setpoint ramping for ATR and Torque Tilt [Dado Mista]
- Implement manual per-board backup in Settings -> Setup
- Implement automatic board backup and restore
Each board's config is now automatically backed up in VESC Tool. In case of a config reset (due to installing a new package version), a restore dialog is automatically displayed. The backup can be viewed in Settings -> Setup. - UI: Highlight tunes that match the current config
- UI: Show list of changed options in tune / config dialogs
- UI: Add a settings toggle to show changed options count on tunes
- Make LED strip order configurable.
- Make LEDs color order configurable per-strip.
- Add the (W)RGB LED Color Order option (WS2814 LED chip). [Jared Harrison]
- Add the Felony LED effect. [acheronfail]
- LED status bar confirmation animation for config writes and konami triggers.
- Add konami codes for turning LED headlights on and off
To turn headlights on: LEFT LEFT RIGHT
To turn headlights off: RIGHT RIGHT LEFT - Realtime data plot in the package AppUI
In the Data tab in the AppUI the realtime values from the package are now plotted in a graph.
Also, with a special firmware, mainly intended for developers, it is now possible to have a short period of time recorded in the package, at the native loop frequency. - Reverse stop is now smooth, robust and beginner friendly. [Dado Mista]
- More tolerant simple-start implementation with 1 second grace period. [Dado Mista]
- Don't activate idle brake right after startup.
- Apply Startup Click to disengaging too.
- The Accelerometer Confidence Decay configuration option has been removed
The value is now hard-coded to 0.02. - The Darkride Pitch Offset configuration option has been removed.
- The Surge feature has been removed.
- The Remote Tiltback Smoothing Factor configuration option has been removed
Its default value of 1 is now used for smoothing.
Fixes
- Fix spurious braking current at standstill by raising the ERPM threshold to 10.
- Fix losing odometer distance of the last ride if turning the board off within 10 seconds after disengaging.
- Don't allow disabling the package while engaged.
- Fix the short jerk when writing a config.
- UI: Fix some Specs/Hardware options being included in tunes.
Refloat v1.1-preview2
WARNING: This is an experimental version of the package. Bugs may and will be present. Be very careful!
!!!! The Haptic Feedback feature can potentially cause VESC Firmware Faults, read below !!!!
This feature preview contains a second iteration of Haptic Feedback, which uses current modulation instead of the 6.05 foc_play_tone
feature for lower frequencies haptics, and Setpoint smoothing for ATR, Torque Tilt and Input Tilt.
The preview provides a lot of technically complex configuration options, please read this release notes text in its entirety as well as the config option descriptions!
Haptic Feedback
This second iteration of Haptic Feedback uses current modulation for lower frequencies, because the foc_play_tone
feature doesn't respect VESC current limits and may cause an overcurrent fault if the Absolute Maximum Current threshold is crossed (which results in an immediate nose dive). Lower frequencies cause higher current spikes, that's why we use current modulation for those, instead of foc_play_tone
.
The Absolute Maximum Current threshold is supposed to be set with a leeway (recommended is at least 50% over your current limits), which should cover the spikes under normal circumstances. The user is responsible to set this limit with enough leeway. But different combinations of hardware make every board unique and some boards may have higher current spikes than others. Low impedance motors like Superflux and Cannoncore will have higher spikes in general, so are more susceptible to this issue. We evaluate the probability of a fault occurrence as unlikely, but it may happen. Use at your own risk!!! With that said, any feedback on this working without issues or producing faults is highly appreciated.
Configuring Haptic Feedback
The Haptic Feedback is configured separately for Duty Cycle alerts and for Error alerts. you can set the Audible Frequency and Strength for each of those. Then there's Vibrating Strength and Frequency (enabled by setting non-zero Strength), which is shared for both the Duty Cycle and Error feedback.
The Duty Cycle feedback has two levels, short beeps or a continuous tone. Short beeps are triggered when the Pushback Duty Cycle Threshold is crossed and there's an option for Duty Cycle Solid Threshold. There's also an option for a Current Threshold. This will play a solid tone when you are reaching a percentage threshold of your motor or battery current. Be extra careful with this option, as it occurs in high current situations and that's exactly when Absolute Overcurrent Fault is most likely to occur!
Last but not least, the Strength Polynomial configuration allows you to set the intensity as the following function of speed, so that it gets louder when you go faster:
intensity = A + B * speed + C * speed2
Setpoint Smoothing
Setpoint modifiers in the current stable Refloat release change linearly at a constant rate. When this rate (defined by Max Tiltback Speed and Max Tiltback Release Speed in the respective features' configs) is set too high, the movement is jerky. This release introduces some experimental filters that aim to smooth out the jerkiness, but at the same time allow higher setpoint change speeds.
There are three new filters:
- 3-Stage
- 3rd Order EMA
- Nico's
The main configuration of the filters is on the ATR tab! You can set a different type of filter for Torque Tilt on the Tune Modifiers tab and a different Input Tilt filter on the Remote tab, but the configuration of the given types is always only one, on the ATR tab.
The 3-stage and 3rd Order EMA have config options that allow to configure their smoothness (the smoother they are configured, the longer their response time).
Note: Nico's filter doesn't have configuration. It's been used for the Input Tilt smoothing in Float and Refloat and is included here for reference. It is mathematically flawed, albeit it works reasonably well. We're trying to find a better and mathematically correct filter.
The configuration options have detailed descriptions of their respective effects.
Changelog
Features
-
Experimental: Implement Haptic Feedback
-
Experimental: Implement ATR, Torque Tilt and Input Tilt smoothing
-
The Accelerometer Confidence Decay configuration option has been removed.
The value is now hard-coded to 0.02. -
The Darkride Pitch Offset configuration option has been removed.
-
The Surge feature has been removed.
-
The Remote Tiltback Smoothing Factor configuration option has been removed.
Its default value of 1 is now used for smoothing. -
LED status bar confirmation animation for config writes and konami triggers.
-
Add konami codes for turning LED headlights on and off
To turn headlights on: LEFT LEFT RIGHT
To turn headlights off: RIGHT RIGHT LEFT -
New Parking Brake feature
Parking Brake is a strong brake at standstill applied via shorting the motor phases. A new option is added that allows to turn it on, off or on only when idle (allowing for ghostride tricks). -
Don't activate idle brake right after startup
-
More tolerant simple-start implementation with 1 second grace period [Dado Mista]
-
Reverse stop is now smooth, robust and beginner friendly [Dado Mista]
-
Add the Felony LED effect. [acheronfail]
-
Add the (W)RGB LED Color Order option (WS2814 LED chip). [Jared Harrison]
Fixes
- Fix overflowing battery bar in AppUi
- Fix Floaty LEDs communication error if LED Type is not External
- Fix spurious braking current at standstill by raising the ERPM threshold to 5
Refloat 1.1-preview1
WARNING: This is an experimental version of the package. Bugs may and will be present. Be very careful!
This release is intended primarily as a test for Haptic Feedback. This release allows to configure all the Haptic frequencies as well as the tone length of the beeps. The goal is to provide a configurable build for testing, gather feedback and come up with a smaller set of configuration options, which still allows enough customization.
In addition to the new config section (Haptic Feedback), Pushback Alerts -> Duty Cycle Threshold is used to trigger Duty Cycle Haptic Feedback).
There is also an option to set the Duty Cycle filter alpha (Pushback Alerts -> Duty Filter Alpha) for Duty Cycle smoothing used to determine duty pushback, which can be used to tune how Duty Cycle spikes are filtered out. (higher numbers mean less filtering)
As for the kind of feedback we're looking for:
- Which frequencies work for you and which do you prefer
- What tone length do you use
- Which intensities
- How do you like how the Haptic Feedback works in general
- Do you use the vibrating frequency and which?
- What Duty Cycle alpha works best for you (and how much did you push into very high Duty Cycle when testing)
Features
- Add the Felony LED effect. [acheronfail]
- Reverse stop is now smooth, robust and beginner friendly [Dado Mista]
- Add a temporary config option to set duty cycle filter alpha
- Implement Haptic Feedback