Update 715/13: Added a note on target platforms.
A key feature of Java ME Embedded is the ability for developers to access peripheral devices directly from Java application code. This significantly simplifies development effort because the device-related code is much easier to write, portable across platforms, and there is no need for complicated native code development and integration.
The latest Device Access API is available in Java ME Embedded 3.3, and already supports a host of features, interfaces, and peripherals such as GPIO pins, I2C and SPI busses, serial communication and modems, ADC and DAC converters, pulse counters, and more.
For Java ME 8, we plan to enhance the Device Access API even further by including support for the new Java ME 8 language features aligned with Java SE 8 (such as Generics, Annotations, Try-with-Resources, and so on), adding a few more popular functions (pulse-width-modulation (PWM) output and more), and making the API available as a standard for Java ME and Java SE.
Because hardware integration is such a broad and potentially complex topic we would like to hear from developers: Does the Device Access API meet your needs? Do you see any potential pitfalls and shortcomings? To this effect, we just published the javadocs for the “Device Access API Proposal for Java ME 8”. Please have a look and give us your feedback, either as a comment to this blog entry, or via email.