You are currently browsing the tag archive for the ‘Embedded Java’ tag.

OTN Java

 

 

The Top 10 OTN Java Articles are always a popular topic. We just compiled the information for 2012 – Embedded Java and Raspberry Pi was hot, with article #1 garnering 56,000 page views!

Here is the list.

Cheers,

— Terrence

2012 Top 10 OTN/Java Technology Articles

1. Getting Started with Java SE Embedded on the Raspberry Pi 
August 2012
Bill Courington and Gary Collins

2. How to Get Started (FAST!) with JavaFX 2 and Scene Builder  
November 2012
Mark Heckler

3. Laying Out a User Interface with JavaFX 2.0 
March 2012
James L. Weaver

4. Building Applications in JavaFX 2.0 
February 2012
Daniel Zwolenski

5. Interfaces on Demand with CDI and EJB 3.1 
January 2012
Adam Bien

6. Key to the Java EE 6 Platform: NetBeans IDE 7.1 
March 2012
Geertjan Wielenga

7. Best Practices for JavaFX 2.0 Enterprise Applications (Part One) 
April 2012
James L. Weaver

8. Challenging the Diabolical Developer: A Conversation with JavaOne 
Rock Star Martijn Verburg 
October 2012
Janice J. Heiss

9. Best Practices for JavaFX 2.0 Enterprise Applications (Part Two) 
May 2012
James L. Weaver

10. The Enterprise Side of JavaFX: Part Two 
June 2012
Adam Bien

3bcdede

There is currently an interesting discussion happening on the LinkedIn “Internet of Things (IoT)” group. It was triggered by the analyst reports I posted a little while back.

The discussion can be found here. Because the “IoT” group is moderated you need to sign up to view the discussion, so I am copying my reply below as well.

Cheers,

— Terrence

Post to the LinkedIn “Internet of Things (IoT)“:

Hi all,

(Disclosure: I am the product manager for Oracle’s small embedded Java products, so my view is probably somewhat biased ;-):

Thanks for an interesting discussion. It highlights the underlying issue in the embedded space: The fact that the industry is fragmented by a diverse mix of technologies that makes delivering embedded solutions much harder than is should be.

It’s not just about choosing a language or a chip architecture. To build an embedded device, you need to integrate hardware components, operating systems, drivers, tools, libraries, security aspects, and more. And increasingly, embedded solutions must be connected and integrated with other systems. So now you need to think about connectivity, protocols, encryption, authentication, data formats, and such. And you’re still not done: What about monitoring and managing these devices out in the field? You need to be able to maintain these devices and update the software to fix issues and add functionality without impacting the integrity of the system. And finally, if you then want to re-use your solution for a different use case and a different set of hardware – do you have to port, integrate, and test everything again?

I think it’s clear that this mode of operation is unsustainable. Yes, you can build all this today using traditional embedded technologies, but it is way too difficult. The important thing to realize is that many embedded use cases must solve a common set of problems as outlined above. The embedded industry will migrate away from individual point solutions towards standards and platforms that address these shared infrastructure requirements. Which then allows developers to add their value on top and deliver solutions quickly and cost effective. This is not unique to the embedded industry but it is a typical pattern of IT evolution.

So when you’re evaluating Java for the embedded space, it’s important to look at it not as just a language, but as a technology platform and ecosystem. Java not only addresses many pain points in embedded development (platform-independence, rich language and feature-set, great tools, scalability) but also gives you a robust and manageable application platform, security framework, connectivity, a wide range of protocols, 3rd party components, and easy integration with back-end systems (most of which are also Java-based). In fact, it is the only technology platform today which is in a position to provide all this.

A few words about Java on the device side:

Not sure if you have been following embedded Java lately – it’s not your father’s Java anymore. You can run feature-rich Java stacks from low-cost micro-controllers with as little as 128 KB RAM all the way up to high-end embedded systems. There is increasing integration with many advanced platform features, as well as out-of-the box support for security, manageability, and back-end connectivity.

