#JCConf
Java Embedded 與
Raspberry Pi
張益裕
@michaelandjava
恆逸教育訓練中⼼心講師
Agenda
• Internet of Things
• Java Embedded 8
• Raspberry Pi
Man-to-Machine
Machine-to-Machine
Internet of Things
• Computer-based but unlike desktop
computer and their applications
• They are dedicated, not general purpose
• They are custom hardware
Headless Embedded System
Headfull Embedded System
Java Embedded System
• Java Platform, Standard Edition (Java
SE 8)
• Java SE Embedded 8
• Java ME Embedded 8
• Java Card
Java Embedded FrameworkPlatformFootprint
Java Card Java ME Embedded Java SE Embedded
Java SE 8
• Java Platform, Standard Edition (Java
SE 8)
• Java SE Embedded 8
• Java ME Embedded 8
• Java Card
Java SE Embedded 8
• Internet of Things Applications
• New Java 8 language features
• Headless and Headful Support
• Performance optimizations for ARM processor-
based systems
• Compact Profiles
• Minimal JVM
Custom JRE
Optional Components
Compact3 Class
Libraries
Compact2 Class
Libraries
Base Compact1 Classes
Hotspot VM
UI and Toolkits
Integration Libraries
Other Base Libraries
Lang and Util
Libraries
Hotspot VM
Compact Profiles Full JRE
3
2
1
Java ME Embedded 8
• Java runtime based on Java ME CLDC 8
• Java ME Embedded Profile (MEEP) 8
• Optimized for Embedded
• Device I/O APIs
• Headless Embedded System
Java ME EmbeddedPlatformRuntime
ToolsServices
Raspberry Pi
• Low cost, credit-card size computer
• A capable little device
• Enables people of all ages to explore
computing and programing
• Interact with the outside world
Raspberry Pi Family
Raspberry Pi Zero
65mm
30mm
Development Board
• Cubieboard
• Beagleboard
• Banana Pi
Java and Raspberry Pi
Java Embedded + RPi + EV3
Smart Parking System
NFC Reader
Raspberry Pi
Lego Mindstorms EV3
Parking Space
Smart Parking System Demo
Online Order
Web Application
HTTP	
  Request
HTTP	
  Response
Touch and Take
Embedded App
Web Application
HTTPNFC
• MQTT is a machine-to-machine
(M2M)/"Internet of Things"
connectivity protocol.
• It was designed as an extremely
lightweight publish/subscribe
messaging transport.
M2M Protocol
PiCommander
Remote Controller
MQTT
Remote Controller
Subscribe
GPIO 1,ON
GPIO 1,OFF
GPIO 1,ON
GPIO 1,OFF
Publish
Remote Controller
Remote Listener
MQTT
Remote Listener
Subscribe
Subscribe
Subscribe
GPIO 5,ON
GPIO
5,ON
GPIO
5,ON
GPIO 5,ON
Publish
Remote Listener
Demo
Thanks
• github.com/macdidi5
• Smart Parking System
• PiCommander - Java Embedded and Android
• PiTurtleCar - Bluetooth RC Car

JCConf 2015 Java Embedded and Raspberry Pi