ext: Platform Extension functions

Top  Previous  Next

 
The RTCU M2M Platform is designed to be as open, adaptable and programmable as possible. For most applications the power and flexibility offered with the RTCU IDE is sufficient to realize the most advanced M2M applications, but the need for a deeper customization may arise in certain specialized vertical applications.

 
Under the NX32L Architecture a mechanism to expand the platform on the Linux system level is offered named Platform Extensions.

With Platform Extensions it is possible to develop two types of extensions to complement the RTCU IDE application:

 

Program

A program is an application that operates autonomously in a process separate from the RTCU run-time process. Basically such a program has access to most resources and functionality offered by the Linux operating system.
Specialized applications needed to meet the requirement for advanced protocols, specialized gateways or simple optimized calculation services can be realized.
The recommended way to communicate with a program is to use standard TCP/IP sockets.
 

Module

Modules are extension libraries that are loaded by the RTCU runtime to natively expand the API with any new functionality that may not be part of the standard API as supplied by Logic IO.
A module follows a rigid and well documented structure as it needs to interface with the MODCALL C binding interface.

 

Tag

A tag is a set of strings, name and text, which holds extra information about a program or module extension.

For example, the version of the extension or a short description.

An extension can hold several tags.

 

Module licensing

Some extension modules may require that a license is present on the RTCU device before some or all of the features can be used.

A license is added to a RTCU device by applying a device specific license key. The license key must be acquired from the makers of the module.

For details about how to add support for licensing to an extension module, please see the RTCU Platform SDK.

 

 

All platform extensions must be installed on the device, before they can be used.

The platform extensions are installed as part of the project transfer, when included in the 'Platform Extension' part of the project view.

 

 

The following functions are available to control extension programs:


extProgramStart

Starts an external program.


extProgramSignal

Sends a signal to a running program.


extProgramStatus

Queries the status of a program.

 

The following functions are available to control extension modules:


extModuleLoad

Load an extension module.

 

The following functions are available to handle tags in extension files:


extTagEnumerate

Read the tag name.


extTagRead

Read the text of a tag

 

The following functions are available to handle license keys:


extLicenseApply

Apply a license key.


extLicenseCheck

Check if a license is present.


extLicenseRemove

Remove a license.

 

For detailed information how to develop Platform Extensions please refer to the dedicated RTCU Platform SDK.