Difference between revisions of "SimuCUBE firmware releases"

From Granite Devices Knowledge Wiki
Jump to: navigation, search
[checked revision][checked revision]
m (SimuCUBE firmware files)
m (SimuCUBE firmware files)
Line 61: Line 61:
 
* Unconfirmed: DirectInput Damping effect makes wheel oscillate. If you find this bug, please report the motor you are using as well as encoder CPR on our forum.
 
* Unconfirmed: DirectInput Damping effect makes wheel oscillate. If you find this bug, please report the motor you are using as well as encoder CPR on our forum.
 
* Unconfirmed: SimuCUBE USB disconnects while driving. If this happens to you, please report on our forum.
 
* Unconfirmed: SimuCUBE USB disconnects while driving. If this happens to you, please report on our forum.
 +
* Unconfirmed: Supplying a new DRC file via the Motor, Encoder and Center Point wizard does not work. If this happens to you, please report on our forum. Please also supply a debug log.
 
|-
 
|-
 
|February 19th, 2018
 
|February 19th, 2018

Revision as of 11:16, 19 April 2018

SimuCUBE firmware user guide

The user guide for the SimuCUBE firmware can be found here: SimuCUBE Firmware User Guide


SimuCUBE firmware files

Please note that this version history table only lists collected changes after each publicly released version.

Date Firmware / Configuration

Tool version

Included IONI firmware version Closed / Open / Official FW file Description/changes/new features
April, 2018 0.9.9 / 0.9.9 10702 Public beta release Upcoming release. Not released yet.

Bug fixes:

  • Directinput Friction effect works again

Improvements:

  • USB disconnect mitigation, which was introduced in 0.9.7, caused unwanted disconnections for some users. There is now an option to enable/disable this feature in the Configuration Tool. Investigations regarding the USB stability are continuing.
  • Updated French translation
  • Added Italian translation
March 29th, 2018 0.9.8 / 0.9.8 10702 Public beta release [1] Bug fixes:
  • Wheel centered inconsistantly sometimes when using the index point indexing mode, and sometimes also in the automatic mode. This has been fixed.
  • USB issue fixes
    • Sometimes, SimuCUBE's USB stack got stuck, making it still visible in game controllers, but no inputs being registered. Also the Configuration Tool would show as Disconnected.
      • Workaround for this problem is in this release.
      • If USB is stuck, then de-init, pause for 1s and then re-init the USB stack.
    • On some systems, the PC will not start if SimuCUBE is on in a state where it is sending HID (position) reports to PC.
      • Workaround for this problem is in this release.
      • If a SUSPEND or RESET command is sent from the USB stack, then pause all report updates too for 15 seconds.
    • These workarounds are experimental, and could cause other issues. That why this release will undergo a bit more testing with some well-known beta testers before public release.
  • Some DirectInput effect strength sliders caused the effect to be reversed if the percentage was larger than 127. This has been fixed.

Improvements:

  • Improved DirectInput damping effect calculation. Now it reacts to Positive Coefficient included in the effect in a more controllable way.
  • Desktop centering spring has now an integrated, non-user adjustable damper effect, as well as a strength value that sets how fast it increases the force, and saturation setting that tells the maximum force that can be used.
  • Desktop centering spring will always have its 100% force applied at +/- 450 degrees, regardless of user's steering angle preset in profiles. Previously they were interconnected.
  • Bumpstop damping effect has been improved slightly. There is now an additional, non-user adjustable low pass filter for the signal for this effect.
  • Added a small deadzone for the clipping LED. Previously it was lit when the value was at -16384 or +16384, now the limit is <-16300 and >16300.
  • If user has unsaved settings, a new page in the motor configuration wizard asks the user if he wants to save them, or reload the last saved settings before doing the wizard.

Ioni Firmware Update:

Translations:

  • Includes French translation by Stef Bord.
  • If you don't want to see translation and your Windows is in French, delete the qm file from translations directory. An User Interface for selecting language will be added in the future.

Known issues

  • Confirmed: DirectInput Friction effect does not work.
  • Unconfirmed: DirectInput Damping effect makes wheel oscillate. If you find this bug, please report the motor you are using as well as encoder CPR on our forum.
  • Unconfirmed: SimuCUBE USB disconnects while driving. If this happens to you, please report on our forum.
  • Unconfirmed: Supplying a new DRC file via the Motor, Encoder and Center Point wizard does not work. If this happens to you, please report on our forum. Please also supply a debug log.
