Presented at Java One 2014, we explore the state of the art of implementing a wearable devices featuring Java SE and ME on an Hybrid Architecture with application processor and micro controller.
In this MWC/ADC 2013 presentation Attila Csipa, Technology Wizard at Nokia, provides an overview to development for Nokia Asha including Java ME and web apps. After comparing the development environments and their tools, Attila explores Java ME development in more details. He covers creating a project, running apps in the emulator, debugging, and deployment before mentioning where code examples can be found.
Nokia New Asha Platform Developer TrainingAndreas Jakl
In-depth look at the new opportunities and APIs of the Nokia Asha SDK, which enables you to develop apps for the latest phones like the Nokia Asha 501.
The training materials includes a quick overview of the refreshed UX, UI development and iconography, internationalization, phone / network / SIM state detection, file selections, notifications, radio tuner, maps, gestures and porting between different touch and non-touch devices.
The developer training was held by Mopius in Budapest on May 14th and was the world's first on-site training for the new Asha platform, just a few days after the platform's release.
This webinar opens by showing you the new features of Series 40 platform. You will discover new tools that will help you to develop applications better and faster. Your apps will get the most out of the new Series 40 touch phones when you learn how to create a UI that perfectly fits to the full-touch interaction style. We’ll show you powerful new APIs to handle sensors, multipoint touch and virtual on-screen keyboards. If you already have an existing Java ME app, we will explain how to bring it to the latest generation of phones. We’ll end with an overview of resources available so you can learn more.
Deploy Small IoT Embedded SOC Devices and a Back-End Platform with Java, usin...Kynetics
We introduce some architectural ideas around warp board and Java for IoT applications.
Java One 2015, San Francisco.
Visit the community site: http://warpx.io
Invited talk presented at the 2nd International Workshop on Deployment and Use of Accelerators (DUAC). Co-located with the 51st International Conference on Parallel Processing (ICPP). August 29, 2021 (virtual event). More information at: https://duac2022.wordpress.com/
In this MWC/ADC 2013 presentation Attila Csipa, Technology Wizard at Nokia, provides an overview to development for Nokia Asha including Java ME and web apps. After comparing the development environments and their tools, Attila explores Java ME development in more details. He covers creating a project, running apps in the emulator, debugging, and deployment before mentioning where code examples can be found.
Nokia New Asha Platform Developer TrainingAndreas Jakl
In-depth look at the new opportunities and APIs of the Nokia Asha SDK, which enables you to develop apps for the latest phones like the Nokia Asha 501.
The training materials includes a quick overview of the refreshed UX, UI development and iconography, internationalization, phone / network / SIM state detection, file selections, notifications, radio tuner, maps, gestures and porting between different touch and non-touch devices.
The developer training was held by Mopius in Budapest on May 14th and was the world's first on-site training for the new Asha platform, just a few days after the platform's release.
This webinar opens by showing you the new features of Series 40 platform. You will discover new tools that will help you to develop applications better and faster. Your apps will get the most out of the new Series 40 touch phones when you learn how to create a UI that perfectly fits to the full-touch interaction style. We’ll show you powerful new APIs to handle sensors, multipoint touch and virtual on-screen keyboards. If you already have an existing Java ME app, we will explain how to bring it to the latest generation of phones. We’ll end with an overview of resources available so you can learn more.
Deploy Small IoT Embedded SOC Devices and a Back-End Platform with Java, usin...Kynetics
We introduce some architectural ideas around warp board and Java for IoT applications.
Java One 2015, San Francisco.
Visit the community site: http://warpx.io
Invited talk presented at the 2nd International Workshop on Deployment and Use of Accelerators (DUAC). Co-located with the 51st International Conference on Parallel Processing (ICPP). August 29, 2021 (virtual event). More information at: https://duac2022.wordpress.com/
Future Internet: Managing Innovation and TestbedShinji Shimojo
Innovation is a big key word for ICT research and development. However, a road toward innovation is facing full of uncertainties and there are many obstacles. key elements to overcome these obstacles seems to be agile management of people, software and hardware. In addition, we think involvement of users in R&D will have much effect on the management of uncertainty in R&D. In this talk, I talk on our approach to this user involvement in JGN-X, an international future internet testbed and Knowledge Capital, Osaka, an smart city experimental testbed.
An introduction to the Nokia Asha platform, it's developer offering, tooling overview a bird's eye view of the UX development options, and finally advices for application development and deployment on resource constrained devices
Edje Project: The Software Foundation for IoT DevicesMicroEJ
The Eclipse IoT Edje project includes a Hardware Abstraction Java API for the IoT embedded systems. It targets resource-constrained microcontrollers, provides ready-to-use software packages for target hardware, and defines a modular and easy to port framework.
More about Edje Project: http://www.microej.com/portfolio-item/microej-present-eclipse-edje-open-source-iot-project-eclipsecon/
U4Aide platform introduction_e_infocg_2020hoyoung kim
"U4AIDE Platform" enables SAP UI5-based integrated development without Web or Fiori engineers and SAP Data Interface.
Only ABAP developers can easily and quickly implement SAP UI5-based UI / UX and hybrid mobile web development.
Innovative technology is added to IT information strategy to reduce development period, minimize development man-hours, increase ROI, and reduce TCO.
Cisco Live Take Two: Network Troubleshooting Product OverviewSolarWinds
Join Francois Caron, Director of Product Management at SolarWinds as he demonstrates how to correlate, troubleshoot, and fix application latency problems in server, LAN and WAN infrastructure. In addition, you will also see what’s new in SolarWinds products and what we are currently working on.
Eclipse Hara, Updating Embedded Devices with hawkBit Made EasyKynetics
The Eclipse Hara project aims to provide solid open-source reference implementations of a hawkBit DDI client. In this talk, we’ll focus on the new hara-ddiclient, a Kotlin library designed to facilitate and speed up the development of DDI API clients for any device capable of running on the JVM. Furthermore, the hara-ddiclient library is designed to be agnostic with respect to the type of update to install (apps, OS OTA).
We’ll present how the project came about and why the experience gained during several years of using it in the field will benefit developers using the hara-ddiclient library on any OS.
We will show what aspects of hawkBit need to be completed or implemented to use it in a production environment.
We will look at hawkBit's extension points and how they can be used and show some practices for deploying and managing a hawkBit-based product.
More Related Content
Similar to Using Java on Wearable Devices featuring an Hybrid Architecture.
Future Internet: Managing Innovation and TestbedShinji Shimojo
Innovation is a big key word for ICT research and development. However, a road toward innovation is facing full of uncertainties and there are many obstacles. key elements to overcome these obstacles seems to be agile management of people, software and hardware. In addition, we think involvement of users in R&D will have much effect on the management of uncertainty in R&D. In this talk, I talk on our approach to this user involvement in JGN-X, an international future internet testbed and Knowledge Capital, Osaka, an smart city experimental testbed.
An introduction to the Nokia Asha platform, it's developer offering, tooling overview a bird's eye view of the UX development options, and finally advices for application development and deployment on resource constrained devices
Edje Project: The Software Foundation for IoT DevicesMicroEJ
The Eclipse IoT Edje project includes a Hardware Abstraction Java API for the IoT embedded systems. It targets resource-constrained microcontrollers, provides ready-to-use software packages for target hardware, and defines a modular and easy to port framework.
More about Edje Project: http://www.microej.com/portfolio-item/microej-present-eclipse-edje-open-source-iot-project-eclipsecon/
U4Aide platform introduction_e_infocg_2020hoyoung kim
"U4AIDE Platform" enables SAP UI5-based integrated development without Web or Fiori engineers and SAP Data Interface.
Only ABAP developers can easily and quickly implement SAP UI5-based UI / UX and hybrid mobile web development.
Innovative technology is added to IT information strategy to reduce development period, minimize development man-hours, increase ROI, and reduce TCO.
Cisco Live Take Two: Network Troubleshooting Product OverviewSolarWinds
Join Francois Caron, Director of Product Management at SolarWinds as he demonstrates how to correlate, troubleshoot, and fix application latency problems in server, LAN and WAN infrastructure. In addition, you will also see what’s new in SolarWinds products and what we are currently working on.
Eclipse Hara, Updating Embedded Devices with hawkBit Made EasyKynetics
The Eclipse Hara project aims to provide solid open-source reference implementations of a hawkBit DDI client. In this talk, we’ll focus on the new hara-ddiclient, a Kotlin library designed to facilitate and speed up the development of DDI API clients for any device capable of running on the JVM. Furthermore, the hara-ddiclient library is designed to be agnostic with respect to the type of update to install (apps, OS OTA).
We’ll present how the project came about and why the experience gained during several years of using it in the field will benefit developers using the hara-ddiclient library on any OS.
We will show what aspects of hawkBit need to be completed or implemented to use it in a production environment.
We will look at hawkBit's extension points and how they can be used and show some practices for deploying and managing a hawkBit-based product.
This is the poster we present at ELC 2019 North America in San Diego about opensource frameworks to handle the complete pipeline of a SW update for embedded devices.
Asymmetric multi-processing (AMP) systems fulfill the need for high performance and real-time by combining the responsiveness of a MCU with the processing power of an application processor which runs a full OS.
This talk will present a technical overview on asymmetric multiprocessing platforms focussing on motivations, use cases and how to handle interprocess communication between MCU and MPU in practice.
Google Calendar is a versatile tool that allows users to manage their schedules and events effectively. With Google Calendar, you can create and organize calendars, set reminders for important events, and share your calendars with others. It also provides features like creating events, inviting attendees, and accessing your calendar from mobile devices. Additionally, Google Calendar allows you to embed calendars in websites or platforms like SlideShare, making it easier for others to view and interact with your schedules.
Building a Raspberry Pi Robot with Dot NET 8, Blazor and SignalR - Slides Onl...Peter Gallagher
In this session delivered at Leeds IoT, I talk about how you can control a 3D printed Robot Arm with a Raspberry Pi, .NET 8, Blazor and SignalR.
I also show how you can use a Unity app on an Meta Quest 3 to control the arm VR too.
You can find the GitHub repo and workshop instructions here;
https://bit.ly/dotnetrobotgithub
Using Java on Wearable Devices featuring an Hybrid Architecture.
1. Oracle JavaOne 2014 - September 30 2014
Using Java on Wearable Devices
Featuring a Hybrid Architecture
Presenters:
Nicola La Gloria - Kynetics
Aaron Oki Moore - Revolution Robotics
2. Oracle JavaOne 2014 - September 30 2014
Who we are:
■ Nicola La Gloria, Kynetics, CEO
nicola.lagloria@kynetics.com
■ Aaron Oki Moore, Revolution Robotics Inc., President
aaron@revoinc.com
Key Contributors
■ Diego Rondini (Kynetics)
■ Jacob Postman (Revo)
■ Otavio Salvador (OS System, CEO and i.MX6 Yocto maintainer)
■ Ray Anderson (Revo)
3. Oracle JavaOne 2014 - September 30 2014
Agenda
■ Introduction
■ What is Wearable Computing
■ Wearables in IoT
■ Design Challenges of Wearables
■ Hybrid Design Architecture
■ Wearable Reference Platform (WaRP)
■ Java on Hybrid Design Architecture
■ Operating System
■ Demo / Q & A
4. Oracle JavaOne 2014 - September 30 2014
What is Wearable Computing
■ A Wearable Computer is a body mounted connected
platform that enhance the user experience and activity.
■ Wearables does not mean smartwatch! Although they are
dominant today.
■ Defining features of Wearables are:
■ Form Factor Miniaturization
■ Low Power
■ Connectivity
■ Multiple sensors
8. Oracle JavaOne 2014 - September 30 2014
Wearables in IoT devices
■ Wearables among one of the fastest growing segments in
IoT.
■ ~20M devices in the market to date
■ Estimated worth $50B within the next three years
■ Characterizing feature for modern wearables: Connectivity
■ Edge Device
Two key IoT characterizations: Data Generators, Data Consumer:
■ Wearables are prevalent as sensors (medical/fitness) which
generate data pushed to the cloud.
■ Devices receive data in the form of news, messages, events,
etc to display to the user (can also be used for configuration).
9. Oracle JavaOne 2014 - September 30 2014
Design Challenges of Wearables
■ Form Factor - small, lightweight, 1/5th the size of
smartphones
■ Battery Life due to limited capacity
■ Communication and Connectivity
Design Consideration:
■ Markets: Medical, Health & Fitness, Infotainment
■ MCU vs AP
■ Performance / Application Capabilities
■ Expandability (As both a hardware and software platform)
■ Connectivity Options - Wifi, BT
10. Oracle JavaOne 2014 - September 30 2014
Hybrid Design Architecture
Wearable Devices today are divided into two main categories:
■ CPU driven devices:
■ Generally they present a rich user experience featuring a
full operating system
■ I’m Watch
■ Samsung Gear
■ Moto 360
■ Micro Controller driven devices:
■ Generally they feature a longer battery life but poor UI
■ Nike Fuel Band
■ Fit-bit
■ Peeble Watch
■ My Basis
11. Oracle JavaOne 2014 - September 30 2014
Hybrid Design Architecture
What is Hybrid Design?
■ The Hybrid Architecture has been introduced into a wearable
reference design by Revo and Kynetics in 2012 as a solution
to increase the battery life of a wearable computer.
■ Addresses/Focuses on:
■ Ease/flexibility of design implementation
■ Address key design challenges of wearables
■ Scale to a variety of applications
■ Separate hardware/software domains
■ Reliability via MCU
12. Oracle JavaOne 2014 - September 30 2014
Hybrid Design Architecture
Fusion between APP and MCU through a design architecture
that partitions the domain between Hardware and Software.
Mainboard (Application Processor Board)
■ High performance core with high complexity
■ Same mainboard for all applications
Daughter Board (Application Specific MCU board)
■ Application specific components and sensor platform
■ Different daughter boards for different applications
13. Oracle JavaOne 2014 - September 30 2014
Hybrid Design Architecture
Mainboard component selection criteria:
■ Components that are common across application domains
■ Move/Separate by complexity domain to reduce cost and
scale of implementation challenges.
18. Oracle JavaOne 2014 - September 30 2014
Wearable Reference Platform (WaRP)
Purpose:
Develop a wearable reference platform to cover a wide range of
applications. Focus on improving design cycle (ease, speed) for
new wearable devices, and to substantially reduce the cost of
product development. Developed with production /
manufacturing in mind (Commercializable).
19. Oracle JavaOne 2014 - September 30 2014
Wearable Reference Platform (WaRP)
Hardware Details:
■ Based on Freescale i.MX6SL (Solo) - 1.0 Ghz
■ 512MB LP-DDR2 Mobile Memory, 4GB eMMC Flash Storage
■ USB OTG, Motion Processor, PMIC, WIFI + BT, B2B Expansion
■ PCB: 10 Layer HDI (High Density Interconect), Host to 220 Components
■ Dimensions: 16mm W x 38mm L x 3.4mm Thin (Board Area < 1
sq-in)
22. Oracle JavaOne 2014 - September 30 2014
Wearable Reference Platform (WaRP)
Totally Open Source & Open Hardware
23. Oracle JavaOne 2014 - September 30 2014
Java on Hybrid Design Architecture
■ Java SE Embedded runs on Application (requires OS and device level IO such as
UART requires additional third party libraries such as rxtx or Java DIO ).
■ Java ME 8 opens the doors for running Java at the MCU level.
Freescale
FRDM-K64F
25. Oracle JavaOne 2014 - September 30 2014
System Architecture: overview
JVM
Hardware
Bootloader
Yocto Linux
Java Libraries and Frameworks
UI Applications
Linux Kernel
Display Manager
UI toolkits
Java Bindings
26. Oracle JavaOne 2014 - September 30 2014
Operating System
■ GNU/Linux to run Oracle JVM is needed
■ GPU hardware support (Vivante GC320, 2D Engine for WaRP)
■ Architecture dependent code compilation (native libraries, JNI)):
■ OS featuring a toolchain (SDK) and headers. (Yocto SDK for i.mx6 SL)
■ a cross-compiling environment to compile the native code we need
(OS, libs, JNI). Yocto pocky toolchain.
■ Windowing system selection:
■ X11
■ Wayland
■ Kernel trade off for i.MX Solo Light:
■ Linux kernel 3.0.35 (only X11, Yocto Dora)
■ Linux kernel 3.10.17 (X11/Wayland, Yocto Daisy)
■ Linux kernel 3.15.x (last development release)
27. Oracle JavaOne 2014 - September 30 2014
Appliations
JVM
Display Manager
Kernel Space (KMS)
Drivers
GPU ModulesNative
Appliations
JVM
Kernel Space (KMS)
Drivers
“Embedded”
GPU Support
Native
Two approaches to GPU support
Display Manager
28. Oracle JavaOne 2014 - September 30 2014
What is Wayland?
■ Wayland is intended as a simpler replacement for X, easier to develop
and maintain.
■ Wayland is a protocol for a compositor to talk to its clients as well as a C
library implementation of that protocol.
■ Part of the Wayland project is also the Weston reference implementation
of a Wayland compositor.
■ The Weston compositor is a minimal and fast compositor and is suitable
for many embedded and mobile use cases.
■ Most of the complexity that the X server used to handle is now available
in the kernel or self contained libraries (KMS, evdev, mesa, fontconfig,
freetype, cairo, Qt, etc). In general, the X server is now just a middle-man
that introduces an extra step between applications and the compositor
and an extra step between the compositor and the hardware.
29. Oracle JavaOne 2014 - September 30 2014
X11 vs Wayland
images from (http://wayland.freedesktop.org/architecture.html)
30. Oracle JavaOne 2014 - September 30 2014
Display Management and UI Toolkits.
It’s very important to have lightweed and performant Display
Managers (DM) and UI Toolkits (UIT) to provide the desired User
experience.
■ DM Alternatives:
■ X11
■ Wayland
■ Hybrid (XWayland, to support X11 apps on Wayland)
■ UIT Alternatives for WaRP (only 2D acceleration):
■ AWT (no 3D accelerated rendering)/Swing
■ GTK3, SWT
■ Possible bindings (2D) today are:
■ X11 (AWT,SWING,JAVA FX, SWT)
■ Wayland (GTK3, SWT)
31. Oracle JavaOne 2014 - September 30 2014
Current Issues on Wayland with Java
The problem: we have a FSL Solo Light based platform (only 2D Vivante GPU) we want
to display Java Graphics on Wayland backend (more performant on embedded
devices).
■ AWT/Java FX is not supported
■ https://community.oracle.com/thread/2491140
■ Someone is claiming that Eclipse is working under Wayland
■ http://blog.vogella.com/2014/08/18/eclipse-now-runs-on-wayland/
■ The trick is that Eclipse works with X11 on behalf, not in a pure Wayland
environment (XWayland required or booth present in the system)
■ Why?: SWT: dependents on GTKPlug/GTKSocket
References:
■ http://grepcode.com/file/repository.grepcode.com/java/eclipse.org/4.4.0/org.ecl
ipse.swt.gtk.linux/x86_64/3.103.0/org/eclipse/swt/internal/gtk/OS.java#1622
■ https://bugzilla.gnome.org/show_bug.cgi?id=721224#c1
32. Oracle JavaOne 2014 - September 30 2014
State of the art: what we have today.
It’s very important to have lightweed and performant Display
Managers (DM) and UI Toolkits (UIT) to provide the desired User
experience.
■ DM Alternatives:
■ X11
■ Wayland
■ Hybrid (XWayland, to support X11 apps on Wayland)
■ UIT Alternatives for WaRP (only 2D acceleration):
■ AWT (no 3D accelerated rendering)/Swing
■ GTK3, SWT
■ Possible bindings (2D) today are:
■ X11 (AWT,SWING,JAVA FX, SWT)
■ Wayland (GTK3, SWT)
34. Oracle JavaOne 2014 - September 30 2014
Thank you!
A special thanks to:
■ James Allen (Oracle)
■ Robert Thompson (Freescale)
■ Eric Nelson (Boundary Devices)
■ David Clack (Sun Microsystems)
■ All the Developers Communities (Yocto, Java, FSL)