Since Oracle announced it’s new focus and strategic vision on embedded Java at JavaOne in September we’re seeing a huge amount of interest in the industry. Oracle has delivered new products and an updated embedded Java roadmap, partners like Cinterion and Qualcomm have announced products, and there is much more to come.

Best regards,

— Terrence Barr

ME 8 platform

It might have gone unnoticed to some, but Java ME took a big leap forward a couple of weeks ago with the filing of two new JSRs:

Together, these two JSRs will significantly update, enhance, and modernize the Java ME platform, and specifically small embedded Java, with a host of new features and functionality.

JSR 360 – Connected Limited Device Configuration 8

CLDC 8 is based on JSR 139 (CLDC 1.1) and updates the core Java ME VM, language support, libraries, and features to be aligned with Java SE 8. This will include:

  • VM updated to comply with the JVM language specification version 2
  • Support for SE 7/8 language features like Generics, Assertions, Annotations, Try-with-Resources, and more
  • New libraries such as Collections, NIO subset, Logging API subset
  • A consolidated and enhanced Generic Connection Framework for multi-protocol I/O

With CLDC 8, Java ME and Java SE are entering their next phase of alignment – making Java the only technology today that truly scales application development, code re-use, and tooling across the whole range of IT platforms, from small embedded to large enterprise.

JSR 361 – Java ME Embedded Profile

ME EP is based on JSR 228 (IMP-NG) and updates the specification in key areas to provide a powerful and flexible application environment for small embedded Java platforms, building on the features of CLDC 8: 

  • A new, lightweight component and services model
  • Shared libraries
  • Multi-application concurrency, inter-application communication, and event system
  • Application management
  • API optionality, to address low-footprint use cases

With ME EP, application developers will have a modern application environment which allows development and deployment of  modular, robust, sophisticated, and footprint-optimized solutions for a wide range of embedded use cases and devices.

Summary

While these JSRs are still under development, it’s clear that there are exciting new times ahead for Java ME – turning into a serious application platform while maintaining the focus on resource-constrained devices to address the expected explosion of small, smart, and connected embedded platforms.

To learn more, click on the above links for JSR 360 and JSR 361. Or review the JavaOne 2012 online presentations on the topic:

Also, for more information on JSR 360, check out Roger Brinkley’s blog “A Look inside JSR 360”.

And stay tuned for more in this space!

Cheers,

— Terrence

 

DevoxxLogo150dpi

It’s Devoxx time again!

If you’re at Devoxx, sure to check the schedule for a whole range of exciting Java and Oracle topics:

JavaFX, OpenJDK, JDK 7, Java Embedded, Java EE, JCP, NetBeans, Greenfoot, as well as Java Duchess and JUG meetings. Talks, labs, BOFs, demos, and more.

Embedded Java will also play a prominent role. Want to see Java on Raspberry Pi in action? Find out why what’s happening with Java in IoT (Internet of Things)? Play with NetBeans and Tinkerforge?

Check out the full Devoxx schedule.

Why do I think Java has the most exciting part of its future still ahead of it? Catch up with me at my talk on Wed 14:00:  “Small, Smart, Connected: Java in the Internet of Things”.

Cheers,

— Terrence

Just a quick note from JavaOne … excellent response to Oracle’s embedded Java announcements and strategy. Our DEMOGround booth is always busy – people want to learn more about Oracle Java ME Embedded 3.2, see it in action. Today’s keynote for the Java Embedded @ JavaOne sub conference was excellent – full house, great line up of partners and content.

Haven’t had time to blog, but been tweeting about the latest news around embedded Java – be sure to monitor @terrencebarr. And check my last blog for embedded Java highlights.

Oh, and check this latest summary on blogs.oracle.com “Huge Opportunity in Small Things”

Cheers,

— Terrence

Javaone embedded combined