February 19th, 2018 0.9.7 / 0.9.7a 10701 Public beta release [2] Please note: 0.9.6 versions didn't pass quality checks with pre-release testers, so we decided to go straight to 0.9.7 where also the bugs with the new features are fixed.

Bug fixes:

  • The last page of the firmware update wizard should not sometimes disappear behind the SimuCUBE Configuration Tool main window anymore
  • Not all DirectInput effect sliders were set to 100% for new profiles
  • Spring effect values were not included in export/import functionality

Improvements:

  • Lots of minor User Interface tidy-ups
  • Whitelisted some more OEM brand banners.
  • Analog configuration dialog has been reworked to be much more logical in regard to the deadzone settings and when axis invert is used.
    • This is all done on the user interface, and values are automatically converted to match the values that previously had to be input there.
    • Instead of putting min and max values into the dialog, user must now input deadzones from 0 (the low deadzone) and from 65535 (the high deadzone).
      • Example 1: user had previously typed 100 and 60000. These are automatically now shown as 100 and 5535.
      • Example 2: user had previously typed 200 and 50000 and axis inverted. These are now 15535 (65535-50000) and 200.
  • Firmware reads back 32-bit encoder position as the last item after...
  1. resetting profile or hardware settings to SimuCUBE from the Configuration Tool
  2. saving settings to flash
  • This will mitigate users loosing wheel calibration when changing settings and at the same time turning wheel very fast.
  • Estimated Maximum Torque indicator has been removed temporarily; it might be added back in future version.
  • Added an error message if IONI DRC configuration file option was selected by the user in the Motor Configuration Wizard, but the file could not be opened. NOTE: 0.9.7a release replaces the original 0.9.7 Configuration Tool with a version that lets user to upload a DRC file.
  • Save settings to flash -button will only be enabled when user has changed some settings. This is to mitigate user pressing the button for absolutely no reason. This change will prolong the life of the SimuCUBE flash memory.
  • NOTE: If you use the index point -based indexing on the wheel, you might need to re-run the "Configure Motor, Encoder and Center Point" wizard again to make the wheel center correctly.

New features:

  • LED 4 on SimuCUBE board will turn on when the output signal to IONI is at maximal torque value in either direction. This should match MMOS functionality.

IONI Firmware version 1.7.1 included.

Known issues:

  • Encoder offset is sometimes read so that the wheel centers somewhat off-center.
    • This is more likely to occur in index point indexing mode, but also happens at any other indexing mode.
    • This issue is under investigation, and it will be fixed.
February 4th, 2018 0.9.5 / 0.9.5 10700 Public beta release [3] Bug fixes:
  • CPR value is now correctly read from the IONI drive upon initialization when running the Motor Configuration Wizard. This means, that this version can be used to set up a new system.

Improvements:

  • Firmware update wizard will now show a 30 s countdown timer after firmware update has finished. User can't skip this countdown. This is to make sure, that user should not power-off the system at this point, as there could be automatic IONI firmware update running in the background.
February 2nd, 2018 0.9.4 / 0.9.4 10700 Public beta release [4] NOTE:
  • Confirmed issue, where an empty SimuCUBE can't be properly set up using this version - a 0 will be read as the CPR value.
  • Workaround if this happens:
    • Install 0.9.5 version of firmware

OR

    • Using 0.9.4, click update firmware.
    • When the wizard says "Found SimuCUBE in Firmware Update mode", click cancel.
    • Then use 0.9.3, flash that version.
    • Do the Configure Motor, Encoder and Center point wizard.
    • Verify correct operation of the system.
    • After it works, you can update to 0.9.4.

- - -

New features

  • Branding support
    • Those resellers that want their own logo to replace the Granite Devices SimuCUBE logo on the UI, please send a logo for approval and whitelisting. You should know who to contact by email or on our community forums.
    • Suitable image size: 400px wide and 50px height PNG file with optional transparency.
  • All users can replace the wheel image with their own image.
    • Suitable image size: 400x400 px, PNG with transparency set.
    • Place the file as wheelimage.png in the Configuration Tool directory.
  • Configuration Tool will detect a SimuCUBE in Firmware Upgrade Mode and shows the firmware prompt automatically.
  • Configuration Tool now has new, nice app icon, edited by Sebastian Keijmel.
  • Configuration Tool will ask for user to accept End User License Agreement (new version of the license will replace the old.)
  • Configuration Tool has indicators for effect usage next to the DirectInput effect sliders.
  • Desktop Centering Spring has adjustable minimum force saturation to enable more strict centering of the wheel.

