Version v6.5.3189
=================
Released on 2024-04-04
Libraries & Blocks
- Basic
- TaskLabel block added (Matlab/Simulink only)
- General
- Constant & uConstant simulation files for Matlab/Simulink updated
- Gain & uGain simulation files for Matlab/Simulink updated
- LookupTable1D, LookupTable2D & LookupTable3D simulation files for Matlab/Simulink updated
- LoopBreaker simulation files for Matlab/Simulink updated
- Selector simulation files for Matlab/Simulink updated
- Missing connections in Simulink library inserted (TypeConv, uSaveSignal)
- Math
- Acos block added
- Asin block added
- Control
- P, PLimit added
- I, ILimit adjusted
- D, DLimit added
- PI, PILimit adjusted
- PID, PIDLimit adjusted
- Typecast in FiP8 & FiP16 implementations of uI block corrected
- Delay block adjusted (direct feed throug flag set)
- Revert function for TF2 block implemented
- Filter
- Fix of gain correction bug in floating point implemention of AdaptiveNotch block
- StateControl
- TFlipFlop block added
- DFlipFlop block added
- RSFlipFlop block enhanced with /Q output
- MotorControl
- Overflow bug in compare statement in FiP implementation of JerkLimiter block fixed
- Calculation of CPU compensation in conversion function of CurrentControl block fixed
- MotorSimulation
- VSI enhanced with modulation limit/scaling
- Nonlinear power supply added
- MotorSensorless
- HFInjectionSquare updated and renamed to PINAC
- HFInjectionSine updated renamed to SINAC
- HFInjSquare added, updated and renamed to PINEC
- TrackingLoop added
- Predefined macro INV_SQRT_THREE to TWO_OVER_SQRT_THREE in FASE_Float32 changed
- Angle wrapping in floating point implementations of InitPosDetect block added
- Update of pre-built libraries:
- Update from compiler version v2.1 to 4.21 for PIC32MX170F256 CUnit-Test programs
- STM libs for Keil removed
- STM libs for STMCubeIDE added
- XMC libs for DAVE added
- Additional Microchip libs added
- CUnit-Test targets added:
- STM32F072RB
- STM32G474RE
- TMS320F379D
- XMC4800-F144K2048
- CUnit-Test targets removed:
- STM32F407ZG
- TMS320F2808
Features
- Execution Time Estimator (ETE) added
- Implementation of color coding of Matlab blocks according to its sample time
- Grouping of Subsystems into tasks implemented (Matlab/Simulink only)
- CLA code generation implemented (TI C2000 targets and Matlab/Simulink only)
Core
- Matlab scripts createActivationScript.m, setup.m, AnalyzeModel.m, getPrevX2CBlocks.m, createX2CSimulinkBlock.m updated
- JavaScript support updated: added Nashorn JS engine JAR files
- Fix of ordering issue of code generator
- Update of CFSO code generator
- Update of error messages in Matlab and Scilab
- Parameter editor used in Scilab/Xcos updated
- Pre-liminary support for for Scilab 2023 and 2024 implemented
- Communicator startup options enhanced
Demos
- Blinky Atmel ATSAM3X8E-ArduinoDue demo updated: Link to LoopBreaker fixed
- Blinky demo for STM32 STM32F051R8TX Discovery board ported from uVision to STM32CubeIDE
- Blinky demo for STM32 Nucleo-F072RB board ported from uVision to STM32CubeIDE
- Blinky demo for STM32 Nucleo-G474RE board added
- Update of TM320F28096 blinky demo with CPU load measurement
- Fix of ClrWdt problem with new compiler/MPLAB X inMicrochip dsPIC33F Blinky demo
- Update of all Blinky demos
- Delay block replaced with LoopBreaker block
- Init of integrator updated
Documentation
- Update of ProjectDocu generation
- Update of BlockDocu generation
- X2C documentation updated:
- Introduction
- Code conventions
- Angle signal description
- Description of uVision related items removed
- Description of STM32CubeIDE added
- BlockGeneration How-To
Hardware Templates
- Adding of TMS320F2800137_BOOSTXL_DRV8305 template
- Adding of TMS320F28379D_BOOSTXL_DRV8305 template
- Adding of STM32G474RE_NUCLEO_IHM07M1 template
- Update of dsPIC33CK256MP_MCLV2 template
- Update of TM4C123GXL_BOOSTXL_DRV8305 template
- Rotor alignment at startup implemented by X2C blocks only -> no need for reset of encoder in frame program
- Nonlinear power supply model
- Encoder macro made available for SyMSpace
- Implementation of Inter-Processor-Communication (IPC)
- Update of TMS320F28379D_BOOSTXL_DRV8305 template
- Update of SKAI_40_A2_MD15 template to current X2C version
- Update of SKAI_60_A2_MD10 template to prevent warnings by compiler
- Absolute links changed to relative links in Wolfspeed CRD300DA12E-XM3 hardware template
- Update of LCM-ECU-3HB-20A-48V template: Switched to floating point implementation
- Update of LCM-FU-3HB-2A-230V template: Switched to floating point implementation
- Update of LCM-ECU-10HB-10A template
- Update of LCM-ECU-4HB-100A-75V template
- Updated EELoadSave block to use Int8 implementation instead of Float32 to avoid possible float comparison issues updated to current X2C version
Bootloader
- Added TMS320F280039 bootloader
- Added TMS320F280037 bootloader
- Added TMS320F2800137 bootloader
- Update CAN Bootloader STM32F407ZE and STM32F407ZG
- Added CAN bootloader for TMS320F280049
- Update of STM32F407ZG bootloader baudrate: 500k and 1M added
- Update of STM32F407ZE bootloader baudrate: 500k and 1M added
Version v6.4.2560
==============
Libraries & Blocks
* GENERAL
** LookupTable3D block added
** Code safety issue in Selector block fixed
* MATH
** Float implementation for Sign block implemented
** Float implementation for Exp block implemented
* CONTROL
** Shift factor bugfix in floating point conversion function of TF1 block
** Loadable type bugfix of static variables of DT1 and PT1 blocks
* FILTER
** Bilin block added
** Biquad block added
** AdaptiveNotch block added
** IIR block added
** LowpassBiQ block added
** HighpassBiQ block added
** BandpassBiQ block added
** BandstopBiQ block added
** ACDC block updated (FiP8 removed)
** FundFreq block updated (FiP8 removed, bug fixes)
Core
* Scilab 6 support added
* Filter library added
* Block Generator GUI updated
* Block order algorithm & code generation updated for increased performance and less disk I/O
* CoT Model API updated to provide access to the Mask Parameter count
* Block test structure & procedure updated
* Unused code in glue code removed when CoT feature is not used
* Scilab startup procedure optimized
* Scilab startup procedure updated to display X2C version info
* Scilab JavaSci advanced mode disabled for better stability
* X2C project initialization procedure in Scilab updated to use central script for common functions
* log4j updated to latest Java 6 version v2.3.2
* CoT feature and Model API issues fixed
* Inport Block test issue fixed
* Block license management issue fixed
* Array handling issue for script conversion types fixed
* Time dependend Blocks not behaving correctly in Scilab simulation fixed
* Scilab setup issue fixed
* STM32 Cortex M3 C libraries added
* X2C tools entries added in Scilab/Xcos’ Tool menu
* Loading of libraries needed for simulation in Xcos revised
* Parameter indexing in Scilab glue code generation revised
* Clean up of Scilab workspace after startup
* RAM array start address fix for Scilab/Xcos simulation
* Scilab scripts clean up:
** Removal of “funcprot(0);” directive
** Removal of “fs = filesep();” directive
* Scilab scripting updates:
** Generation of help revised: the create help command is executed twice during the setup to have the correct palette icons in the help
** Loading of sci functions optimized
** Script to get name of currently running file added
Communication
* Serial driver for TMS320F28004x devices added
* VCI-CAN driver updated to support IXXAT USB-to-CAN V2 device
* VCI-CAN driver updated for better performance and stability
* VCI-CAN driver slow read performance fixed
* Unsupported target device not detected correctly in LNet fixed
* LNet ‘Size too large’ not correctly handled fixed
* LNet disconnection not detected during data transfer not handled correctly fixed
Communicator
* PCAN bus type and channel number selection added
* CANopen over PCAN interface added
Scope
* Channel visible setting changed to enabled by default
* Value scaling enable element added
* Integer mode added for channels and trigger
* Plot colors updated by better distinguishable ones
* Loading an invalid X2C Model or an invalid settings file not handled correctly fixed
* Channel switch from IO Block to Control Block type not working fixed
Targets
* TMS320F280049 added
* TMS320G280041 added
* TMS320F28388D added
* TMS320F28386D added
* STM32G0B1RB added
Demos
* X2C project initialization scripts updated
Documentation
* Referencing of X2C blocks in documentation fixed
* Mask parameter documentation revised:
** Display of static ID
** List of blocks with static IDs sorted by static ID
* Generation of HTML block documentation improved (scaled images, support of captions in figures)
* Block generation help updated
* Jar file generation description added in block generation section of documentation
* Bugfix of problem with special characters in block name when creating mask parameter documentation
* Missing escape character added to fix image settings
* HowTo updated
X2C Installer
* Added Filter library to X2C Free installer
* Update to Scilab 6.1.1
* Update to Code Composer Studio 11.1
* Update to MPLAB X 6.00
* Update of Microchip’s MCHP library
* Update of Microchip’s demo applications
* Microchip Harmony setup handling updated
Version v6.3.2018
============
Libraries & Blocks
* GENERAL
** Constant block enhanced with integer implementations
** uConstant block enhanced with integer implementations
** Sin2Limiter block enhanced with Init and Enable input
** LookupTable1D block revised
** LookupTable2D block revised
** Bug in floating point implementations of uConstant block fixed (missing action in save-function)
* BASIC
** Bugfix of loading Basic library twice in Scilab
** Creation of Basic library documentation implemented
Demos
* Sweepy demo for Microchip’s MCLV-2 added
* Update of Tiva TM4C123GH6 Blinky demo
Core
* Support for clock Goto/From blocks in Xcos added
* CUnit-test result location moved
* Update of Inno Setup installer script
* Bugfix of Scilab simulation problem with blocks with parameter arrays
* Bugfix in Scilab library builder script (problem with mfprintf of C-function names)
* Bugfix of too long strings in Scilab library builder
* Update of project documentation error handling
* Scilab transformation window messages and behavior revised
* Automatic opening of project documentation after creation implemented
* generalDoc.sty bugfix when generating documentation
* JRE detection procedure in Scilab environment updated
* Eclipse project writer, which is provided for user specific Java Conversion functions, updated
** Compiler compliance
** Default JRE
* Scripting language-based conversion updated
** output names of unassigned variables
** correct boolean and numeric data type value handling
* RMI communication functions updated
* LNet Firmware Download procedure updated for better Timeout Handling
* Communication interfaces updated to get connection state
* PCAN communication driver slow performance fixed
Communicator
* Settings window layout changed to tabs for each category
Communication
* updated PCAN-USB and Serial interface driver
* fixed Serial interface timeout problem
Targets
* Support for STM32F103RB, STM32F446VE, STM32F446RE added
* Support for TMS320F28379D added
Externals
* Replaced Serial communication driver by jSerialComm (https://fazecast.github.io/jSerialComm/)
* Updated IXXAT VCI Java API for VCI V4 compatibility
* Apache Log4j updated to version 2.3
* Cloning and Objenesis removed because not used anymore
* Support for ojdkbuild Java RE distribution verified
Version v6.2.1835
============
Libraries & Blocks
* GENERAL
** Constant block enhanced with integer implementations
** uConstant block enhanced with integer implementations
** Sin2Limiter block enhanced with Init and Enable input
** LookupTable1D block revised
** LookupTable2D block revised
** Bug in floating point implementations of uConstant block fixed (missing action in save-function)
* BASIC
** Bugfix of loading Basic library twice in Scilab
** Creation of Basic library documentation implemented
Demos
* Sweepy demo for Microchip’s MCLV-2 added
* Update of Tiva TM4C123GH6 Blinky demo
Core
* Support for clock Goto/From blocks in Xcos added
* CUnit-test result location moved
* Update of Inno Setup installer script
* Bugfix of Scilab simulation problem with blocks with parameter arrays
* Bugfix in Scilab library builder script (problem with mfprintf of C-function names)
* Bugfix of too long strings in Scilab library builder
* Update of project documentation error handling
* Scilab transformation window messages and behavior revised
* Automatic opening of project documentation after creation implemented
* generalDoc.sty bugfix when generating documentation
* JRE detection procedure in Scilab environment updated
* Eclipse project writer, which is provided for user specific Java Conversion functions, updated
** Compiler compliance
** Default JRE
* Scripting language-based conversion updated
** output names of unassigned variables
** correct boolean and numeric data type value handling
* RMI communication functions updated
* LNet Firmware Download procedure updated for better Timeout Handling
* Communication interfaces updated to get connection state
* PCAN communication driver slow performance fixed
Communicator
* Settings window layout changed to tabs for each category
Communication
* updated PCAN-USB and Serial interface driver
* fixed Serial interface timeout problem
Targets
* Support for STM32F103RB, STM32F446VE, STM32F446RE added
* Support for TMS320F28379D added
Externals
* Replaced Serial communication driver by jSerialComm (https://fazecast.github.io/jSerialComm/)
* Updated IXXAT VCI Java API for VCI V4 compatibility
* Apache Log4j updated to version 2.3
* Cloning and Objenesis removed because not used anymore
* Support for ojdkbuild Java RE distribution verified
Version v6.1.1632
============
Libraries & Blocks
* GENERAL
** Boolean display bugfix of Real2Int, Int2Real, and TypeConv block
Demos
* LEDx copy/paste bugfix in BeagleBoneBlack Sweepy demo application
Core
* Update of activation scripts
* updated code writer to include edition information
Communicator
* updated GUI threading for better responsiveness
* fixed bug which sometimes caused a disabled Scope icon
* removed deprecated GUI elements in Model Tab and Settings dialog
* added software information dialog containing
** version & edition
** licence terms and conditions
** links to X2C website & support e-mail address
* fixed bug in startup auto-connect procedure
Communication
* updated PCAN-USB and Serial interface driver
* fixed Serial interface timeout problem
Scilab
* fixed bug when using duplicate Block labels in different super blocks
* fixed RMI connection issues (Connection refused)
* fixed bug which sometimes opened the Communicator twice
* fixed logging bug
Targets
* added Texas Instruments TM4C1294NC support
* added Infineon XMC4400-F100K512, XMC4500-F100K1024 support
Version v6.0.1503
Libraries & Blocks
* BASIC
** Interact block added
* GENERAL
** Conversion-on-Target (CoT) functions implemented
** Enable input data type changed from int8 to bool
** Blocks LookupTable1D and LookupTable2D added
** Runtime optimization of ManualSwitch block
** sin() with sinf() replaced in float32 implementation of SinGen and Sin3Gen
** Removal of FiP8 implementations:
MinMaxPeriodic, uRateLimiter, RateLimter,Sin2Limiter, Limitation, Minimum, Maximum, Saturation, SinGen, Sin3Gen
** FiP implementation of logical blocks removed and replaced with Bool implementation
* MATH
** Conversion-on-Target (CoT) functions implemented
** Symmetric input range check for blocks Atan2, Mult and Negation implemented
** Wrapping of angular signals in float implementation adjusted
** Floating point calculations updated
* CONTROL
** Conversion-on-Target (CoT) functions implemented
** Enable input data type changed from int8 to bool
** Boolean implementation for blocks LoopBreaker and Delay added.
Demos
* Blinky demo for Silicon Labs Pearl Gecko starter kit added
Core
* Support for boolean datatypes added
* Event (error) state and CPU load information in status bar of Communicator added.
* Update of X2C logo
* Version numbering changed
* Possibility to simulate blocks with multiple arrays in Scilab implemented
* Bug concerning flash tables in parameter editor’s controller parameter pane fixed
* Python and Scilab scripts for controlling X2C targets added
* Block documentation streamlined (with option to create docu with full info)
* Methods to upload Model In- & Outport values from target added
* Tests updated to use defined Parameter ID instead of pointers and RAM block commands for more reliable and platform independent tests
Targets
* Infineon XMC4700 & XMC4800 support added
* ST STM32F302RD, STM32F302R8 support added
* Microchip dsPIC33EP512GM604 support added
Version v1116
Libraries & Blocks
* Floating point bugfix of ManualSwitch block
Targets
* Microchip dsPIC33EP128MC202, dsPIC33EP128GM604 added
* STMicroelectronics STM32F303RB added
* Microchip dsPIC Implementations updated
Communicator
* Conversion error handling updated
* Startup bug when using Version converter fixed
* Communication errors output updated
* User Data representation & handling updated
Block Generator
* Startup bug when using Version Converter fixed
* Documentation updated
Demos
* Blinky demo project for STM32F072RB Nucleo added
* BeagleBone Black Blinky demo updated and bug-fixed
* BeagleBone Black Sweepy demo added
Scope
* Scilab Script export added
Core
* Double/single quote bugfix in createLibraryStarter script
* CUnit test template creation for external blocks implemented
* HTML block documentation bugs fixed (ligature/arial problem and bug with path of external blocks)
* LNet Service management updated
* C checksum procedure updated
* Support for address-modified HEX files added
* DTR (Data Terminal Ready) signal added to Serial Communication
* Possible buffer overflow in LNet frame-in-frame fixed
* LNet error handling updated
* Internal Block- & Implementation Names updated
* Block XML format updated
* Too small LNet header handling bug fixed
* Scilab Model handling updated
* Intel HEX address conflict detection added
* Scilab Setup procedure updated
Version v1028
Libraries & Blocks
* Float implementations for Maximum and Minimum block added
* Float implementations for ManualSwitch block added
* Update of floating point implementations of Constant block
* Pre-compiled libraries: optimization level set to -O2 also for Microchip libraries
* CUnit tests for Microchip PIC32 and STM STM32F0 and STM32F4 added
* Library header file structure update
Targets
* Added MAP file support for TI CCS C2000 compiler version 6.4.x
* Added MAP file support for Microchip XC32 compiler
* Updated MAP file support for Microchip XC16 compiler
* Added MAP file support for Infineon DAVE IDE using ARM-GCC compiler version 4.9
* Microchip dsPIC33EP245MC502 target support added
* Microchip PIC32MX series support added
* Microchip PIC32MX170F256 target support added
* Infineon XMC4000 series support added
* Infineon XMC4800-F144K2048 target support added
* STM STM32F3 series support added
* STM STM32F303RE target support added
Demos
* Blinky Demo for MicrostickPlus updated
* Blinky Demo for Tiva updated
* BeagleBone Black Blinky Demo added
Communicator
* High-DPI display support added
* Log Window size and -font changed
* Added block data up- & download
* Added User Data elements
Scope
* High-DPI display support added
* Channel configuration updated for less vertical space requirement
* Configuration Save- & Load bug fixed
* Last window size- & position is automatically saved and loaded with off-screen restoration
* Custom Scope Settings Save & Load added
* Scope trigger support for data types uint64, int64, float32, float64 added
* Fixed Scope trigger inaccuracy
* Fixed Scope trigger display bugs
BlockGenerator
* Improved response-ability in library selection dialog
* Fixed resize problems leading to incorrect GUI element positioning
Core
* Direct feedthrough simulation bug in Scilab fixed
* Namespace bug in Scilab interface function fixed
* Fix of transformation problem of models with Superblocks and Function-blocks
* Bugfix of ligature problem with htlatex
* Generation of project specific library documentation implemented
* Bugfix of 1/sqrt(3) computation problem for floating point implementations
* Added IEC data types to Controller data types
* Updated code generation for easier IDE integration and better compiler compatibility
* Map-File Data Utils now support variable- and code symbols separately
Version v900
Libraries & Blocks
* Sin2Limiter: resolution of internal variables for FiP8 and FiP16 increased
* Sin2Limiter: abort of running limitation process disabled
* Sin2Limiter: floating point implementations added
* Delay functionality in Delay block implemented
* LoopBreaker block added to General library
* Pre-compiled libraries: optimization level set to -O2 (-O1 for Microchip libraries)
* Pre-built libraries for STM32F0 and STM32F4 added
* Pre-built libraries for dsPIC33E and dsPIC33F added
* Integration of __builtin-functions of XC16 compiler for FiP16 implementations
* Script to create block documentation added
* Error plots for Sin, Cos, Exp and Sqrt blocks in block documentation added
* Bugfix of zero output of Inport when simulating in Xcos
* Palette icon bugfix in Xcos starter file
* added C-libraries for Microchip PIC32MX & PIC32MZ targets
Targets
* TI TM4C series support added
* ST STM32F103ZC target support added
* added support for generic Microchip PIC32 targets
* added support for Microchip PIC32MZ2048EC target
* added support for generic X86 & X64 targets
* added support for KeControl target
* added support for Microchip PIC32 targets
* TI TMS32F2802x series support added
* added support for TI TMS320F28027 target
* added demo application for Arduino Due board
Demos
* Bugfix of baudrate problem on Microchip boards
* Blinky demo project for dsPIC33EP X2C Development Board added
* Doxygen support/comments added in Microchip demos
* Pre-built libraries included in Microchip demo projects
Communicator
* DSP update button added
* better handling of multiple Scope GUIs being opened from one Communicator instance
* Communicator now closes all linked Scope GUIs on exit
* added default baud rates for serial communication: 230400, 460800, 921600
* added common settings in Communicator replacing several configuration (set to inactive, tooltip shows where to find actual setting)
* added setup option to disable Communicator “Auto-Connect” on Startup
* fixed Communicator Scope toolbar button bug (sometimes disabled when it shouldn’t)
* added pre- & post code generation script support
* added ‘Download All Blocks’ to download all block data at once
Scope
* fixed graphic issue, where plot area is being resized to a very small height
* updated configuration file structure
* fixed bug when using Scope in non-paramater identifier mode
* updated save function for additional trigger configuration support
BlockGenerator
* Eclipse project files are now being written by BlockGenerator if it doesn’t exist
Core
* Space character in (home) path bug fixed
* Compilation of libraries under Linux implemented
* Script to start the BlockGenerator from within Scilab
* int8 and uint8 typedefs adapted for __GENERIC_TI_C28X__ devices
* Configuration of compiler in createLibraryBuilder.sci script adapted
* Keil uVision HowTo added in documentation
* Doxygen support for project docu added
* Version information in project documentation included
* Update of initProject.sce to enable simulation in Linux
* added service functions to avoid hard-coded names & directories
* updated log4j default configuration files to limit size and amount of generated log files
* added MAP file support for TI ARM compiler
* fixed missing Scope function call in CodeGenerator when using no control block or control blocks without updated functions only but using Scope
* added foward declarations in generated header file X2C.h
* fixed incorrect 64-bit memory alignment for several targets
* added Signal Code Writer which creates a file containing lists with internal X2C signals (In-, Outports & block outports)
* updated Scilab setup script output
* fixed LNet communication issue using multiple threads
* fixed several connection issues which may cause communication failure or VM crash
* updated Code Writer to always generate Flash- & RAM table C source files
* added version identifier to generated files
* fixed bug in CircularByteBuffer class which may lead to a buffer overflow
* fixed bug in Intel-HEX file reader when using ELA records
* updated code writer to add Doxgen comments
Version v671
Core
* bugfix in code generator which may lead to incorrect order of update functions
* fixed bug in Scilab which may lead to erroneous C-code when superblocks are being used
* support for Scilab version 5.5.1 (support for Scilab versions < 5.5.0 dropped)
* added Linux support
* added TCP/IP support (LNet over TCP/IP)
* updated documentation system
* block visualization updates (diagrams & block appearance)
* Scilab script updates for better stability and clearer error messages
* updated demo application diagrams
* updated Scilab installation process
* added pre-compiled libraries for Microchip(c) series
* updated third party serial interface (RXTXcomm) implementation to more actual version
Libraries & Blocks
* Sqrt: updated block image
* library General0 replaced by Basic library
* Inport and Outport blocks have been moved to General library
* MinMaxPeriodic block added to General library
Targets
* added support for HotInt (-> www.hotint.org) target (code generation & -compilation + target template)
* added support for STM32F0 targets
* added demo application for ST STM32F0DISCOVERY evaluation board
* added generic classes supporting ARMv6 & ARMv7 targets
Scope
* add channel label (name) to each channel
* address for source type ‘Address’ is now being entered in hexadecimal format
Known bugs:
* simulation in Xcos of blocks with Flash or RAM tables is not possible
* creation of application specific library docu is incomplete/not possible
* creation of multiple application specific blocks may lead to errors