It’s here. Tomorrow (Sunday), JavaOne kicks off. Followed on Wednesday by Java Embedded @ JavaOne.

As I mentioned in my previous post, 2012 sees a big focus on embedded Java topics leading up to the show as well as throughout the conference. Last week was the announcement of two new embedded products: Oracle Java ME Embedded 3.2 and Java Embedded Server 7.0 (a blog post on this coming soon). And this week follows up with a host of keynotes, sessions, tutorials, booths, demos, and other content at JavaOne and Java Embedded @ JavaOne.

Just in time, I’d like to share my (totally subjective) list of this week’s “Embedded Highlights”, sorted by conference and by day. Here it goes:

JavaOne, Sunday

  • KEY10728 – Java Strategy Keynote 
  • KEY10744 – JavaOne Technical Keynote

JavaOne, Monday

  • CON6703 – ARM: Eight Billion Served—“Want That Java Superoptimized?”
  • CON11238 – Java Robots and Automation with MAX
  • CON5943 – Java ME 7 Service Platform
  • TUT10155 – Getting up to Speed on Oracle Java SE Embedded Performance: Tuning Tips and Tricks
  • CON4247 – CLDC7: The Java Platform for Feature Phones and Low-Footprint Embedded Devices
  • TUT6305 – Hands-On M2M
  • BOF6816 – A Java-Powered FIRST Robot

JavaOne, Tuesday

  • CON6335 – Rapid Robot Programming
  • CON5804 – A New Platform for Ubiquitous Computing: Oracle Java ME Embedded
  • CON11300 – Expanding the Reach of the Java ME Platform
  • CON4058 – Java-Enabled Wireless Modules: The Central Hub for Next-Generation M2M Applications
  • CON7110 – Developing Java Mobile and Embedded Applications with Java ME SDK 3.2
  • CON4570 – Oracle Java Wireless Client: Optimized Java ME 7 Runtime
  • CON12988 – OSGI Resource and Remote Lifecycle Management for M2M and the Device Cloud
  • CON6094 – JavaFX on Smart Embedded Devices
  • BOF4227 – Building Smart Java Applications with Neural Networks, Using the Neuroph Framework
  • BOF7304 – Using Your Old Java ME Device to Build Cool New Hacking Projects
  • BOF4298 – Small Embedded Java Platform for Robots
  • CON5352 – Building JavaFX Interfaces with the Real World

JavaOne, Wednesday

  • CON7212 – Java for Embedded Systems: Multicore and More
  • CON11385 – What Users Really Want from M2M Solutions: Findings of a Worldwide M2M User Survey
  • CON5348 – Do You Like Coffee with Your Dessert? Java and the Raspberry Pi
  • CON3984 – IMP.next: A Profile for an Embedded World with Increasing Demands
  • CON3400 – Kinect Open Source Programming Secrets: Hacking with OpenNI, NITE, and Java
  • CON6590 – Easy Middleware for Your Embedded Device

JavaOne, Thursday

  • CON8081 – A World of Possibilities with Java ME + Bluetooth + Arduino 
  • CON4666 – How to Connect Java Embedded to Cloud Computing 
  • CON11225 – Closing the IT Loop: Best Practices with Java Embedded in the Real World 
  • CON11335 – Developing Embedded and Cloud Java Apps for Routers, Gateways, and Storage Devices

Java Embedded @ JavaOne, Wednesday

  • KEY11523 – Java Embedded: Market Strategy with Judson Althoff
  • CON11210 – Modernizing the Explosion of Advanced Microcontrollers with Embedded Java
  • CON11211 – Standardized Embedded mHealth: The Power of Java and the Continua Ecosystem
  • CON11156 – Benefits of Java M2M Modules to the Ecosystem
  • CON13583 – Internet of Everything: From Connected Objects to a Smart Connected World
  • CON11235 – Bring Your Device to the Cloud: Why Mobile Networks Are Different
  • CON11236 – The Coming M2M Revolution: Critical Issues for End-to-End Software and Systems

