Wednesday Sep 25, 2013

Session Report: Is It a Car? Is It a Computer? No, It’s a Raspberry Pi JavaFX Informatics System

by Timothy Beneke

On Tuesday, Oracle Technology Evangelist Simon Ritter presented a session that demonstrated how a simple Raspberry Pi computer could be connected to an Audi to access far more information about the inner workings of the Audi than is currently available. Ritter, a great showman who has entertained thousands of JavaOne attendees over the years with his Java tricks, communicated his contagious passion for gadgets – and for sharing them with others.


“I love computers and all things electronic, and I also love cars – I’m a petrolhead -- so I’ve combined these 2 passions into one thing,” said Ritter. 

His talk was divided into several sections. He began by talking about the reliance of cars upon computers and moved to a discussion of the Raspberry Pi and why it’s a good choice for the kinds of systems he built into his car. He went on to briefly provide some background about embedded Java and JavaFX, and why they are good choices for the Raspberry Pi. He then spent much of the session describing the software system he built in his car, its functionality, how it works, and so on. He speculated on possible future enhancements to his “carputer,” and, finally, showed a video that provided a sense of what it is like to ride in the car with the new data accessible.

He initially made the point that computers and cars are now inexorably tied together. His first car, a 1971 Mini Clubman 1000 had, aside from a radio, no electronics. In contrast, his most recent car, a 2011 Audi S3, has lots of electronic devices, like all modern cars: an engine control unit, fuel injection/electronic timing, “Fly-by-wire” throttle, an anti-lock braking system, Satellite navigation, auto-sensing wipers and lights, and much more, some of which are mandated by law. The key point is that cars are already heavily computerized.

He described how the bus architecture works in the Audi, a communication system that transfers data between components inside a computer, and presented basic information about embedded Java, Java ME and JavaFX.

The Advantages of the Raspberry Pi for Car Computing
Ritter described the history of the remarkable Raspberry Pi, a project begun in 2006 that was initially created to inspire children to learn about computers. It was officially launched on Feb 29th, 2012 and currently, nearly 2 million have been shipped at a cost of around $25. It is ideal for children because of its cost and ease of use.

Its core features are:

* CPU: ARM 11 (v6) core running at 700MHz
– Broadcom SoC package
– Can now be overclocked to 1GHz (without breaking the warranty!)
* Memory: 512Mb
* I/O:
– HDMI and composite video
– Audio out (3.5mm plug)
– 2 x USB ports
– Ethernet
– Header pins for GPIO, UART, SPI and I2C

Ritter pointed out that adult computer geeks have been playing with the Raspberry Pi in countless ways. He then summarized why it is ideal for car computing:
* It has plenty of computing power with low electrical power consumption (< 1 Amp at 5V).
* Persistent storage is provided by the SD card.
– Disk drives are not ideal in hot places with lots of vibration.
– It’s a supported device for embedded Java.
– It is configured for floating point acceleration.
– It works with Java SE Embedded and Java ME Embedded.
                  --   A JavaFX Prism graphics engine is ported.

His goal was to gain new information from his car in real-time and have it available for analysis to ultimately improve his driving style:
* Display realtime data
– Engine performance (Power, Torque, Load)
– Driver data (Throttle position, steering angle, braking force, etc)
– G-Forces on car
* Record data for later analysis
– Produce graphs to display changes over time
– Play at Formula 1
– Improve driving style

He went on to describe the creation of the accelerometer, touch screen, measures of torque, among other things, and closed with a 3-minute video showing the box in action in the car from the perspective of someone riding in the car with various measures visible. Then he played back the information recorded on the drive.

All in all, a super entertaining, informative session.

Ritter will be posting more info about his session here: blogs.oracle.com/speakjava

Audi
The Raspberry Pi
Check out Parleys.com where you can listen to the session in early October.

Friday Sep 13, 2013

Simon Ritter Prepares to Show off Java SE 8 at JavaOne

Oracle’s Simon Ritter has more tricks up his sleeve with cars and hand-tracking devices.[Read More]

Tuesday Jan 08, 2013

Java Experts on the State of Java

In a new article by yours truly, now up on otn/java, titled “Java Experts on the State of Java,” four Java experts, Adam Bien, Charles Nutter, Kirk Pepperdine and Simon Ritter, share their unique perspectives on what’s happening in the world of Java.

