Innovations in Comfort, Efficiency, and Safety Solutions.
Multi-platform LonTalk™ Protocol Stack
Interoperability of systems has been taken to a new level with GadgetStack™, the multi-platform LonTalk® protocol that allows any host processor to support LonWorks®.
Interoperability of systems has been taken to a new level with GadgetStack™, the multi-platform LonTalk® protocol that allows any host processor to support LonWorks®. GadgetStack is a software implementation of the ANSI 709.1 Control Network Protocol Specification, the protocol also used by LonWorks devices. GadgetStack is interoperable with the built-in ANSI 709.1 implementation contained in Echelon's Neuron® Chips. It allows designers to implement interoperable nodes on the target microprocessor of their choice.
GadgetStack is a LonWorks network interface solution that is more flexible and costs less than current solutions on the market. In addition it takes advantage of higher speed channels (Ethernet) and higher speed processors for data and bandwidth consolidation. Coupled with a Driver Chip, GadgetStack provides the link to move data between a PC and a LonWorks network, allowing a LonWorks network to be added to an existing PC/AT bus system.
Adept Systems was selected by Echelon to develop the Reference Implementation of the Neuron processor because of their in-depth knowledge of the LonTalk protocol. The company first authored an implementation of the ANSI/EIA 709.1 protocol as part of the specification process. Originally written for the Motorola MPC68360, the stack has since been ported to many desktop platforms.
"Since developing our first reference implementation of EIA 709.1, we have received a tremendous amount of interest for a highly portable version," said Dr. Samuel M. Smith, President of Adept Systems.
GadgetStack is a software implementation of the EIA 709.1 Control Network Protocol Specification, the protocol used by LonWorks devices. GadgetStack is interoperable with the built in EIA 709.1 implementation contained in Neuron Chips and allows designers to implement interoperable nodes on the target microprocessor of their choice. The goal behind the development of the GadgetStack software was to provide highly portable cross platform implementation of the EIA 709.1 standard protocol. Adept first authored, under contract to Echelon Corp., the C Reference Implementation of the LonTalk protocol on the Motorola MPC68360. This C Reference Implementation became the basis for the EIA 709.1 standard protocol.
Adept has since developed performance enhanced implementation and ported it to "little endian" platforms such as Intel processors running Windows or Linux. Adept has developed a version of the stack for NASA and general aviation following the RTCA/DO 178B guidelines. Also under development is an ActiveX component that will allow developers easy access to the GadgetStack protocol using their favorite Windows IDE. Planned ports include real time operating systems such as QNX and other operating systems and microprocessor platforms such as MacOS/PPC.
The GadgetStack protocol stack is written in "C". The C language API is designed to mimic the Neuron C API. Because the stack is not limited by the size of the Neuron chip's memory map, developers are able to tailor node memory requirements to their needs. Adept has added a 4th generation scripting language API using Python. This is also highly portable. The Python API makes it easy to rapidly develop complex applications and user interfaces such as embedded network management tools or self-installation tools. Other languages and development environments can be supported as well.
Since most computing platforms do not provide hardware support for the EIA 709.1 physical layer, the GadgetStack uses the ubiquitous Ethernet interface to connect to the outside world. An IP to LonTalk router provides the physical layer interface to LonTalk. EIA 709.1 packets are tunneled over IP/Ethernet to the router. In essence, Ethernet transports packets from the link layer of the EIA 709.1 stack running on the host to the EIA 709.1 physical layer running on the LonTalk side of the router. This arrangement provides the highest degree of platform independence and portability. Virtually any platform with an IP stack and Ethernet interface can support the GadgetStack. In the future, as non-Neuron hardware implementations of the EIA 709.1 physical layer become available, Adept plans to provide support for GadgetStack to interface directly to these devices.
Figure 1 shows the generic architecture for the Gadget Stack implementation. In Figure 2 is shown the Python/Windows implementation. This includes GUI based on the open source WxWindows code. A similar approach is being used for Python/Linux and could by used for any platform that supports both Python and IP such as MacOS and QNX. The GadgetStack can support multiple stacks running on one host or multiple hosts. Figure 3 shows how this is done in Linux using a proxy server. Finally in Figure 4 is shown the architecture for an ActiveX control using Visual Basic. A similar arrangement can be supported for Visual C.
One of the first applications for the GadgetStack is a set of network management tools to install and configure dependable topology and self healing networks for survivable Naval shipboard automation infrastructure. Other applications include autonomous vehicle monitoring and control systems, and embedded self-installation tools.
Parties interested in developing ports for other microprocessor targets or operating systems are encouraged to contact us.
Adept Systems www.adeptsystemsinc.com
[Click Banner To Learn More]
[Home Page] [The Automator] [About] [Subscribe ] [Contact Us]