SlideShare a Scribd company logo
1 of 76
Download to read offline
Gerrit
Grunwald
!
!
!
!

canoo
TWITTER: @hansolo_

Engineering AG

WEB: harmonic-code.org
first...
what embedded

IS...
...depends on
the point of view
Hardware

Developer
Software

Developer
JAVA ONE
2012
JavaFX
po

we

red

Kiosk
running
on...
Panda

Board
CPU : ARM A9 DualCore
Clock: 1.2 GHz
Ram : 1 GB
GPU : Power VR SGX540
Question...
Why Java?
Benefits of Java
Superb developer toolchain
★ Mature, fast, widespread
★ Thousands of libraries
★ Huge community
★ No standard on embedded
★
Ok but...
WTF ?

JavaFX
5

Possible

USE
CASES
★ Home

automation
★ Home entertainment
★ Medical devices
★ Information Kiosks
★ Education
WHAT IS JAVAFX ON

EMBEDDED ?
F
JAVA X

A Subset of
Without support for
Swing/SWT
★ System Menu
★ Drag'n Drop
★ WebView
★ Media (e.g. AudioClip)
★
Available JDK's

11/2013

★

JDK 7 (JFX 2)*

★

JDK 8 (JFX 8)
*dev. prev. from 2012
Target* footprint
6
1
~
N

B
M

I
M

*~32 MB today
WHAT ARE THE SUPPORTED

PLATFORMS ?
11/2013
BeagleBoard xM
!

!

Raspberry Pi
xM
BeagleBoard
ARM A8, 1 GHz
★ 512 MB RAM
★ 4 x USB
★ ETHERNET RJ45
★ HDMI
★ I2C, JTAG, SPI
★
running on

Ångström
based on Debian
JDK 7
JavaFX 2

xM
BeagleBoard

dev. preview of 2012
with SoftFloat support
Pi
Raspberry
ARM v6, 700 MHz
★ 512 MB RAM
★ 2 x USB
★ ETHERNET RJ45
★ HDMI, COMPOSITE
★ GPIO, I2C, UART, SPI
★
running on

Raspbian
based on Debian
JDK 8
JavaFX 8

Pi
Raspberry

weekly dev. preview
with HardFloat support
A typical

Setup
Pi
Raspberry
$ 70
Pi
Raspberry
$ 220
So...having

Java
means...
WRITE ONCE RUN

ANYWHERE

?
FIRST...

SOME
FACTS
Macbook Pro

BeagleBoard xM

Intel i7 Quadcore
2.3 GHz

ARM A8
1 Ghz

16 GB ram

512 MB ram

Nvidia GeForce
GT 650m

Power VR
SGX series 5
Macbook Pro

BeagleBoard xM

Nvidia GeForce
GT 650m

Power VR
SGX series 5

384 Cores
★ ~15 GPixel/s
★ ~600 GFlops
★

1 Core
★ ~500 MPixel/s
★ ~1.6 GFlops
★
Embedded

REQUIREMENTS
Requirements
★

touchable user interface

★

reasonable controls

★

no mouse and keyboard

★

restriced screen estate
CONCLUSION
NO

WRITE ONCE RUN

ANYWHERE

!
But you can

RECYCLE A LOT
60 cm

50 mm

FROM MOBILE

90 mm

34 cm

and learn
Some words about

Graphics
The Scene Graph
Root
Node

Branch

Leaf

Branch

Branch

Leaf

Leaf

Leaf

Branch
Retained Mode

Rendering
SPEED
LIMIT

60
The Scene Graph
Each node is about 5-7 kb
★ Desktop could handle up to
100000 nodes
★ Embedded devices can
handle up to 1000 nodes !!!
★
But what does it

mean ?
To visualize

Data…
do we need this ?
isn't this enough ?
or what about this
or even this...
IT'S ABOUT

CONTENT OVER CHROME
But why is it

important ?
CONTENT

CHROME

3 Nodes

245 Nodes
CONTENT

COMPROMISE 1

3 Nodes

33 Nodes
CONTENT