Consultant Adam Bien, winner of many awards and an expert in Java EE, remarks that, “Only a few years ago, Java EE was used mostly by larger companies—now it becomes interesting even for one-person shows.” He is also excited about Project Nashorn, which is coming in Java SE 8.

Charles Nutter, co-creator of JRuby and a Java Champion, observes that “JRuby seems to have hit a tipping point this past year, moving from ‘just another Ruby implementation’ to ‘the best Ruby implementation for X,’ where X may be performance, scaling, big data, stability, reliability, security, or one of several other features important for today’s applications.”

Java Champion Kirk Pepperdine, an expert in Java performance tuning, comments that, “The volume of data we’re dealing with just seems to be getting bigger and bigger all the time. A couple of years ago, you’d never think of needing a heap that was 64 GB, but today there are deployments in which the heap has grown to 256 GB, and there are plans for heaps that are even larger. Dealing with all that data simply requires more horsepower and some very specialized techniques. In some cases, teams are simply trying to push hardware to the breaking point. Under those conditions, you need to be very clever just to get things to work—let alone to get them to be fast. We are very quickly moving from a world where everything happens in a transaction to one in which you’ve lost if you even consider using a transaction.”

Finally, Oracle’s Java Rock Star Simon Ritter celebrates the Raspberry Pi: “I don’t think there is one definitive thing that makes the Raspberry Pi significant, but a combination of things really makes it stand out. First, it’s the cost: $35 for what is effectively a completely usable computer. OK, so you have to add a power supply; an SD card for storage; and maybe a screen, keyboard, and mouse, but this is still way cheaper than a typical PC. The choice of an ARM processor is also significant, because it avoids problems such as cooling (no heat sink or fan) and can use a USB power brick.”

Check out the article here.

Wednesday Sep 26, 2012

Talking JavaOne with Rock Star Simon Ritter

Oracle’s Java Technology Evangelist Simon Ritter is well known at JavaOne for his quirky and fun-loving sessions, which, this year include:

  • CON4644 -- “JavaFX Extreme GUI Makeover” (with Angela Caicedo on how to improve UIs in JavaFX)
  • CON5352 -- “Building JavaFX Interfaces for the Real World” (Kinect gesture tracking and mind reading)
  • CON5348 -- “Do You Like Coffee with Your Dessert?” (Some cool demos of Java of the Raspberry Pi)
  • CON6375 -- “Custom JavaFX Charts: (How to extend JavaFX Chart controls with some interesting things)

I recently asked Ritter about the significance of the Raspberry Pi, the topic of one of his sessions that consists of a credit card-sized single-board computer developed in the UK with the intention of stimulating the teaching of basic computer science in schools.

“I don't think there's one definitive thing that makes the RP significant,” observed Ritter, “but a combination of things that really makes it stand out. First, it's the cost: $35 for what is effectively a completely usable computer. OK, so you have to add a power supply, SD card for storage and maybe a screen, keyboard and mouse, but this is still way cheaper than a typical PC. The choice of an ARM processor is also significant, as it avoids problems like cooling (no heat sink or fan) and can use a USB power brick.  Combine these two things with the immense groundswell of community support and it provides a fantastic platform for teaching young and old alike about computing, which is the real goal of the project.”

He informed me that he’ll be at the Raspberry Pi meetup on Saturday (not part of JavaOne). Check out the details here.

JavaFX Interfaces
When I asked about how JavaFX can interface with the real world, he said that there are many ways.

“JavaFX provides you with a simple set of programming interfaces that can create complex, cool and compelling user interfaces,” explained Ritter. “Because it's just Java code you can combine JavaFX with any other Java library to provide data to display and control the interface. What I've done for my session is look at some of the possible ways of doing this using some of the amazing hardware that's available today at very low cost. The Kinect sensor has added a new dimension to gaming in terms of interaction; there's a Java API to access this so you can easily collect skeleton tracking data from it. Some clever people have also written libraries that can track gestures like swipes, circles, pushes, and so on. We use these to control parts of the UI. I've also experimented with a Neurosky EEG sensor that can in some ways ‘read your mind’ (well, at least measure some of the brain functions like attention and meditation).  I've written a Java library for this that I include as a way of controlling the UI. We're not quite at the stage of just thinking a command though!”