Bug fixes

  • The Configuration Tool will not always prompt about unsaved settings on start, even if user did not change settings.
  • Regaining communications to IONI drive after Granity mode is fixed.
  • Automatic IONI drive firmware update seems to have been broken since at least 0.9.0 version. It has been fixed.

IONI Firmware update 1.7.0

January 26th, 2018 0.9.2 / 0.9.3 10601 Public beta release [5] Bug fix:
  • Configuration tool will export simucubeprofiles.ini again, instead of corrupting VERSION file.

New features:

  • Configuration tool will automatically backup profiles to profiles_autobackup.ini when user presses the Save settings to flash -button.

Note: Firmware has not been changed. Just unzip this new version and use it instead of previous versions.

January 25th, 2018 0.9.2 / 0.9.2 10601 Public beta release [6]

Please take note to get 0.9.2.zip file.

Bug fixes:
  • Infinite length effect, as set by some game titles such as RaceRoom, is now correctly parsed

New features:

  • Configuration Tool will now always automatically show a prompt to update firmware if a newer firmware file is found than that found installed in SimuCUBE.
  • Configuration Tool will now show a notification dialog and gracefully close, if a too new firmware is already installed in SimuCUBE.
January 25th, 2018 0.9.1 / 0.9.1 10601 Public beta release [7] New features:
  • USB effect duration is being parsed correctly for the currently implemented effects that are generally meant to be changing automatically over time, so timed effects also end at the correct time.
  • Please report if any games use timed spring, constant force, constant sine offset or any other timed effects.
    • symptom is a feeling of "neverending effect stuck on".
  • Desktop Centering spring has been implemented. It is off by default.
    • Interaction of the centering spring force and the bumbstop effect force has not been optimized and might give funny results.
    • When running the Motor Configuration Wizard, the centering spring is re-set to off. User must manually re-enable it.

Improvements:

  • Configuration Tool is built with Qt 5.10 with improved high-DPI / custom scaling factor support.

Bug fixes:

  • Firmware and Configuration Tool can manage to configure the system also to an empty SimuCUBE or when upgrading from MMOS
    • UPGRADING FROM MMOS to this or later version: No extra steps required anymore.
  • Torque peaking and notch filter will grey out the Attenuation and Center Q Factor values properly again in the UI
  • Some IONI drive connection/reconnection issues have been fixed. Please report on our forums if there still appears to be any issues.

Known issues:

  • Estimated torque calculation is wrong

Remember to actually update the firmware after unzipping via the Update Firmware -button.

January 16th, 2018 0.9.0 / 0.9.0 10601 Public beta release [8] Highlights: Event logging, Bumbstop damping improvement, FFB effects, FFB USB report parsing improvements and reordering of profiles.

UPGRADING FROM MMOS to 0.9.0:

Please use version 0.8.12 for any new firmware installs when coming from MMOS or a fresh SimuCUBE board. A bug has been found in the initial setup wizard on 0.9.0, which will be fixed very soon.

Important note about upgrading:

  • Please activate a profile with 100% strength by using the previous Configuration Tool version before updating. This is to have the correct maximum MMC at the drive when new firmware boots up. This is only required for this version, and is fixed for future releases.
  • If you forget to do this, power-cycling the SimuCUBE will also reset the setting to the correct one on IONI drive.

New features:

  • SimuCUBE logs firmware state changes and other data into a log, which can be downloaded via "Download Event Log" button on the advanced tab in the Configuration tool.
  • In the same tab, user can set logging to include state changes and other basic stuff OR ffb effect creation/start/stop events OR ffb effect calculation results. The latter two types are not yet logging anything, they are reserved as future debugging helpers.
  • Following DirectInput effects have been implemented: Sine wave, Square Wave, Triangle Wave, SawtoothUp, SawtoothDown, Spring
    • Sliders to set strength of each of these is available in the UI. Values for the new sliders are random for existing profiles - please adjust them.
    • Each of the sliders has any effect only when a game is setting such an effect to use via DirectInput.
      • You can check which effects games are using by looking at the advanced tab while driving.
  • Profiles can be re-ordered via new dialog

