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 stan...
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...
Macbook Pro

BeagleBoard xM

Nvidia GeForce
GT 650m

Power VR
SGX series 5

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

1 Co...
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 10...
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
★ memor...
Some UI

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

really rocks...
Demo
Java fx on raspberry pi   gerrit grunwald
Upcoming SlideShare
Loading in...5
×

Java fx on raspberry pi gerrit grunwald

710

Published on

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
710
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Java fx on raspberry pi gerrit grunwald

  1. 1. Gerrit Grunwald ! ! ! ! canoo TWITTER: @hansolo_ Engineering AG WEB: harmonic-code.org
  2. 2. first...
  3. 3. what embedded IS...
  4. 4. ...depends on the point of view
  5. 5. Hardware Developer
  6. 6. Software Developer
  7. 7. JAVA ONE 2012
  8. 8. JavaFX po we red Kiosk
  9. 9. running on...
  10. 10. Panda Board
  11. 11. CPU : ARM A9 DualCore Clock: 1.2 GHz Ram : 1 GB GPU : Power VR SGX540
  12. 12. Question...
  13. 13. Why Java?
  14. 14. Benefits of Java Superb developer toolchain ★ Mature, fast, widespread ★ Thousands of libraries ★ Huge community ★ No standard on embedded ★
  15. 15. Ok but...
  16. 16. WTF ? JavaFX
  17. 17. 5 Possible USE CASES
  18. 18. ★ Home automation ★ Home entertainment ★ Medical devices ★ Information Kiosks ★ Education
  19. 19. WHAT IS JAVAFX ON EMBEDDED ?
  20. 20. F JAVA X A Subset of
  21. 21. Without support for Swing/SWT ★ System Menu ★ Drag'n Drop ★ WebView ★ Media (e.g. AudioClip) ★
  22. 22. Available JDK's 11/2013 ★ JDK 7 (JFX 2)* ★ JDK 8 (JFX 8) *dev. prev. from 2012
  23. 23. Target* footprint 6 1 ~ N B M I M *~32 MB today
  24. 24. WHAT ARE THE SUPPORTED PLATFORMS ? 11/2013
  25. 25. BeagleBoard xM ! ! Raspberry Pi
  26. 26. xM BeagleBoard
  27. 27. ARM A8, 1 GHz ★ 512 MB RAM ★ 4 x USB ★ ETHERNET RJ45 ★ HDMI ★ I2C, JTAG, SPI ★
  28. 28. running on Ångström based on Debian
  29. 29. JDK 7 JavaFX 2 xM BeagleBoard dev. preview of 2012 with SoftFloat support
  30. 30. Pi Raspberry
  31. 31. ARM v6, 700 MHz ★ 512 MB RAM ★ 2 x USB ★ ETHERNET RJ45 ★ HDMI, COMPOSITE ★ GPIO, I2C, UART, SPI ★
  32. 32. running on Raspbian based on Debian
  33. 33. JDK 8 JavaFX 8 Pi Raspberry weekly dev. preview with HardFloat support
  34. 34. A typical Setup
  35. 35. Pi Raspberry
  36. 36. $ 70
  37. 37. Pi Raspberry
  38. 38. $ 220
  39. 39. So...having Java means...
  40. 40. WRITE ONCE RUN ANYWHERE ?
  41. 41. FIRST... SOME FACTS
  42. 42. 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
  43. 43. 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 ★
  44. 44. Embedded REQUIREMENTS
  45. 45. Requirements ★ touchable user interface ★ reasonable controls ★ no mouse and keyboard ★ restriced screen estate
  46. 46. CONCLUSION
  47. 47. NO WRITE ONCE RUN ANYWHERE !
  48. 48. But you can RECYCLE A LOT
  49. 49. 60 cm 50 mm FROM MOBILE 90 mm 34 cm and learn
  50. 50. Some words about Graphics
  51. 51. The Scene Graph Root Node Branch Leaf Branch Branch Leaf Leaf Leaf Branch
  52. 52. Retained Mode Rendering
  53. 53. SPEED LIMIT 60
  54. 54. 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 !!! ★
  55. 55. But what does it mean ?
  56. 56. To visualize Data…
  57. 57. do we need this ?
  58. 58. isn't this enough ?
  59. 59. or what about this
  60. 60. or even this...
  61. 61. IT'S ABOUT CONTENT OVER CHROME
  62. 62. But why is it important ?
  63. 63. CONTENT CHROME 3 Nodes 245 Nodes
  64. 64. CONTENT COMPROMISE 1 3 Nodes 33 Nodes
  65. 65. CONTENT COMPROMISE 2 3 Nodes 16 Nodes
  66. 66. CONTENT COMPROMISE 3 3 Nodes 6 Nodes
  67. 67. Things you BETTER AVOID
  68. 68. Things to avoid huge amount of nodes ★ intense use of animations ★ intense use of effects ★ many overlapping nodes ★ memory intense operations ★
  69. 69. Some UI Examples
  70. 70. Example UI (200 nodes)
  71. 71. Example UI (100 nodes)
  72. 72. Example UI (60 nodes)
  73. 73. Conclusion
  74. 74. JAVA(FX) ON EMBEDDED really rocks...
  75. 75. Demo
  1. Gostou de algum slide específico?

    Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.

×