Java Embedded @ JavaOne, Thursday

  • KEY11525 – Java Embedded: Product Strategy with Hasan Rizvi 
  • CON11386 – Emerging Technologies in Manufacturing and Industrial Automation 
  • CON11388 – M2M: Tackling the Next Data Deluge 
  • CON11207 – Java and M2M Services for Business Transformation 
  • CON11208 – Gaining Market Advantage via Simplification and Differentiation with Java

Enough content? I thought so 😉 And, not to forget, be sure to check out the DemoGrounds at JavaOne – lots of cool demos, geek toys, and more. And hang out at the OTN Lounge while you’re there.

Hope you have a great show. See you around!

Cheers,

— Terrence

 

Java IoT

Updates (Oct 3, 2012):

  • Cinterion announce the launch of their latest M2M solution, based on Oracle Java ME Embedded 3.2
  • Qualcomm Technologies and Oracle announce their collaboration on M2M platforms, based on Oracle Java ME Embedded 3.2

The Internet of Things (IoT) is coming. And, with todays launch of the Oracle Java ME Embedded 3.2 product, Java is going to play an even greater role in it.

Java in the Internet of Things

By all accounts, intelligent embedded devices are penetrating the world around us – driving industrial processes, monitoring environmental conditions, providing better health care, analyzing and processing data, and much more. And these devices are becoming increasingly connected, adding another dimension of utility. Welcome to the Internet of Things.

As I blogged yesterday, this is a huge opportunity for the Java technology and ecosystem. To enable and utilize these billions of devices effectively you need a programming model, tools, and protocols which provide a feature-rich, consistent, scalable, manageable, and interoperable platform. 

Java technology is ideally suited to address these technical and business problems, enabling you eliminate many of the typical challenges in designing embedded solutions. By using Java you can focus on building smarter, more valuable embedded solutions faster. To wit, Java technology is already powering around 10 billion devices worldwide.

Delivering on this vision and accelerating the growth of embedded Java solutions, Oracle is today announcing a brand-new product: Oracle Java Micro Edition (ME) Embedded 3.2, accompanied by an update release of the Java ME Software Development Kit (SDK) to version 3.2.

What is Oracle Java ME Embedded 3.2?

Oracle Java ME Embedded 3.2 is a complete Java runtime client, optimized for ARM architecture connected microcontrollers and other resource-constrained systems. The product provides dedicated embedded functionality and is targeted for low-power, limited memory devices requiring support for a range of network services and I/O interfaces. 

What features and APIs are provided by Oracle Java ME Embedded 3.2?

Oracle Java ME Embedded 3.2 is a Java ME runtime based on CLDC 1.1 (JSR-139) and IMP-NG (JSR-228). The runtime and virtual machine (VM) are highly optimized for embedded use. Also included in the product are the following optional JSRs and Oracle APIs:

ME E Overview

  • File I/O API’s (JSR-75) 
  • Wireless Messaging API’s (JSR-120)
  • Web Services (JSR-172)
  • Security and Trust Services subset (JSR-177)
  • Location API’s (JSR-179)
  • XML API’s (JSR-280) 
  • Device Access API
  • Application Management System (AMS) API
  • AccessPoint API
  • Logging API

Additional embedded features are:

  • Remote application management system
  • Support for continuous 24×7 operation
  • Application monitoring, auto-start, and system recovery
  • Application access to peripheral interfaces such as GPIO, I2C, SPIO, memory mapped I/O
  • Application level logging framework, including option for remote logging
  • Headless on-device debugging – source level Java application debugging over IP Connection
  • Remote configuration of the Java VM

What type of platforms are targeted by Oracle Java ME 3.2 Embedded?

The product is designed for embedded, always-on, resource-constrained, headless (no graphics/no UI), connected (wired or wireless) devices with a variety of peripheral I/O. 