Improvements:

  • Bumbstop effect damping has been reworked and improved.
  • Motor fault codes are read in initialization phase, instead of just checking for success/failure of initialization.
  • It is not possible anymore to end up in Operational mode via complex state changes when initial motor settings are not configured at least once via the wizard.
  • Added reading of HV Bus Voltage and FOV values if waited for initialization for more than 30s. FOV must be larger than HV Bus Voltage + 2% for the IONI to init. There is an error message explaining this now.
  • Improved resiliency against misconfigured IONI drives, such as bus address offset being other than 0.
  • Some handling of USB Suspend and RESET commands. It is unlikely that this would solve Computer Hangs Boot -issue.

Bug Fixes:

  • Improved timeliness for USB FFB effect command parsing. This bug caused some FFB effects to not always get initialized for some game titles.
  • 100% IONI MMC is set to the drive right before going to Firmware Upgrade Mode, so that after the update the correct 100% MMC can be read from the drive.

Known issues:

  • Estimated torque calculation is wrong
  • Rarely, re-enabling SimpleMotion communications from the USB Configuration Mode fails, and firmware will go into reconnect loop. Re-enabling IONI USB communications and switching back can be used to connect drive.

Bootloader:

  • Bootloader has been updated to v1.2.1.
    • Initialize the TXEN pin on the SimpleMotion bus as input, so user can connect to IONI drive via Granity after putting SimuCUBE firmware into bootloader mode.
    • USB control reply sending fix that was also done for SimuCUBE Firmware release 0.8.3. It is unlikely that this bug could affect bootloader, but the fix is copied to bootloader anyway.
    • There is a slight delay before booting out of bootloader mode by command from PC. This is to allow enough time for the Configuration Tool on PC to properly disconnect from bootloader.
    • Bootloader remains 100% compatible otherwise.
    • Users do not need to flash this new bootloader version.
November 9th, 2017 0.8.12 / 0.8.11 10601 Public beta release [9] Hotfix release:
  • Device Gain is again calculated correctly. It had been removed by mistake.
  • Torque command update rate has been increased to 2500 Hz. Beginning from early version 0.5.0, it was reduced to 1250 Hz, to overcome unrelated issue, which was then forgotten until now.
November 9th, 2017 0.8.11 / 0.8.11 10601 Public beta release [10] New features:
  • These DirectInput effects and features have been implemented that were not previously implemented: Friction, Damping, Device Gain
    • Sliders to set general strength multiplier for friction and damper have been added into the UI
    • Device gain is being set when a game starts, so no slider for it is required in the UI.
    • Previously exported simucubeprofiles.ini file with these settings missing will load. The DirectInput Friction and Damping gains will be set at 50% for those profiles.
    • Saved setting on SimuCUBE flash memory have 0% setting for these. User must change them manually to some sensible value for each profile.
    • Games tested: Assetto Corsa, Dirt Rally, Automobilista (Pure FFB no effects is supported; effects -settings might not work correctly)
  • New Tabbed UI with much more refined looks
    • Tabs!
    • Effect types are shown in the UI, with bolded font for those effects that game is changing actively
    • Button has been added to clear effect memory and reset Device Gain. This is useful when game has crashed and left effects running.
    • Motor fault reason codes are being read and shown directly in the user interface. However, faults are cleared if they ever happen, so the indicator will disappear too soon. Usefulness of this feature is going to be improved in the next release.
    • Confirmation dialog for profile deletion has been added.
    • Lots of other small tidy-ups and fixes

Bug fixes:

  • Importing analog axis settings from the .ini file didn't load invert axis -settings correctly.

Known issues:

  • Estimated torque output calculation is stll likely wrong.
  • When using high forces and having the reconstruction filter at high value, the wheel might go numb and give a feeling of saturated forces. This is being investigated.
October 25th, 2017 0.8.4 / 0.8.4 10601 Public beta release [11] Changes and fixes:
  • Strength setting of the default profile was not applied at startup.
  • Read-only safe profile was applied inconsistently when running the Motor Configuration Wizard
  • SimuCUBE Hardware Revision information is now shown in the configuration tool
  • Removed unnecessary code and USB debug counter
  • Clicking Toggle IONI USB Configuration -button does not reset all motor faults, only the Simplemotion faults.

Known issues:

  • Estimated torque output calculation is stll likely wrong.
  • When using high forces and having the reconstruction filter at high value, the wheel might go numb and give a feeling of saturated forces. This is being investigated.