COMPROMISE 2

3 Nodes

16 Nodes
CONTENT

COMPROMISE 3

3 Nodes

6 Nodes
Things you

BETTER AVOID
Things to avoid
huge amount of nodes
★ intense use of animations
★ intense use of effects
★ many overlapping nodes
★ memory intense operations
★
Some UI

Examples
Example UI (200 nodes)
Example UI (100 nodes)
Example UI (60 nodes)
Conclusion
JAVA(FX) ON EMBEDDED

really rocks...
Demo

More Related Content

What's hot (6)

Optimized Android N MR1 + 4.4 Kernel
Optimized Android N MR1 + 4.4 KernelOptimized Android N MR1 + 4.4 Kernel
Optimized Android N MR1 + 4.4 Kernel
 
BUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
BUD17-DF15 - Optimized Android N MR1 + 4.9 KernelBUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
BUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
 
Programming esp8266
Programming esp8266Programming esp8266
Programming esp8266
 
Acer aspire one
Acer aspire oneAcer aspire one
Acer aspire one
 
O Meu Computador
O Meu ComputadorO Meu Computador
O Meu Computador
 
[ENG] Hacker halted 2012 - Zombie browsers, spiced with rootkit extensions
[ENG] Hacker halted 2012 - Zombie browsers, spiced with rootkit extensions[ENG] Hacker halted 2012 - Zombie browsers, spiced with rootkit extensions
[ENG] Hacker halted 2012 - Zombie browsers, spiced with rootkit extensions
 

Viewers also liked

Reactieve applicaties; klaar voor de toekomst
Reactieve applicaties; klaar voor de toekomstReactieve applicaties; klaar voor de toekomst
Reactieve applicaties; klaar voor de toekomst
NLJUG
 
Year of the Chayil Woman!
Year of the Chayil Woman!Year of the Chayil Woman!
Year of the Chayil Woman!
Stella R. Payton
 
Husdjurens dag
Husdjurens dagHusdjurens dag
Husdjurens dag
Lucke124
 
Thuyet trinh ky nang mem 03
Thuyet trinh ky nang mem 03Thuyet trinh ky nang mem 03
Thuyet trinh ky nang mem 03
maicongdoanfpt
 

Viewers also liked (8)

Reni jurnal bp
Reni jurnal bpReni jurnal bp
Reni jurnal bp
 
Reactieve applicaties; klaar voor de toekomst
Reactieve applicaties; klaar voor de toekomstReactieve applicaties; klaar voor de toekomst
Reactieve applicaties; klaar voor de toekomst
 
Year of the Chayil Woman!
Year of the Chayil Woman!Year of the Chayil Woman!
Year of the Chayil Woman!
 
Husdjurens dag
Husdjurens dagHusdjurens dag
Husdjurens dag
 
Thuyet trinh ky nang mem 03
Thuyet trinh ky nang mem 03Thuyet trinh ky nang mem 03
Thuyet trinh ky nang mem 03
 
JavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavaJavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma Java
 
2014 cloud trends every CFO needs to know
2014 cloud trends every CFO needs to know2014 cloud trends every CFO needs to know
2014 cloud trends every CFO needs to know
 
Analysis of performance cum competency score card of executives
Analysis of performance cum competency score card of executivesAnalysis of performance cum competency score card of executives
Analysis of performance cum competency score card of executives
 

Similar to Fun with JavaFX8 on the Raspberry Pi

0xdroid osdc-2010-100426084937-phpapp02
0xdroid osdc-2010-100426084937-phpapp020xdroid osdc-2010-100426084937-phpapp02
0xdroid osdc-2010-100426084937-phpapp02
chon2010
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
Arka Ghosh
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
Arka Ghosh
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
Arka Ghosh
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
Arka Ghosh
 

Similar to Fun with JavaFX8 on the Raspberry Pi (20)

Porting games from ps3 or web to shield and ouya [final]
Porting games from ps3 or web to shield and ouya [final]Porting games from ps3 or web to shield and ouya [final]
Porting games from ps3 or web to shield and ouya [final]
 