Here Comes Java Embedded
And what, from Ritter’s perspective, is the most exciting thing happening in the world of Java today? “I think it's seeing just how Java continues to become more and more pervasive,” he said. “One of the areas that is growing rapidly is embedded systems.  We've talked about the ‘Internet of things’ for many years; now it's finally becoming a reality. With the ability of more and more devices to include processing, storage and networking we need an easy way to write code for them that's reliable, has high performance, and is secure. Java fits all these requirements. With Java Embedded being a conference within a conference, I'm very excited about the possibilities of Java in this space.”

Check out Ritter’s sessions or say hi if you run into him.

Originally published on blogs.oracle.com/javaone.

Friday Nov 18, 2011

JavaFX 2.0 at Devoxx 2011

JavaFX had a big presence at Devoxx 2011 as witnessed by the number of sessions this year given by leading JavaFX movers and shakers.

  •     “JavaFX 2.0 -- A Java Developer's Guide” by Java Champions Stephen Chin and Peter Pilgrim
  •     “JavaFX 2.0 Hands On” by Jasper Potts and Richard Bair
  •     “Animation Bringing your User Interfaces to Life” by Michael Heinrichs and John Yoong (JavaFX development team)
  •     “Complete Guide to Writing Custom Bindings in JavaFX 2.0” by Michael Heinrichs (JavaFX development team)
  •     “Java Rich Clients with JavaFX 2.0” by Jasper Potts and Richard Bair
  •     “JavaFX Properties & Bindings for Experts” (and those who want to become experts) by Michael Heinrichs (JavaFX development team)
  •     “JavaFX Under the Hood” by Richard Bair
  •     “JavaFX Open Mic” with Jasper Potts and Richard Bair


With the release of JavaFX 2.0 and Oracle’s move towards an open development model with an open bug database already created, it’s a great time for developers to take the JavaFX plunge.


One Devoxx attendee, Mark Stephens, a developer at IDRsolutions blogged about a problem he was having setting up JavaFX on NetBeans to work on his Mac. He wrote:


“I’ve tried desperate measures (I even read and reread the instructions) but it did not help. Luckily, I am at Devoxx at the moment and there seem to be a lot of JavaFX gurus here (and it is running on all their Macs). So I asked them… It turns out that sometimes the software does not automatically pickup the settings like it should do if you give it the JavaFX SDK path. The solution is actually really simple (isn’t it always once you know). Enter these values manually and it will work.”


He simply entered certain values and his problem was solved. He thanked Java Champion Stephen Chin, “for a great talk at Devoxx and putting me out of my misery.”


JavaFX in Java Magazine

Over in the November/December 2011 issue of Java Magazine, Oracle’s Simon Ritter, well known for his creative Java inventions at JavaOne, has an article up titled “JavaFX and Swing Integration” in which he shows developers how to use the power of JavaFX to migrate Swing interfaces to JavaFX. The consensus among JavaFX experts is that JavaFX is the next step in the evolution of Java as a rich client platform.


In the same issue Java Champion and JavaFX maven James Weaver has an article, “Using Transitions for Animation in JavaFX 2.0”. In addition, Oracle’s Vice President of Java Client Development, Nandini Ramani, provides the keys to unlock the mysteries of JavaFX 2.0 in her Java Magazine interview.


Look for the JavaFX community to grow and flourish in coming years.

Tuesday Oct 18, 2011

JavaOne 2011 Recap

The 2011 JavaOne Conference, the sixteenth, had its own distinctive identity. The Conference theme, “Moving Java Forward,” coincided with the spirit that seemed to pervade the attendees – after more than a year-and-a-half of stewardship over Java, there was a clear and reassuring feeling that Oracle was doing its part to support Java and the Java community. Attendees that I spoke to felt that the conference was well put together and that the Java platform was being well served and indeed, moving forward.

For me, personally, it was a week in which my feet barely touched the ground as I rushed through tours from session to laptop to session, dashing off blogs and racing back to events, socials, awards ceremonies, BOF's and more.

The Keynotes

Start with the keynotes. Monday’s Technical Keynote debuted and open-sourced JavaFX 2.0, looked ahead to Java EE on the cloud and reminded us that there are about 6.5 billion people in the world and five billion Java Cards.

Tuesday’s Java Strategy Keynote offered Oracle's long-term vision for investment and innovation in Java.

Thursday’s Java Community Keynote while touched by the awareness of Steve Jobs’ passing, celebrated Java User Groups, Duke’s Choice and JCP award winners, and was capped off with the inimitable Java Posse.

