For a better experience on dSPACE.com, enable JavaScript in your browser. Thank you!

Patch 2.3.1p3 for dSPACE Release 2.3.1


Patch 2.3.1p3 is intended for the following dSPACE products on dSPACE Release 2.3.1, Build-No. 2000040301, only. It corrects the following problems:

ControlDesk® Base Ver. 1.2.1 (Hardware Manager):

  • Loading applications to a single AlphaCombo with a connected DS230x board no longer fails.

ControlDesk Online Module Ver. 1.2.1:

  • Streaming data to an IDF file with a certain time span no longer produces a corrupted IDF file.

ControlDesk Automation Kit Ver. 1.2:

  • This patch fixes a bug in the internal error handling of Python scripts.

RTLib1003 Ver. 3.0.3:

  • DS4121 (serial ECU interface board) support.
  • Enhanced DS4120 (ECU interface board) support.
  • Additional functions for DS4201 board.
  • PWM signal generation on DS5101 boards will hang if a duty cycle outside the valid range 0.0 <= duty cycle <= 1.0 is specified with one of these functions: ds5101_pwm_update(), ds5101_pwm3_update(), and ds5101_pwm6_update().
  • PWM generation will stop completely if the PWM master clock signal (TMROUT5) of a DS4001 board is connected to more than one timer gate input (TMRGS1...TMRGS4) for PWM generation on multiple channels, and if the highest PWM frequency range (76.3Hz...833.33kHz) is selected.
  • When loading a slave application to a DS2201 slave DSP via the master RTP (slave application embedded in the master application via the COFF2C method), one of the following errors might occur:

 

* load_slave_2fd2df(): error resetting DS2210 Slave DSP! (-400)
* load_slave_2fd2df(): error starting firmware of DS2201 Slave DSP! (-400)
* load_slave_2fd2df(): error writing data word #414! (-400)

 

  • The problem has been observed with higher temperatures of the DS2201.
  • Using the function ds2002_block_in() might cause considerable crosstalk between channels.
  • After a system with a DS2210 HIL engine board is registered, which has dSPACE firmware, ControlDesk raises a message box that the board's firmware can't be updated automatically, because it has user firmware:
    "User firmware detected. Updating of the DS2210 CAN slave firmware aborted."
    Additionally, the user firmware dialog shows a wrong firmware version.

RTLib1005 Ver. 1.0.3:

  • Data copy in global memory fails. The last bytes of a misaligned memory block (only 32-bit accessible) in global memory are not copied properly. These copy operations are used by the master command server. Hence, the trailing 1, 2 or 3 bytes of 8-bit data written or read by ControlDesk (trace data, lookup tables, etc.) may not be copied properly.
  • DS4121 (serial ECU interface board) support.
  • Enhanced DS4120 (ECU interface board) support.
  • Additional functions for DS4201 board.
  • PHS bus interrupt control units might be set to an undefined state after system initialization. This problem occurs in DS1005 systems with at least one I/O board that uses PHS bus interrupts. For example, the end-of-conversion flag of a DS2002 might not work correctly after initializing DS4302 CAN interrupts. In this case the values read from the ADCs are incorrect.
  • In rare cases the synchronous time base in multiprocessor systems is not synchronized correctly, which leads to incorrect execution time measurements (spikes).
  • The macro PHS_SYNC_TIMER_SET doesn't set the trigger source for the SYNCIN line properly.
  • PWM signal generation on DS5101 boards will hang if a duty cycle outside the valid range 0.0 <= duty cycle <= 1.0 is specified with one of these functions: ds5101_pwm_update(), ds5101_pwm3_update(), and ds5101_pwm6_update().
  • PWM generation will stop completely if the PWM master clock signal (TMROUT5) of a DS4001 board is connected to more than one timer gate input (TMRGS1...TMRGS4) for PWM generation on multiple channels, and if the highest PWM frequency range (76.3Hz...833.33kHz) is selected.
  • When loading a slave application to a DS2201 slave DSP via the master RTP (slave application embedded in the master application via the COFF2C method), one of the following errors might occur:

 

* load_slave_2fd2df(): error resetting DS2210 Slave DSP! (-400)
* load_slave_2fd2df(): error starting firmware of DS2201Slave DSP! (-400)
* load_slave_2fd2df(): error writing data word #414! (-400)

 

  • The problem has been observed with higher temperatures of the DS2201.
  • Using the function ds2002_block_in() might cause considerable crosstalk between channels.
  • The handling of arithmetical exceptions does not work in interrupt service routines.
  • After a system is registered with a DS2210 HIL engine board which has dSPACE firmware, ControlDesk raises a message box that the firmware of the board can't be updated automatically, because the board has user firmware:
    "User firmware detected. Updating of the DS2210 CAN slave firmware aborted."
    Additionally, the user firmware dialog shows a wrong firmware version.