October 13th, 2017 0.8.3 / 0.8.3 10601 Public beta release [12] Changes and fixes:
  • Serious USB issue is fixed. Replies to USB control requests weren't getting sent to PC if SimuCUBE was already in the process of sending a normal HID report. This caused crashes in games.

Known issues:

  • Estimated torque output calculation is most likely wrong.
  • When using high forces and having the reconstruction filter at high value, the wheel might go numb and give a feeling of saturated forces. This is being investigated.
  • Some filter settings do not seem get applied with some user actions.
October 8th, 2017 0.8.2 / 0.8.2 10601 Public beta release [13] Notes:
  • Unfortunately, this version will clear all profile settings. Please take note of all your settings.
    • Note: Updates do not have effect on the parameters that are stored on IONI drive, so no new drc configuration files should be needed.
  • Precautions have been made to minimize this being required in the future.

New features:

  • Profiles can be saved into simucubeprofiles.ini file and imported from that file. Imported profiles are added, they will not overwrite user's profiles. Feature has an indicator for successful loading and saving.
  • Force scaling (in percentage) is done by setting MMC on IONI drive instead of scaling the torque that goes to drive. This increases the fidelity. NOTE: To change maximum MMC, upload a new DRC file with new setting using the motor configuration wizard, or use Granity to set new MMC.
  • Motor configuration wizard has a field for Motor Torque Constant. If it is set, configuration tool assumes 48 V power supply, reads motor resistance from current IONI configuration, and shows maximum torque value in the UI.

Changes and fixes:

  • Analog button debounce time has been increased from 10 ms to 20 ms. Setting for this might be added in the future.
  • Analog axis settings import/export now has an indicator for success/failure.
  • Analog axis averaging has been changed from average of last 32 values to average of last 32 values but disregarding 4 highest and 4 lowest values to improve signal quality.
  • Steering centering offset value was not saved correctly if the index point was sufficiently off-center (more than 65535 counts offset). This was evident on high-resolution encoders.
  • Maximum number of profiles has been reduced to 500.
  • Game-induced torque could easily overcome the bumbstop effect's torque, making the wheel spin uncontrollably. This has been fixed.
  • Damping filter was being sent to IONI with setting of 0.0 % if game set a damping effect. This was unintended, and has been changed for this version. On-the-fly changing damping, inertia and friction effects are not being done currently.
  • Improved resiliency against non-communicating IONI drives. This could happen if, for whatever reason, the SMO Bus Address Offset was other than 0, and the drive was still functional when using MMos firmware.
  • Improved/fixed some subdialogs to work better with high-DPI displays or when display has a custom scaling factor.
  • Enabling IONI USB communication mode does not cause a SimpleMotion error / Fault in the IONI drive anymore.

Known issues:

  • USB-related game crash issues
  • Estimated torque output calculation is most likely wrong.
September 19th, 2017 0.7.1 / 0.7.5 10601 Public beta release [14] Changes and fixes:
  • Some profile settings were being set to default when running the firmware update wizard
  • Ioni filter parameters are no longer being read to the active profile, overwriting the profile values, when running the motor configuration wizard
  • Changed TBW to 1000Hz as default for all new profiles and also for the default read-only profile.
  • Minor text changes in firmware update wizard
0.7.0 / 0.7.3 10601 Closed beta release not public New features:
  • Profile can be copied

Bug fixes:

  • Profile name did not get applied and saved if only profile name was edited
  • Configuration tool crashed if user canceled or finished the Firmware Update wizard
0.7.0 10601 Closed beta release not public New features:
  • Working digital button inputs
  • Profile management
  • Analog settings .ini-file import/export

Bug fixes:

  • Settings change by some amount at saving or load from IONI drive.
<0.7.0 Closed beta release(s) not public No change history for these early firmware releases.

IONI firmware

As SimuCUBE requires an IONI Servo & Stepper Drive, it is recommended to keep the on-board IONI firmware at latest release. SimuCUBE firmware has the IONI firmware bundled in, and the IONI firmware will be automatically updated if the current IONI firmware on the drive is too old. For manual firmware updates, see IONI firmware releases and Granity user guide/Uploading a firmware.

Motor configuration files for Granity (.drc)

See List of motors for SimuCUBE for sample configuration settings & files for various SimuCUBE compatible motors.