Lonworks solutions for OEM and Integrators


You are looking for a flexible and powerful .NET API to build Lonworks interactive services ?

Check out our software Multilon2 and its API, they offer all you need to

  • Access Lonworks devices
  • Perform network management tasks
  • Create High performance multi-threaded applications
  • Use state of the art technologies such as C#, VB.NET
  • Support multiple platforms such as Windows and Linux

Multilon is a master configuration tool on the Lonworks network, meaning it will assign and commission the other Lonworks nodes. If you are already using another configuration tool such as LNS, you may wish to consider our LSK (Lonworks Software Kit) library in place of Multilon, which allows you to create virtual nodes and will not conflict with the other configuration tool.

Multilon2 is based on more than 15 years of experience in creating custom applications for LonWorks networks.

It offers in a single application, easy to install and distribute, all the features you would need to create your application.
Multilon 2 is a service application which may be executed standalone (and accessed via the .NET remote layers) or integrated into your final application, while still offering .NET remote access.
It connects to the LonWorks network via a DLA product (DTI LonWorks Adapter). Different types of DLA are available, differing by the way they are connected to the host computer (USB, Ethernet, Serial …)

Usage of a DLA or another is only influenced by the configuration settings of Multilon. An application developed with a given DLA model will run seamlessly with any other DLA device.
License usage for Multilon is offered as a bundle with the purchase of any DLA product.
Multilon maintains a simple two-files database. The first one (MODels database) contains the imported XIF files and nodes firmware (NXE, APB), while the second (DOMain database) contains the channels and node instances together with their parameters (name, neuron-id, subnet/node, connections …). It is therefore possible to distribute, together with an upgrade of your application, a new MODels database without affecting the installed system. New firmware contained into the newly installed MODels database can then be downloaded to the nodes.

Programming Model

A very simple but powerful programming model...

Within the databases, each item (The Domain, a Node, a Connection, a NodeModel…) is a software object, having properties, methods…
Once you get a reference to an object, just access its properties and methods to perform actions or get information about that object.

The API on top of these objects is open and complete: A good illustration is the GUI (Graphical User Interface) tool, with integrated protocol analyzer. This tool is completely written in C# as a client application of Multilon, therefore everything this tool does, can be implemented by your application.
Furthermore, to ease building your application and to serve as a code example, the GUI source code and its protocol analyzer are released as open source.

High efficiency

Multilon API supports multi-threaded clients. If your application is multithreaded, you can send multiple messages simultaneously to different nodes (up to 15, as limited by the LonWorks protocol transaction table), thereby enhancing the overall communication speed. If a node fails and retries are used, only the calling thread will be waiting; communication with other nodes will continue without being interrupted.
Some additional speed enhancement have been made; for example, a network scan (discovery of nodes installed on the network) scans more than 500 nodes in about 33 seconds where other tools would take very
long minutes…

Graphical user interface

Our open source GUI offers most of Multilon's functionalities in a few clicks. This client application uses Multilon’s Application Programming Interface to manage the database and the network. The purpose of the GUI is not to be a free replacement
of other commercial network management tools, but is targeted to help the developer in its task. By using the GUI you can immediately commission nodes, manage the database… while focusing on your application.

Multilon GUI

In the field nodes firmware upgrades

Multilon automates the upgrading process by giving your application a way to easily upgrade LonWorks nodes firmware.
Here is how it works:
For every type of product, a NodeModel is defined. The NodeModel contains one or more NodeVersion. A NodeVersion is a given version of the product’s firmware. The NodeVersion object is composed of the imported XIF file and firmware binaries. The reason to have multiple binaries is to support multiple hardware targets (i.e. the 3120E4 has a different system image
version than its RoHS equivalent) When a node is installed in Multilon databases, Multilon will search for a matching NodeVersion object, by comparing the program ID of the newly detected node against those in the MODels database. If a match is found, but the detected program ID is not the last NodeVersion for that NodeModel, then it means a newer version is available. If your application agrees to do so, Multilon will use the appropriate firmware and upgrade the node.
When you need to distribute a new version for already installed networks, just distribute a new .mod (MODels database) along with your application upgrade. If the new .mod file contains new NodeVersion the installed nodes will be upgraded and re-commissioned.

Automated nodes commissioning

Because networks should be installable without a technician, we have since more than 10 years ago integrated and controlled the commissioning of new nodes from within custom  applications.
When Multilon detects (i.e. service pin pressed, background scan...) a new node, it will provide default settings, then pass the data to your custom application which will decide whether the node can be installed or not. The application can also affect the
default settings to control the commissioning process behavior.
When the node commissioning is finalized, all connected applications receive a notification to update or synchronize their own databases.