The high-level system requirements are as follows:

  • System based on ARM architecture SOCs
  • Memory footprint (approximate)
    • from 130 KB RAM/350KB ROM (for a minimal, customized configuration)
    • to 700 KB RAM/1500 KB ROM (for the full, standard configuration) 
  • Very simple embedded kernel, or a more capable embedded OS/RTOS
  • At least one type of network connection (wired or wireless)

The initial release of the product is delivered as a device emulation environment for x86/Windows desktop computers, integrated with the Java ME SDK 3.2.

A standard binary of Oracle Java ME Embedded 3.2 for ARM KEIL development boards based on ARM Cortex M-3/4 (KEIL MCBSTM32F200 using ST Micro SOC STM32F207IG) will soon be available for download from the Oracle Technology Network (OTN). 

Nanini peter

What types of applications can I develop with Oracle Java ME Embedded 3.2?

The Oracle Java ME Embedded 3.2 product is a full-featured embedded Java runtime supporting applications based on the IMP-NG application model, which is derived from the well-known MIDP 2 application model. The runtime supports execution of multiple concurrent applications, remote application management, versatile connectivity, and a rich set of APIs and features relevant for embedded use cases, including the ability to interact with peripheral I/O directly from Java applications.

This rich feature set, coupled with familiar and best-in class software development tools, allows developers to quickly build and deploy sophisticated embedded solutions for a wide range of use cases. Target markets well supported by Oracle Java ME Embedded 3.2 include wireless modules for M2M, industrial and building control, smart grid infrastructure, home automation, and environmental sensors and tracking.

What tools are available for embedded application development for Oracle Java ME Embedded 3.2?

Along with the release of Oracle Java ME Embedded 3.2, Oracle is also making available an updated version of the Java ME Software Development Kit (SDK), together with plug-ins for the NetBeans and Eclipse IDEs, to deliver a complete development environment for embedded application development. 

OK – sounds great! Where can I find out more? And how do I get started?

There is a complete set of information, data sheet, API documentation, “Getting Started Guide”, FAQ, and download links available:

  • For an overview of Oracle Embeddable Java, see here.
  • For the Oracle Java ME Embedded 3.2 press release, see here.
  • For the Oracle Java ME Embedded 3.2 data sheet, see here.
  • For the Oracle Java ME Embedded 3.2 landing page, see here.
  • For the Oracle Java ME Embedded 3.2 documentation page, including a “Getting Started Guide” and FAQ, see here.
  • For the Oracle Java ME SDK 3.2 landing and download page, see here.
  • Finally, to ask more questions, please see the OTN “Java ME Embedded” forum

To get started, grab the “Getting Started Guide” and download the Java ME SDK 3.2, which includes the Oracle Java ME Embedded 3.2 device emulation. 

Can I learn more about Oracle Java ME Embedded 3.2 at JavaOne and/or Java Embedded @ JavaOne?

Glad you asked 😉 Both conferences, JavaOne and Java Embedded @ JavaOne, will feature a host of content and information around the new Oracle Java ME Embedded 3.2 product, from technical and business sessions, to hands-on tutorials, and demos. Stay tuned, I will post details shortly.

Cheers,

— Terrence

Javaone embedded combined

JavaOne is only 6 days away… Are you ready?

Man, what a crazy couple of weeks it has been. Haven’t blogged for ages. Insanely busy with preparations for JavaOne, Java Embedded @ JavaOne, and some new products we’re working on (on the latter, stay tuned …).

There is so much activity, information, and data around JavaOne to choose from – it’s hard to stay on top of it all. I’ll try to keep it short and provide the highlights as well as my embedded point of view. Ok, here it goes:

First, in case you may not know, there are actually two (!) Java conferences this year: JavaOne itself, and Java Embedded @ JavaOne.

  • JavaOne happens from Sep 30 through Oct 4 (yes, that means keynotes are on Sunday!  Don’t miss them)
  • Java Embedded @ JavaOne happens Oct 3 and 4 – in parallel to JavaOne

