At JavaOne 2011, Terrence
Barr, Senior Technologist, Mobile & Embedded, Oracle Germany,
presided over a two-hour HOL (Hands-On-Lab) on Monday in which he taught
developers how to build an embedded Java solution that senses and
controls the environment, stores data, and connects to back-end
databases for synchronization and further processing. The session
offered considerable detail along with step-by-step exercises as
participants learned how to create the embedded EnviroTracker system and
application which tracks and processes environmental data. The
application interfaces with a microcontroller to read sensor input
(ambient light brightness), to control output (and LED), and then
further processes the sensor data.
The lab focused on:
• The benefits of Java technology in the embedded space
• The components of embedded Java platforms
• Setting up an embedded Java platform
• Interfacing between the embedded Java platform, the microcontroller, and I/O
• Accessing and controlling I/O from Java
• Processing sensor data
Barr took developers through seven basic tasks or exercises:
1. Create the EnviroTracker
2. Install the OJEC (Oracle Java ME Embedded Client) on the Development Host
The Oracle Java Micro Edition Embedded Client (OJEC) implements the CDC Platform configuration.
3. Develop and Test Your First Embedded Java Application..
4. Install OJEC on the Target Platform and Run Your Java Application
5: Understand I/O and the Arduino Microcontroller
6: EnviroTracker V1: First Contact
7: EnviroTracker V2: Continuous Monitoring and Processing
the end of a rigorous and demanding, but satisfying two hours,
attendees had built a real-world embedded system and created the
EnviroTracker Application to track environmental sensor data. They
learned how to install and use embedded Java runtimes and tools, and how
to interface with I/O devices and microcontrollers from Java
The take home message: Creating sophisticated
embedded Java systems and applications is easy due to the platform
independence of the Java language and runtime, the scalability of
pre-existing Java skills to embedded development, and the comprehensive
support provided by mature and feature-rich developer tools.
For more info, go to Terrence Barr's blog.