How will Java fare in sub-PC devices? The answer could come as quickly as this month's Embedded Systems Conference in San Jose, California.
At the heart of this question is Sun Microsystems' Java 2 Micro Edition, which allows Java to run on devices ranging from light switches to cell phones to personal digital assistants. Sun threw its partners into turmoil last spring when it uncorked the reengineered platform without warning. And, while Sun currently is working on a transition plan, there are plenty of disagreements involved.
Sun's partners still are betting Java will play a role in the billions of new devices expected to proliferate over the next few years. But questions remain about who will control this market if it does take off, and whether the devices that run embedded Java will be compatible enough to exchange code.
Insignia Solutions this month became the first vendor of clean-room Java to offer a Sun-authorised virtual machine. Insignia's Jeode is authorised for EmbeddedJava, which is Sun's "black-box" technology for devices such as light switches that don't need to run Java applications. Authorisations for PersonalJava, which Sun recommends for Web devices like set-top boxes that do run applications, are coming this month. Insignia says it has received numerous inquiries for PersonalJava from Windows CE developers, because Microsoft does not offer Java on CE.
Insignia has licensed Jeode to Quantum for programmable storage and says it spent hundreds of hours running Sun's compatibility tests to win the right to use Sun's logo. In return for agreeing to work with Sun, Insignia was allowed to keep its own value-added technology for dynamic compilation and garbage collection, which it says give it a leg up on competitors. "Virtual machines that are not compatible will be squeezed out," says Richard Heermance, Insignia's director of marketing.
But other vendors of clean-room Java either are holding out for independence or still are negotiating with Sun. IBM offers a clean-room virtual machine as part of its VisualAge for Embedded Systems tool, which it began beta-testing before Sun announced Java 2 Micro Edition. Sun's platform includes its own K virtual machine, but none of Sun's technology will be in beta before December, meaning that technically Sun is not in compliance with itself.
"The embedded space is still craftman-ish," says IBM chief technologist Rod Smith. "You have software, hardware and integration pieces, and they're not reproducible from development to development. Cell phones have a megabyte or two of memory and so much processing power, and the manufacturers are already deciding that a year from now they'll have four or eight megs, and that changes your design point."
Hewlett-Packard, one of Sun's most vocal opponents, still is pushing its Chai virtual machine and appliance platform, although Sun has been picking off HP's licensees. Embedded-solutions vendor Integrated Systems has stopped shipping Chai, although it promises to revisit the matter if HP becomes Sun-certified. But HP marketing manager Dino Brusco claims Siemens and Hitachi will produce Chai-enabled devices this year.
Another Sun holdout, NewMonics, did not return calls seeking comment. NewMonics in February received an investment from Intel for its clean-room PERC software.
Developers say Java compliance matters more in some types of devices than in others. Wind River Systems, a Sun licensee, leaves compliance up to its customers. Wind River last week allied with Espial Group to become a "one-stop shop" for software required by PersonalJava devices. Boundless Technologies has promised such devices next quarter. "One of our customers uses Java to send updates on measurements, but they only do so through their own employees, so for them to standardise is not that important. The more open you make the device, the more you have to standardise," says marketing manager Jeorg Bertholdt.
One certainty is that no one controls this market. Microsoft has not even settled on an operating system for the embedded space and will field two -- Windows CE and Windows NT Embedded 4.0. The latter is for devices that need "a more PC-like architecture," a spokeswoman says.