Hacking with ARM Mobile devices on Linux
Hacking with ARM Mobile devices on LinuxHacking with ARM Mobile devices on Linux
Hacking with ARM Mobile devices on Linux
 
High performance json- postgre sql vs. mongodb
High performance json- postgre sql vs. mongodbHigh performance json- postgre sql vs. mongodb
High performance json- postgre sql vs. mongodb
 
LMG Lightning Talks - SFO17-205
LMG Lightning Talks - SFO17-205LMG Lightning Talks - SFO17-205
LMG Lightning Talks - SFO17-205
 
Power Mac G5 ( Late 2005) Technical Specifications
Power  Mac  G5 ( Late 2005)    Technical  SpecificationsPower  Mac  G5 ( Late 2005)    Technical  Specifications
Power Mac G5 ( Late 2005) Technical Specifications
 
Power Mac G5 ( Late 2005) Technical Specifications
Power  Mac  G5 ( Late 2005)    Technical  SpecificationsPower  Mac  G5 ( Late 2005)    Technical  Specifications
Power Mac G5 ( Late 2005) Technical Specifications
 
IoT consideration selection
IoT consideration selectionIoT consideration selection
IoT consideration selection
 
0xdroid osdc-2010-100426084937-phpapp02
0xdroid osdc-2010-100426084937-phpapp020xdroid osdc-2010-100426084937-phpapp02
0xdroid osdc-2010-100426084937-phpapp02
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
 
The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game Engines
 
Computer systems
Computer systems Computer systems
Computer systems
 
Panda board
Panda boardPanda board
Panda board
 
Vpu technology &gpgpu computing
Vpu technology &gpgpu computingVpu technology &gpgpu computing
Vpu technology &gpgpu computing
 
High Performance Scaling Techniques in Golang Using Go Assembly
High Performance Scaling Techniques in Golang Using Go AssemblyHigh Performance Scaling Techniques in Golang Using Go Assembly
High Performance Scaling Techniques in Golang Using Go Assembly
 
Embedded Graphics Drivers in Mesa (ELCE 2019)
Embedded Graphics Drivers in Mesa (ELCE 2019)Embedded Graphics Drivers in Mesa (ELCE 2019)
Embedded Graphics Drivers in Mesa (ELCE 2019)
 
meetPHP#8 - PHP startups prototypes
meetPHP#8 - PHP startups prototypesmeetPHP#8 - PHP startups prototypes
meetPHP#8 - PHP startups prototypes
 
Quick spec HP Zbook.pdf
Quick spec HP Zbook.pdfQuick spec HP Zbook.pdf
Quick spec HP Zbook.pdf
 
Linxu conj2016 96boards
Linxu conj2016 96boardsLinxu conj2016 96boards
Linxu conj2016 96boards
 

More from NLJUG

Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
NLJUG
 

More from NLJUG (20)

The future of Web-Scale - Johan Tillema, Rene Boere & Chris Quach
The future of Web-Scale - Johan Tillema, Rene Boere & Chris QuachThe future of Web-Scale - Johan Tillema, Rene Boere & Chris Quach
The future of Web-Scale - Johan Tillema, Rene Boere & Chris Quach
 
Speedy perception trumps speedy reception–smart asynchronous interactions - L...
Speedy perception trumps speedy reception–smart asynchronous interactions - L...Speedy perception trumps speedy reception–smart asynchronous interactions - L...
Speedy perception trumps speedy reception–smart asynchronous interactions - L...
 
Decoding the airspace above you with Java and $7 hardware - Bert Jan Schrijver
Decoding the airspace above you with Java and $7 hardware - Bert Jan SchrijverDecoding the airspace above you with Java and $7 hardware - Bert Jan Schrijver
Decoding the airspace above you with Java and $7 hardware - Bert Jan Schrijver
 
Using Docker to Develop, Test and Run Maven Projects - Wouter Danes
Using Docker to Develop, Test and Run Maven Projects - Wouter DanesUsing Docker to Develop, Test and Run Maven Projects - Wouter Danes
Using Docker to Develop, Test and Run Maven Projects - Wouter Danes
 
