Let's talk about exceptions ...
How do you handle exceptions? Do you think upfront about the type of exceptions that you want to catch or do you just let the outside world handle it?

-- Jeroen van Bergen in JW Blogs

Newsletter sign-up

Sign up for our technology specific newsletters.

Enterprise Java
View all newsletters

Email Address:

A promise of easier embedded-systems networking

TINI chipset has a multitasking OS and a JVM that supports equipment-control and status-reporting applications

Java-based microcontrollers have tremendous potential as embedded device controllers, providing easy network connectivity to a wide variety of home and industrial equipment. A versatile chipset in development at Dallas Semiconductor can help to realize this potential. The chipset, known as TINI (Tiny InterNet Interface), consists of a microcontroller with a multitasking operating system, a TCP/IP network stack, and a Java Virtual Machine that supports applications for equipment control and status reporting. The three-chip set will include a network controller and a variety of serial and parallel interfaces. By supporting a mini Web server written in Java, it will also allow users to interact with factory equipment over a network through familiar, versatile HTML and Java user interfaces. Work is also under way to reduce the chipset to a single chip and to allow it to host the Jini technology. This article will present methods for designing and deploying low-cost Java-based microcontrollers using TINI technology.

In the beginning

The need for embedded systems to collect and report manufacturing data on the corporate IT network existed at Dallas Semiconductor long before the advent of the TINI chipset. The silicon process equipment used at Dallas often costs in excess of million per unit and must be used continuously -- and efficiently -- to justify the investment. Thus, Dallas required accurate, real-time reporting of its equipment status to avoid buying new equipment when a more efficient use of existing equipment could be made. To this end, we developed an interface-device code named the Natural Bridge, which made it possible to translate, or "bridge," the control and status indicators of many pieces of semiconductor-fabrication equipment to the company-wide network.

The Natural Bridge consisted of a small circuit board with a microcontroller, lithium-backed nonvolatile memory, an Ethernet interface chip, an RS232C interface, and an interface to the Dallas Semiconductor 1-Wire network. We also developed a cooperative, multitasking operating system for the Natural Bridge. The Bridge Operating System (BOS), written in native code, provided entry points that could be called to transfer data to and from equipment by means of the RS232 port and to communicate on the corporate network using User Datagram Protocol, or UDP.

Successful internal deployments of the Natural Bridge led us to consider what it would take to design a new version that we could deploy commercially on a large scale. We knew that the main limitations to widespread use of the original Natural Bridge were the proprietary OS, a limited network stack, and the necessity of developing all code in assembly language. Realizing that any OS that we developed or licensed would probably lack broad acceptance in the marketplace, we moved to a new design that employed an embedded Java programming environment.

That solved our two biggest problems. First, programmers would be able to program in the Java language instead of assembly. Second, they would be isolated from the details of the underlying OS. The new design also included a full TCP/IP stack, expanded I/O capabilities, and a higher-performance microprocessor. Once fully implemented, this approach promises to overcome all the deficiencies in the earlier design and open the door to widespread commercial use.

Resources