Sessions, Sessions, and more Sessions

And then there were the sessions!

JavaFX 2.0, which was represented in more than 50 sessions, deserves special mention.

There was a lively panel discussion of the future of Java EE and the cloud.

Oracle’s Java Technology Evangelist Simon Ritter, in his session, showed off a fun gadget that worked via JavaFX 2.0.

Oracle’s Greg Bollella and Eric Jensen, gave a session titled “Telemetry and Synchronization with Embedded Java and Berkeley DB” that presented a vision of the potential future of Cyber-Physical Systems

Java Champion Michael Hüttermann explained best Agile ALM practices in a session.

Oracle’s Joseph Darcy took developers deeper into the heads and tails of Project Coin.

A JCP panel talked about JCP.next and the future of the JCP.

The JCP Awards gave recognition to some well-deserving people.

Oracle’s Kelly O’Hair gave a session on OpenJDK development best practices.

Oracle’s Terrence Barr showed developers how to get started with Embedded Java(http://blogs.oracle.com/javaone/entry/getting_started_with_embedded_java).

The Duke's Choice Awards reminded us of the sheer ingenuity of Java and Java developers.

Adam Bien, Java Champion, Java Rock Star and winner of Oracle Magazine’s ninth annual Editors' Choice award as Java Developer of the Year was all over the place.

Go to Parley’s.com to take in some of the great sessions.

Monday Oct 17, 2011

Interfacing with the Interface: JavaFX 2.0, Wiimote, Kinect, and More

Oracle’s Java Technology Evangelist Simon Ritter, one of the most fun-loving Java developers I know, with a long history of JavaOne gadgetry, gave a session (25011) at JavaOne 2011 on Wednesday afternoon showing how “open source APIs for the Kinect, the Wiimote combined with a tilt-compensated compass, a head-mounted stereoscopic display, and some old Sun SPOTs can build a truly immersive application.” The large audience appeared immersed throughout the session in Ritter's colorful and clearly delineated demos.

Simon RitterHe explained that the way we interact with computers is rapidly changing and that the days of the keyboard and mouse are gone. (Maybe so, but I'm sitting here using a keyboard and mouse.) And with his usual dramatic flair, Ritter invited attendees to behold the rise of something he calls the “gestural interface”.

The presentation used the latest JavaFX 2.0 "pure Java" implementation and began with an overview of the different components being used and explained how they are all brought together to enable the user to interact with interfaces in ways never before possible. Building an interface with the new JavaFX 2.0, Simon pointed out, is a continuation of the JavaFX product line, which is now a Java API with no scripting language and most APIs ported across while features such as binding and animation have required more thought. JavaFX now embraces more web technologies and enables the use of CSS for all JavaFX controls and a web specification for Drag-and-Drop. Also, developers use Scenegraph instead of DOM. He pointed to both pro’s and con’s of using JavaFX with gestural interfaces. On the plus side, it has built-in features such as data binding and animations, is a relatively simple API, and is able to build rich, visually appealing interfaces. On the negative side, JavaFX is currently limited to a 2D environment. The engineering team is currently working on 3D support.

He contrasted this with jMonkey Engine (jME), a game engine made especially for modern 3D development, written purely in Java and consisting of a collection of libraries that has game engine facilities and a full physics engine, but is hard to program and focuses on games and not generic interfaces. Ritter proceeded to demonstrate how to use the Nintendo Wiimote with a Java interface. The Wiimote communicates using a Bluetooth stack that needs to support L2CAP, has JSR-82 Java Bluetooth API implementation plus Wiimote-specific Java APIs (IR sensors, accelerometer, etc), most of which is free and open source.

He then presented a demo making use of the Sun Spot controller, a gyro sensor for precise rotation data, three bend sensors for finger movement for head tracking and data gloves, hand and head tracking sensors and hardware and more.

This followed with a demo using the Kinect Sensor with Java for 3D sensing. Not to be lost are his larger points: Java is still a really cool and powerful language. It is easy to interface with exotic hardware using free and open source libraries to build interesting applications using modern hardware.

After a brief Q&A, Simon -- as he always does -- implored attendees to be inspired and go build their own FUN stuff.

About

Insider News from the Java Team at Oracle!

duke
javeone logo
Links


Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
2
5
6
7
12
13
17
18
19
20
22
23
24
25
26
27
28
29
30
   
       
Today