You are currently browsing the tag archive for the ‘embedded’ tag.
Is Android a good choice for building an embedded product? Be sure to consider all the facts … In this PartnerCast video, Henrik Stahl answers an attendee question and shares some very valuable insight (skip to the 7:55 time mark in the video).
Android is a smartphone operating system with a non-standard Linux base and Android APIs on top, designed for specialized devices with a 2- to 3-year life cycle. Android is not standards-based, has no public roadmap, no predictable lifecycle, and no 3rd party support.
Building and maintaining an embedded product that is in the market for 5 to 20 years based on Android is a very risky proposition.
Java, by comparison, is a standards-based platform with an open roadmap, a transparent community process, and a large ecosystem of 3rd party providers, partners, and developers. Oracle’s Java products cover a wide range of platforms, from very small and resource constrained to large and powerful systems, and come with long-term support.
We’ve gotten excellent feedback on these releases and have found and fixed a couple of bugs and glitches and made usability enhancements. In keeping with the rapid evolution of the technology, we are today making available a set of refreshed bits:
- Oracle Java ME Embedded 3.3.1 EA for ARM Cortex-M3/M4
- Updated Oracle Java ME Embedded 3.3 EA for Raspberry Pi
- Updated Oracle Java ME SDK 3.3 EA and updated plugins for NetBeans and Eclipse
We have also expanded the documentation that comes with these releases as well as updated the embedded sample code that is available with the Java ME SDK 3.3 EA.
Developer should start using these updated releases right away to benefit from the improvements.
Important Notes For Installation:
- You should update all versions together. The integration between the runtimes (1 and 2) and the tools (3) will work best if all are updated at the same time. So please uninstall previous versions of Java ME SDK 3.3 EA (via Windows “remove software”) and the NetBeans and Eclipse plugins (via plugin management) and then install the updated versions.
- When installing the updated NetBeans plugins, you should use the manual installation method as described in the chapter 2-4 of the “Getting Started Guide for the Windows Platform”. The reason is that the NetBeans update center still contains the plugin versions of Java ME SDK 3.2 GA release (not 3.3 EA).
Be sure to check out the improved and expanded “Getting Started Guides” and “Release Notes” for the platform you plan to use. Refer to the OTN Java Embedded Documentation Tab and expand on the section “Oracle Java ME Embedded 3.3 Release” (see screen shot).
It’s best to start with the Windows (via Java ME SDK) “Getting Started Guide for the Windows Platform”, which explains how to install the Java ME SDK and configure NetBeans and Eclipse.
To access the refreshed bits for the Oracle Java ME Embedded runtimes and the Java ME SDK, please go to the download page (be sure to refer to the section for the 3.3 releases).
Where to Learn More and Get Help:
- Be sure to attend the upcoming Virtual Developer Day – Java (June 19 and 25), which has a dedicated slot on Oracle Java ME Embedded 3.3.
- Check out the full set of documentation, and the videos/webcasts on the Oracle Java ME Embedded 3.3 Resources Page (further links can be found on my blog as well).
- Ask questions on the OTN Java ME Embedded forum.
- Email us at: firstname.lastname@example.org
It will be a packed day of information, from keynotes to technical sessions, demos, and lightning talks – covering Java EE, Java SE, JavaFX, Java ME, and, of course, Java Embedded.
I will be there, talking about “Java in the Internet of Things: Small, Smart, Connected”.
Hope to see you on Tuesday!
JavaOne in Russia ended yesterday, with over 2000 developers attending.
Embedded Java was a a hot topic (as it is pretty much everywhere these days) – check out the video on the Smart Home demo with Java ME Embedded on Raspberry Pi, and catch up with other demos and things happening at JavaOne Russia.
Each platform has its strengths, and your choice depends on your requirements. What’s important is that together, Java ME Embedded and Java SE Embedded cover the embedded space from very small to very large, and give you a single development architecture to build embedded solutions easily and quickly.
For more details, see the below table.
Following up on yesterday’s release, Oracle evangelist Angela Caicedo has put together a great blog posting with all steps and code you need to develop and run your first Java application on an ARM Cortex-M3 developer board.
Or, if you have a Raspberry Pi lying around, you could use that.
In any case, it has never been easier to get started with embedded Java applications!
A few weeks ago, Oracle made available an updated release of Java ME Embedded, version 3.3, as an Early Access (EA) for Linux on Raspberry Pi (see blog entry).
Today, we are following up with the release on ARM Cortex-M3 for the ARM RTX RTOS on the KEIL MCBSTM32F200 developer board (*see note on Cortex-M4 below).
Why is this important?
With this release, Oracle now provides a Cortex-M3/M4 reference binary of the feature-rich, standards-based Java ME Embedded runtime, scaling from mid-range embedded systems such as Linux-based platforms all the way down to micro controller-type devices with limited memory and small RTOS or minimal kernels. System requirements:
- Minimal Java ME Embedded configuration: 32-bit MCU, 130 KB RAM, 350 KB Flash/ROM
- Full Java ME Embedded configuration: 700 KB RAM, 2000 KB Flash/ROM
Yes, that is Kilobytes, not Megabytes (!)
So take your existing Java skills, use familiar tools like NetBeans and Eclipse, and develop highly-functional, robust embedded applications for a wide range of embedded use cases and devices in a snap.
For example, you can begin developing your code on a powerful and flexible desktop-class system like Raspberry Pi. Later, you take the unmodified application binary and simply deploy it directly to the resource-constrained target devices running Java ME Embedded.
Sounds easy? It is: No cross-compilation, no complexities due to platform dependencies, no dealing different sets of architectures, tools, compilers, libraries, and versions, and significantly reduced integration and testing effort … in fact, many typical embedded software development pain points just evaporate (embedded developers: if you are crying tears of joy now, I understand – I’ve been there myself
And on top of the rich set of functionality already provided by Java ME Embedded 3.2, version 3.3 adds a number of new features, such as an expanded and more flexible access to peripherals (such as ADC, DAC, Pulse Counter, and watchdog), improved logging functionality, tooling enhancements, additional new sample code, and more. Still in the same, low footprint.
Ok, great! What next?
- Watch the brand-new webcast “Getting started with Java ME Embedded on KEIL” (part 1, part 2)
- Order a KEIL MCBSTM32F200 from your favorite distributor (such as Mouser, Element14, or a number of others)
- Review the Java ME Embedded 3.3 documentation, included “Getting Started Guides” and “Release Notes”
- Download the Java ME Embedded 3.3 binary for KEIL MCBSTM32F200 from Oracle Technology Network (OTN)
- Download and install the Java ME SDK 3.3 EA and/or the NetBeans and Eclipse plug-ins
- Check out Angela Caicedo’s blog post ”Getting started with Java ME Embedded on KEIL”
To learn more:
Getting in touch:
- Ask questions on the OTN Java ME Embedded forum
- Email us at: email@example.com
Stay tuned for more to come.
* Note: While the MCBSTM32F200 is the officially supported board, the release also works on the MCBSTM32F400 (which is the Cortex-M4 version)
At JavaOne 2012 Oracle announced its entry into the small embedded space: Java ME Embedded 3.2.
Today we are announcing the availability of two exciting follow-up releases:
- Java ME Embedded 3.3 for Raspberry Pi (Early Access)
- Java ME SDK 3.3 (Early Access)
With these releases, Java developers can now develop feature-rich embedded Java ME applications and run them on the popular Raspberry Pi board. The new version supports a number of new or improved features:
- Support of Raspberry Pi Model B running Linux Wheezy hard float
- Multi-tasking virtual machine for running multiple applications concurrently and reliably
- Full-featured application provisioning and management
- An enhanced Device Access API, which allows developers to access peripheral I/O directly from Java, including devices on GPIO, UART, I2C, and SPI
- Network and memory monitoring tools
- Various additional enhancements in both the Java ME Embedded runtime and the Java ME SDK
Get a quick intro by watching Simon Ritter’s webcast “Java ME Embedded on the Raspberry Pi”.
Go here to find out more and download Java ME Embedded and Java ME SDK, including an overview, Getting Started Guide, FAQ, and full documentation.
That’s all for today – I will post more information next week.
Next week, the embedded industry descends on Nuremberg, Germany, for the annual embeddedworld conference.
In driving the “Device to Data Center” vision, Oracle has yet again increased its presence at the show:
You will find Oracle’s large booth located in hall 5, booth #134.
The Oracle presence is built around a total of six end-to-end demos which all integrate into Oracle’s “Device to Data Center” vision. The demos include intelligent embedded edge devices, mobile phones and tablets, gateways, databases, event processing and service bus functionality, end-to-end communication and security, and enterprise infrastructure, integration, and applications.
The demos highlight a variety of use cases ranging from intelligent home, building control, security management, healthcare and health monitoring, home gateway scenarios, to asset tracking and monitoring.
Our partners at the booth are Deutsche Telekom, Freescale, and Arkessa – who are showcasing products and services built around Java and Oracle products.
My colleagues and I are presenting four talks on topics across the Java embedded space (for the full conference program, see here):
- Harnessing the Explosion of Advanced Microcontrollers with Embedded Java, 16:30 (session 2)
- A New Platform for Ubiquitous Computing: Oracle Java ME Embedded, 16:00 (session 10)
- Developing with Security for Java Embedded Devices, 14:30 (session 17)
- Java SE Embedded Development Made Easy, 16:45 (session 10)
- Java-Based Home Gateway for the Intelligent Energy Grid of the Future, 11:00 (session 27)
A number of Oracle executives and experts will be available throughout the show, so please stop by if you have any questions or you want to learn more about Java embedded and Oracle products and technologies.
See you next week in Nuremberg!
Support for Java in the M2M space is growing rapidly.
Cinterion and Qualcomm have already announced their support for Java using the Oracle Java ME Embedded 3.2 platform.
Two days ago, Qualcomm and AT&T announced their “Internet of Everything” development platform, supporting Oracle Java ME Embedded 3.2.
Yesterday, Telit introduced two Qualcomm-based modules for global M2M markets, with support planned for Oracle Java ME Embedded 3.2 as well.