RTKernel Ver. 1.5.1:

  • See RTLib1005 Ver. 1.0.3 above (PHS bus interrupt control units).

RTI1003 Ver. 3.5.1:

  • DS2210 IGN/INJ
    If the user sets the start positions at 360° and the end positions at -360° and one of the TDC angles lays at 360°, the position of the affected event window is not set correctly.
  • DS2210 APU interrupt does not work with a board number greater than 1.
  • DS2210 AUXCAP
    If the user sets the start and end positions at 0°, the position of the event window is not set correctly.
  • If fewer than six cylinders are selected for the DS2210 Angular Processing Injection Block (DS2210APU_INJ) or the DS2210 Angular Processing Ignition Block (DS2210APU_IGN), the code generation aborts with an error.
  • The termination and initialization values of the DS4001OUT_Bx_Gx, DS4002OUT, DS4002OUT_SINGLE_BIT, DS4003OUT_Bx_Px_Gx and DS4003OUT8_Bx_Px_Gx blocks are not set correctly.
  • DS4002 interrupts do not work on DS1003 systems.
  • The RS485 mode of the DS4201S does not work for byte-wise transmission.
    NOTE: This bugfix is only for byte-wise transmission. Word-wise transmission is not supported.
  • PWM signal generation on DS5101 boards will hang if a duty cycle outside the valid range 0.0 <= duty cycle <= 1.0 is specified with one of these RTI blocks: DS5101PWM1_Bx_BLx, DS5101PWM3_Bx_BLx, and DS5101PWM6_Bx_BLx.

RTI1005 Ver. 3.5.1:

  • DS2210 IGN/INJ
    If the user sets the start positions at 360° and the end positions at -360° and one of the TDC angles lays at 360°, the position of the affected event window is not set correctly.
  • DS2210 APU interrupt does not work with a board number greater than 1.
  • DS2210 AUXCAP
    If the user sets the start and end positions at 0°, the position of the event window is not set correctly.
  • If fewer than six cylinders for the DS2210 Angular Processing Injection Block (DS2210APU_INJ) or the DS2210 Angular Processing Ignition Block (DS2210APU_IGN), the code generation aborts with an error.
  • Building the RTI demo models "DS3001_1, _2, DS3002_1, _2" under RTI1005 leads to an RTI build error.
  • DS4002 interrupts do not work on DS1005 systems.
  • The DS4201S interrupt block does not work.
  • The RS485 mode of the DS4201S does not work for byte-wise transmission.
    NOTE: This bugfix is only for byte-wise transmission. Word-wise transmission is not supported.
  • PWM signal generation on DS5101 boards will hang if a duty cycle outside the valid range 0.0 <= duty cycle <= 1.0 is specified with one of these RTI blocks: DS5101PWM1_Bx_BLx, DS5101PWM3_Bx_BLx, and DS5101PWM6_Bx_BLx.

RTI-MP Ver. 3.5.1:

  • DS1005-MP systems
    If an interprocessor interrupt is send to a CPU that has no direct gigalink connection to the source CPU, it has to be dispatched by an 'auxiliary' CPU. If this auxiliary CPU is not specified in any IPI block in the MP model, the dispatch fails and the interrupt is not transmitted to the destination CPU. As a result, the corresponding triggered subsystem will not be executed.
  • If the animation is started in ControlDesk for a program with 'initial simulation state' = STOP, an error will occur. The following message is given in the dspace.log file: PPCTrace: Could not activate the service code on the target hardware. The service function is not called by the real-time application.

FFTACC Blockset Ver. 2.3:

  • In some cases, using FFT blocks (RFFT, RIFFT, CFFT, CIFFT) of the FFT Accelerator resulted in a MATLAB segmentation fault when starting the build process or when stopping an offline simulation. The problem occurred only if there were at least 3 FFT blocks with different input widths in the model.

If you use one or more of these products from CD 2.3.1, it is recommended that you install the patch 2.3.1p3. Please remember that you have to reinstall the patch after reinstalling dSPACE software.

NOTE: Do not use this patch for other Releases than stated in the header. If in doubt, make sure that the Build-No. given matches your CD Build-No.
Preparing the Patch 2.3.1p3
Download Patch 2.3.1p3 (2.2 MB) and save it to your hard disk.
Installing the Patch
Before you can install the patch you must install the dSPACE software you want to patch and reboot your system. You also need to close MATLAB® and all other dSPACE software before invoking the patch.
Invoke 231p3.exe. The patch will now be installed.
Reboot the system.
The software patch also generates an entry in the 'dSPACE.vs' file for each product being patched, which can be accessed via the Show Versions command.
Furthermore, the file 'p231p3.dbg' will be generated in the config directory.

Download
Installation Notes (11KB)
231p3.exe (2156KB)