Kill the mutants and test your tests - Roy van Rijn
Kill the mutants and test your tests - Roy van RijnKill the mutants and test your tests - Roy van Rijn
Kill the mutants and test your tests - Roy van Rijn
 
Real-time user interfaces - sosm gewoon makkelijker - Allard Buijze
Real-time user interfaces - sosm gewoon makkelijker - Allard BuijzeReal-time user interfaces - sosm gewoon makkelijker - Allard Buijze
Real-time user interfaces - sosm gewoon makkelijker - Allard Buijze
 
The end of traditional enterprise IT - ING's journey to the next generation I...
The end of traditional enterprise IT - ING's journey to the next generation I...The end of traditional enterprise IT - ING's journey to the next generation I...
The end of traditional enterprise IT - ING's journey to the next generation I...
 
Performance van Java 8 en verder - Jeroen Borgers
Performance van Java 8 en verder - Jeroen BorgersPerformance van Java 8 en verder - Jeroen Borgers
Performance van Java 8 en verder - Jeroen Borgers
 
Introduction to Reactive with Play and Akka - Markus Jura
Introduction to Reactive with Play and Akka - Markus JuraIntroduction to Reactive with Play and Akka - Markus Jura
Introduction to Reactive with Play and Akka - Markus Jura
 
Web-scale op basis van Hadoop en Akka Reactive Streams - Johan Tillema, Rene ...
Web-scale op basis van Hadoop en Akka Reactive Streams - Johan Tillema, Rene ...Web-scale op basis van Hadoop en Akka Reactive Streams - Johan Tillema, Rene ...
Web-scale op basis van Hadoop en Akka Reactive Streams - Johan Tillema, Rene ...
 
Workshop angular dart presentatie - Atos
Workshop angular dart presentatie - AtosWorkshop angular dart presentatie - Atos
Workshop angular dart presentatie - Atos
 
Workshop spring boot presentatie - Atos
Workshop spring boot presentatie - AtosWorkshop spring boot presentatie - Atos
Workshop spring boot presentatie - Atos
 
Cultivating the jenkins job jungle with groovy - Patrick van Dissel
Cultivating the jenkins job jungle with groovy - Patrick van DisselCultivating the jenkins job jungle with groovy - Patrick van Dissel
Cultivating the jenkins job jungle with groovy - Patrick van Dissel
 
Rethink your architecture - Marten Deinum
Rethink your architecture - Marten DeinumRethink your architecture - Marten Deinum
Rethink your architecture - Marten Deinum
 
Evolutionary Algorithms: the key to solving complex Java puzzles! - Bas knopper
Evolutionary Algorithms: the key to solving complex Java puzzles! - Bas knopperEvolutionary Algorithms: the key to solving complex Java puzzles! - Bas knopper
Evolutionary Algorithms: the key to solving complex Java puzzles! - Bas knopper
 
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
Modularity and Domain Driven Design; a killer Combination? - Tom de Wolf & St...
 
Apache Wicket: 10 jaar en verder - Martijn Dashorst
Apache Wicket: 10 jaar en verder - Martijn DashorstApache Wicket: 10 jaar en verder - Martijn Dashorst
Apache Wicket: 10 jaar en verder - Martijn Dashorst
 
Opening - Bert Ertman
Opening - Bert ErtmanOpening - Bert Ertman
Opening - Bert Ertman
 
Returning the right results - Jettro Coenradie
Returning the right results - Jettro CoenradieReturning the right results - Jettro Coenradie
Returning the right results - Jettro Coenradie
 
Reactive programming met Java 8 en Java EE 7 - Martijn Blankestijn
Reactive programming met Java 8 en Java EE 7 - Martijn BlankestijnReactive programming met Java 8 en Java EE 7 - Martijn Blankestijn
Reactive programming met Java 8 en Java EE 7 - Martijn Blankestijn
 

Recently uploaded

Recently uploaded (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Fun with JavaFX8 on the Raspberry Pi