Skip to content

@bernhard-thiele bernhard-thiele released this Jun 8, 2020

Migrated from Modelica Standard Library 3 (MSL 3) to MSL 4 -> Non-backwards compatible release!

However, apart from the MSL 4 dependency this release is compatible to previous releases and no update of user libraries is necessary apart from migrating to MSL 4.

Enhancements:

  • Added all license files to better assist tool vendors in distribution of source or binary files (#313 ).
  • Updated 3rd-party library paho.mqtt.c to v1.3.4 ( #320).

Bug fixes:

  • Fixed small issues in the SBHS Board example (#318).
Assets 4

@bernhard-thiele bernhard-thiele released this Mar 26, 2020

Updated Linux MQTT binary dependencies. The updated libraries are compiled with the -fPIC flag, which fixes a related FMU generation problem (#306).

Assets 4

@bernhard-thiele bernhard-thiele released this Feb 26, 2020

Fix declaration of MDD_spaceMouseGetData in external C code (#305)

Assets 4

@bernhard-thiele bernhard-thiele released this Jan 13, 2020

Enhancements:

  • TCP/IP server communication (#296). In addition to the existing TCP/IP client blocks (see #78) there are now also blocks for setting up a TCP/IP server. See examples Blocks.Examples.TestSerialPackager_TCPIPServer and Blocks.Examples.TestSerialPackager_TCPIPServerMultipleClients.
  • Enhanced real-time synchronization block (#290). Added an enhanced real-time synchronization block
    (Blocks.OperatingSystem.RealtimeSynchronize) and deprecated the existing block (Blocks.OperatingSystem.SynchronizeRealtime). The deprecated block is known to not working well with recent Dymola versions (e.g., Dymola 2020). The new RealtimeSynchronize block supports a sample-based real-time synchronization mode which is recommended for more deterministic, less solver sensitive behavior. See example Blocks.Examples.TestRealtimeSynchronize.
  • An utility block for debugging purposes which prints a message when triggered by an event (#289).
  • Updated 3rd-party library paho.mqtt.c to v1.3.1 (#293)

Bug fixes:

  • Fixed Spacemouse not working under Windows 10 bug (#289).
  • More similar behavior for getMACAddress() in Windows and Linux (#263).

Other (minor) fixes and improvements.

Assets 4

@bernhard-thiele bernhard-thiele released this Apr 5, 2019

Fix backwards compatibility (#284)

Assets 3

@bernhard-thiele bernhard-thiele released this Mar 28, 2019

Enhancements:

  • Uses latest version of Modelica Standard Library (v3.2.3).
  • Option for using blocking UDP receive calls (#275). On the function interface level an optional third argument in the UDPSocket constructor allows to create the external object without starting a dedicated receive thread (default: useRecvThread=true). On the block interface level (block UDPReceive) a new parameter useRecvThread (default: useRecvThread=true) allows to select the desired behavior. See example Blocks.Examples.TestSerialPackager_UDPWithoutReceiveThread.
  • Added parameter enable (default: enable=true) for conditionally enabling or disabling the real-time synchronization within the Blocks.OperatingSystem.SynchronizeRealtime block (#270).
  • Update OpenSSL to 1.0.2r (#280).

Bug fixes:

  • EmbeddedTargets.AVR: Only start the RT synch timer once (#274).
  • EmbeddedTargets.AVR: Fixed reading of digital pins (#266).
  • Fixed Cygwin build (#271).
  • Fixed scale factor calculation error in JoystickInput block (#272).
  • Fix missing byte copy of \0 in external C code function MDDEXT_SerialPackagerGetString() (#273).

Other (minor) fixes and improvements.

Assets 3

@bernhard-thiele bernhard-thiele released this Oct 6, 2018

Enhancements:

  • Support for MQTT (Message Queuing Telemetry Transport protocol) client communication (see #130, #256).
  • Utility function to retrieve MAC address (Utilities.Functions.getMACAddress, see #255).
  • Utility function to generate a UUID (Utilities.Functions.generateUUID(), see #244).
  • Number of received bytes in UDPReceive block is provided as output (see #236).
  • Scalable real-time synchronization (see #215).

Adaption of the new Modelica Association license for libraries: The 3-Clause BSD License (see #238, #264). The C-code parts of the library were already BSD 3-Clause licensed, but the Modelica code was licensed under the Modelica License 2. Since Modelica Association projects, most notably the Modelica Standard Library (MSL), changed from Modelica License 2 to the BSD 3-Clause license, the Modelica_DeviceDrivers library follows this development.

Other (minor) fixes and improvements.

Assets 4

@bernhard-thiele bernhard-thiele released this Sep 19, 2017

Fixed variable naming error in game controller code.

Assets 4

@bernhard-thiele bernhard-thiele released this May 12, 2017

  • Important: A bug fix in the shared memory implementation for Windows potentially affects applications that adapted the (wrong) buffer layout (see #138)!
  • Presentation of the library at the Modelica'2017 conference.
  • OpenModelica (v1.11.0 Beta 1 and later) is now the third tool known to (partially) support the library (e.g., UDP, TCP/IP, serial port, shared memory, and LCM communication).
  • Added support for sending and receiving of Lightweight Communications and Marshalling LCM datagrams (only the communication aspect of LCM is considered).
  • Added support for TCP/IP communication for Linux (was already available for Windows).
  • New top-level package EmbeddedTargets with a first prototypical support for the Atmel AVR family of microcontrollers (ATmega16 and ATmega328P (=Arduino Uno) are supported; currently only known to work with OpenModelica's ExperimentalEmbeddedC code generation, see documentation).
  • Bug fixes for the serial port support (#117, #118, #119, #127, #128).
  • Bug fix for the byte order swapping logic (endianness, #203).
  • Other (minor) fixes and improvements.
Assets 4

@bernhard-thiele bernhard-thiele released this Apr 12, 2016

Changelog

  • Uses latest version of Modelica Standard Library (v3.2.2)
  • Changed the license of the external C code and header files to Simplified BSD License (the Modelica package parts remain under Modelica License 2)
  • Impoved Modelica compatibility: Fixed the use of conditionally enabled variable procPrio outside of connect in Blocks.OperatingSystem.SynchronizeRealtime and ClockedBlocks.OperatingSystem.SynchronizeRealtime
  • Impoved Modelica compatibility: Fixed the invalid integer to enumeration type conversion in HardwareIO
  • Fully specified the initial conditions for example models
  • Simplified the linking with system libraries (MSVC only)
  • Improved and updated the documentation
  • Added continuous integration for the external C code (thanks to Travis CI)
Assets 4