Releases: modelica-3rdparty/Modelica_DeviceDrivers
Modelica_DeviceDrivers v2.1.1
Modelica_DeviceDrivers v2.1.0
Enhancements:
- Added parameter
useRecvThread
also for clocked UDPReceive variant (#342). - Added option for not unlinking shared memory partition at process termination (#339).
- Updated paho.mqtt.c to v1.3.10 (#355).
Bug fixes:
- Fixed
RealtimeSynchronize
block "clock_nanosleep" error on Linux (#357). - Fixed
MDD_TCPIPServer_Send(...)
return value, so that it works as described in the documentation "On success, return the number of bytes sent, 0 if operation would block, -1 on non-fatal error" (#323). - Serial port interface on Windows: Fixed spurious byte sent at the end of a simulation (#352).
Other (minor) fixes and improvements.
Modelica_DeviceDrivers v2.0.0
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).
Modelica_DeviceDrivers v1.8.2
Updated Linux MQTT binary dependencies. The updated libraries are compiled with the -fPIC
flag, which fixes a related FMU generation problem (#306).
Modelica_DeviceDrivers v1.8.1
Fix declaration of MDD_spaceMouseGetData
in external C code (#305)
Modelica_DeviceDrivers v1.8.0
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
andBlocks.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 newRealtimeSynchronize
block supports a sample-based real-time synchronization mode which is recommended for more deterministic, less solver sensitive behavior. See exampleBlocks.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.
Modelica_DeviceDrivers v1.7.1
Fix backwards compatibility (#284)
Modelica_DeviceDrivers v1.7.0
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 (blockUDPReceive
) a new parameteruseRecvThread
(default:useRecvThread=true
) allows to select the desired behavior. See exampleBlocks.Examples.TestSerialPackager_UDPWithoutReceiveThread
. - Added parameter
enable
(default:enable=true
) for conditionally enabling or disabling the real-time synchronization within theBlocks.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 functionMDDEXT_SerialPackagerGetString()
(#273).
Other (minor) fixes and improvements.
Modelica_DeviceDrivers v1.6.0
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.
Modelica_DeviceDrivers v1.5.1
Fixed variable naming error in game controller code.