Reference Design Content

cancel
Showing results for 
Search instead for 
Did you mean: 

Simple Messaging (STM) Communication Library

STM is an application-layer communication protocol, built on top of a transport-layer protocol (e.g. TCP), to simplify the process of sending and receiving messages and data packets between different systems in an application. The list of messages and data items used in a communication link are defined as part of the application and exchanged between the two end points of the communication link when the connection is established.

 

Description

 

Simple Messaging was originally called Simple TCP Messaging, therefore the STM moniker, however over time support for UDP as well as serial communication was added to the library.

 

The STM code contains a set of simple VIs which implement the API and currently VIs are provided for TCP, UDP and RS-232 as the transport layer. Due to its simple nature it can be easily implemented on other transport layers. For example if you want to send various messages or data items between a LabVIEW FPGA target and its host, you can implement STM using the DMA transfer as the transport layer.

 

Installation

 

The latest version of STM, as well as some previous versions, is available in VI Package Manager and can be installed from there. Some older versions of sTM are available as attachments here,

 

A detailed description of the STM protocol is available in the NI Simple Messaging Library (STM) for LabVIEW tutorial.

 

Questions, feedback, and suggestions for STM should posted in the STM Discussion Forum.

 

Open Source

 

The Simple Messaging Library is part of our open source effort for reference designs and the STM source code has been moved to GitHub.

 

Source code: https://github.com/NISystemsEngineering/STMMessaging

Issues Tracker: https://github.com/NISystemsEngineering/STMMessaging/issues

 

We welcome developers to participate and contribute to the open source development of STM, but submitting issues, implementing issues, and submitting pull requests to the STM source code trunk .

authored by
Christian L, CLA
Principal Systems Engineer - Partner and Ecosystem Development - National Instruments
Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system, or for
use in hazardous environments. You assume all risks for use of the Code, and use of the Code is subject to the Sample Code License.

Contributors