Java Embedded @ JavaOne
 
Why a dedicated conference for Java in embedded? Basically, we believe Java is the perfect platform for embedded solutions, and if you go by any one of the current predictions then smart, small, and connected systems will explode over the next 5 to 10 years. A huge opportunity for the Java ecosystem. 
 

Judson join us at javaone

For a quick intro, check out the video “Join us at Java Embedded @ JavaOne” with Judson Althoff, SVP, Worldwide Alliances and Channels. 

Henrik Stahl, Senior Director of Product Management, does a great job of introducing Java Embedded @ JavaOne. 

Finally, if you have more questions, check out my FAQ on the Java Embedded @ JavaOne conference.


JavaOne

As every year, JavaOne will be packed with keynotes, technical sessions, BOFs, Hands-On-Labs (HOLs), demo grounds, and events.

New for this year are tutorials, which are a mix between an extended technical session, a BOF, and a HOL. It gives the presenters extra time to show you the ropes on a particular topic and extra time for the attendees to ask questions. But it is less of a ‘lab’ setting compared to a HOL. Should be a good addition to the JavaOne structure.

Also new this year is the Oracle OpenWorld Music Festival, which happens throughout the conference (Sun-Thu) in a couple of venues around the main event area. There is music every day and a great line-up of performers such as Macy Gray, Jimmy Cliff, The English Beat, Joss Stone, and many more. Definitely worth checking out. Of course, there is the traditional assortment of parties and events – just check the JavaOne home page!

In terms of embedded, there will be a HUGE focus on that topic at this year’s JavaOne. Oracle is making a big push for Java in the embedded space, not just by launching the Java Embedded @ JavaOne conference (see above), but embedded is embedded (pun intended!) all throughout JavaOne itself:

  • Dozens of dedicated embedded technical sessions, BOFs, tutorials, and Hands-on-Labs – ranging from tiny embedded devices through complex end-to-end embedded solutions and touching on a range of different use cases and markets
  • Java in embedded spreads throughout the pavilion and demo boths
  • Embedded technology featuring in JavaOne keynotes (very cool – see for yourself!)
  • Involvement of partners specializing in embedded solutions built on Java

JavaOne embedded speaking

Last, but not least, I will be doing 2 technical sessions at JavaOne, one business session at Java Embedded @ JavaOne and managing one of the embedded Java demo booths with some cool new technology … and probably be involved in a dozen other things as well! If you are at JavaOne this year, you will be hard-pressed to avoid me 😉
 
Registration for Both Events
 
There is still time to benefit from the pre-event registration prices. Check out the registration pages (JavaOne,  Java Embedded @ JavaOne).
 
Special price breaks are available for students (FREE! see here), as well as for attendees of JavaOne (only $100 extra to add a full pass for the Java Embedded @ JavaOne conference).
 
And More …
 
Finally, don’t just take my word on JavaOne and Java Embedded @ JavaOne:

Java embedded at j1

Update (7/17/2012): By popular request, the CfP deadline has been extended to July 27! So that gives you a few extra days to prepare that submission.

The deadline for the Call-for-Papers for Java Embedded @ JavaOne is approaching fast.

Be sure to submit your paper by Wednesday, July 18.

More information on the Call-for-Papers and the types of submissions we are looking for can be found on the Q & A.

Cheers,

— Terrence

Podcast logo

Just to let you know there are a bunch of new and interesting podcasts around embedded Java, JavaFX, and Java on Mac OS X available on The Java Spotlight Podcast:

Enjoy!

Cheers,

— Terrence

Unknown's avatar

Enter your email address to subscribe to this blog

Join 181 other subscribers
March 2026
S M T W T F S
1234567
891011121314
15161718192021
22232425262728
293031  

Blog Stats

  • 285,597 hits
Design a site like this with WordPress.com
Get started