Java on Raspberry Pi LabStephen ChinJava Technology AmbassadorJavaOne Content Chair
@steveonjava
What Runs Java?
=
Have Java With Your DessertRaspberry Pi
Chalkboard Electronics Touchscreen
10" or 7" Form Factor
Connects via HDMI/USB
Tested with JavaFX 8
10% Exclusive Discount:
G1F0U796Z083
GPIO access
How to Setup Your Pi
> Step 1: Install Linux
> Step 2: Download/Copy Java 8 for ARM EA
> Step 3: Deploy and Run JVM Language Apps
http://steveonjava.com/javafx-on-raspberry-pi-3-easy-steps/
Electronic Safety!
> Unplug from wall before wiring
> Get rid of static by touching a metal surface
> Don't touch exposed wires/metal
> Never remove/insert SD Card while power is on
7
What Comes in Your Lab Kit
1. Touch Screen2. SD Card3. Keyboard4. Yellow Box:
Power Adapter LVDS Cable/Board Raspberry Pi Model B Mini-USB Cable (power) Micro-USB Cable (keyboard) Wifi Adapter
Please Save All the Packaging for Later
Hooking Up the Pi (Part A)
1. Insert the SD Card in to the Pi Will appear upside down when looking at the top
of your Pi
2. Insert the HDMI board into the Pi's HDMI jack
3. Connect the Pi power to the HDMI board Use the Micro USB Cable (short one)
9
Important: Connect everything before plugging into the wall
Hooking Up the Pi (Part B)
4. Slide the LCD cable into the back of the display Side with gold connectors goes up Be careful, the connector is fragile!
5. Insert the wifi adapter into one of the USB ports6. Hook up the USB keyboard
Use the Mini USB cable (long one)7. [Optional ] Connect the USB end to one of the Pi's USB host ports
This provides touch input – will need to unplug wifi or keyboard
10
Verify connections and plug into power now
Is it Working?
> Should get a bunch of flashing LEDs to indicate booting Boot takes approx 30 seconds
> The LCD screen should light up Might be dim if the light sensor is obstructed
> And you will should see a Linux boot screen with lots of text
Logging In
At the login prompt type your username:> piAnd enter the password:> raspberry
Running the JavaFX Sample Application
Change directory to the project folder> cd MaryHadALittleLambdaRun the build script> ant
14
Connecting to the Wifi network
> On your computer: SSID: NightHacking Password: steveonjava
> To get the Pi's ip address1. Type "ifconfig"2. Look for the "wlan0" settings
15
Downloading Lab Software
> Start a web browser and navigate to the Pi's IP: http://10.0.1.xx (something like this)
> Download and install Java 8 SDK Make sure you use this SDK for compiling and testing on the Pi
> Grab an SFTP and SSH client if you need one Real hackers use the command line!
Interacting With Your Pi
> Connect via SSH command line or Putty ssh [email protected] Password: raspberry
> Connect via SFTP command line or GUI Client sftp [email protected] Password: raspberry
Accept the generated SSH certificate from your Pi
To make an application run
> Build and package your application as a jar> Copy this to the Raspberry Pi using SFTP> Execute it via SSH:> java –jar YourApp.jar
Hacking Time!
Stuff to do…
> Changes to MaryHadALittleLambda: Change the number of sheep Make the rainbow have different colors Change the fox size to be fatter/skinnier Add new graphics (additional image files under images/extra)
> Playing with hardware Pi4j is in /opt/pi4j Check out the sample and try blinking the LED (pin wiring is different) Come up and get additional hardware to play with
19
Pi4J Help
> The samples build script is hardcoded to /opt/pi4j directory. Easiest fix is to rename the folder to match this.
> Pi4j needs root access to use GPIO (use "sudo")
> Debian uses secure paths for sudo by default. Either disable this, or type the full path to the java executable (easily discovered using "which java")
20
LED is on GPIO 7
Using the other sensors…
> Read Angela's blog here: https://blogs.oracle.com/acaicedo/entry/
some_samples_using_gpio_and> Download the source for the…
Pressure/Temperature sensor: https://blogs.oracle.com/acaicedo/resource/RPi-HOL/Sensor.java
Accelerometer/Gyroscope/Compass sensor: https://blogs.oracle.com/acaicedo/resource/RPi-HOL/Sensor.java
21
Stephen Chintweet: @steveonjavablog: http://steveonjava.com
nighthacking.com
Real GeeksLive Hacking
NightHacking Tour
Safe Harbor Statement
The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
Top Related