SlideShare a Scribd company logo
1
IoT - LoRa & Java on the Pi
CC IoT
Tim Ysewyn
Frederick Bousson
Kevin Van den Abeele
Guest speaker
Dave De Groote
2
Agenda
In today's session:
● News update
● Theoretical part
○ What is LoRa
○ Who is working on/with LoRa
● Practical part
○ Java on the raspberry pi
○ Getting started
○ A simple example
○ Alternatives to Java?
● Q&A
3
Can’t keep up? Don’t understand something?
4
News update
5
News update
Latest news from IoT land:
● Proximus LoRa beta has started in Belgium
○ More later in this session!
● Element14 launched the new Raspberry Pi Zero
○ Very very small!
○ Single core CPU & 512MB Ram
○ https://www.raspberrypi.org/products/pi-zero/
○ Costs only 5 dollar!
6
What is LoRa
7
What is LoRa
8
LoRa Technology (Long Range Low Power)
9
LoRa Technology (Long Range Low Power)
10
LoRa Devices
Base station
Any type is possible as long as it is connected with a LoRa chip
CO2, PIR, Humidity, Luminance, Temperature, Pressure, …
Sensor Types
banana for scale
11
LoRa Alliance
https://www.lora-alliance.org
12
Ordina At Proximus
- MyThings Builder
▪ Charts
▪ Managing containers of sensors
(Battery, temperature, luminance, …)
- MyThings Manager
▪ Online onboarding of sensors
▪ User management
- MyThings Scanner
▪ Customer can go into the field and
onboard sensors (scanning QR code of sensor)
13
Demo
14
LoRa in Belgium
15
LoRa in Belgium
Proximus has launched its LoRa Beta program in Belgium
● Available in 10 areas (More to come in 2016)
● Preview access to SEaaS (Sensor as a Service) API
● 6 months free access to the network
○ There however is a message quota
○ 15k messages in total => 84 upstream, 12 downstream /day
○ Very limited!
Proximus LoRa website:
http://www.proximus.be/nl/id_cl_iot/bedrijven-en-overheden/producten-en-diensten/internet-
en-netwerken/internet-of-things.html
Dev kits (we will probably get two or three):
http://www.allthingstalk.com/lora-rapid-development-kit
16
Setting up your Raspberry pi
17
Setting up your Raspberry pi
Useful links:
● Main Raspberry Pi website
○ Contains many resources and is a good place to start!
○ https://www.raspberrypi.org/
○ Has links and images for the most common OSs
● Magpi
○ Website (and magazine) focussing on the Raspberry Pi
○ https://www.raspberrypi.org/magpi/
○ Good source for extra information and articles
18
Setting up your Raspberry pi
● Insert SD card in your mac or windows pc/laptop.
● Open “cmdline.txt” and append the following at the end: “ip=169.254.0.2”
○ Make sure to have a space after the last item before adding the ip
○ Make sure NOT to add a newline after the ip!
○ Save the file and put the SD card back in the raspberry pi
● Connect your raspberry pi to the power and connect it directly to the computer via an
ethernet cable
● Wait a few minutes...
● Open an ssh client and connect to your raspberry pi
○ On mac: ssh pi@169.254.0.2 (the default password is raspberry)
● Execute the following command: “sudo raspi-config”
○ Have a look around in the settings and edit where required
○ Finish settings and reboot your pi (this will disconnect the ssh session)
● Download the latest FileZilla release
● Extract/install FileZilla
● Open FileZilla and connect to your raspberry pi
○ sftp://169.254.0.2 user:pi password:raspberry
19
Java on the Raspberry Pi
20
Java on the Raspberry Pi
Java runs pretty well on the Raspberry Pi (even more so on our model 2)
The Raspbian OS has Java 1.8u25 installed by default!
For updates of java:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Download the ARMV6/V7 Hard float ABI or update via the built in package manager!
Capabilities:
● Most normal jars will run just fine (albeit slower and more memory limited)
● Can run complex UIs when using JavaFx
○ Has full hardware acceleration for UI rendering
○ Forget swing and awt!
○ The devoxx screens were running on a Pi with JavaFx UI
21
A Simple Example
A simple web server application:
● Clone the following repo: https://github.com/ordina-oraj/IoT.git
● Make sure you have gradle installed!
○ On osx: “brew install gradle”
○ Import the project in IntelliJ and when asked for the gradle folder:
“/usr/local/Cellar/gradle/2.1/libexec”
● Compile the application by running the gradle task “build”
● Open filezilla and connect to the Pi
● Copy the generated jar file (in /build/libs/) to a folder on your Pi
● Connect to the Pi via SSH and go to the directory where you placed the jar
● Run the following command: “java -jar NameOfYourJar.jar”
○ For remote debug prepend -jar in the command with: “-agentlib:
jdwp=transport=dt_socket,server=y,suspend=n,address=5005”
● On your host, open a browser and go to: http://169.254.0.2:8080/
○ If you see a welcome page, your setup was successful!
22
A simple example… Continued
This is up to you!
Take a look in the code, and implement something fancy for the “impress” me section.
A few ideas:
● A second more extensive rest service
● A websocket implementation?
○ Dare we say a chat client?
● A file upload
● A form to submit
● ...
23
Java and IO pins
24
Java and IO pins
The Pi has a bunch of IO pins. These can be used for several things.
Model A and B:
● 26 pins
● https://www.raspberrypi.org/documentation/usage/gpio/
● 17 of 26 pins are for GPIO
Model A+, B+, Zero and 2:
● 40 pins
● https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/
● 26 of 40 pins are for GPIO
These GPIO pins can be used to collect data from sensors, to drive servos, LEDs and other
peripherals.
http://wiringpi.com/pins/
25
Java and IO pins… Continued
26
Java and IO pins… Continued
To use the GPIO pins from within Java an extra library is needed, as there is no native
support within Java.
This is where PI4J comes in. It is a easy to use library to control the GPIO pins:
Installation is easy and is documented on http://pi4j.com/install.html
Usage is also not that difficult: http://pi4j.com/usage.html
The project on our github contains the pi4j library and some example code to get you started.
=> DEMO TIME!
27
Alternatives?
28
Alternatives?
What about non Java languages on the Pi?
● Python
● C / C++
● Javascript (via node.js or io.js)
● …
Node.js:
Node is very simple to setup and use. It makes use of Google’s V8 javascript engine and is
very fast.
Node itself is single threaded but dispatches operations like IO the separate threads.
It can be clustered and allowed to run on multiple threads via more node workers.
Program for Node run in Javascript and thus required no manual compilation before running.
This makes it very handy for rapid development.
More about Node.js in our next session! ;)
29
Q&A
30
Until next time
Ad

More Related Content

What's hot (20)

Raspberry pi
Raspberry piRaspberry pi
Raspberry pi
Sachin More
 
IPv6: A Digital Game Changer
IPv6: A Digital Game ChangerIPv6: A Digital Game Changer
IPv6: A Digital Game Changer
CARLOS RALLI-UCENDO
 
Raspberry Pi and Amateur Radio
Raspberry Pi and Amateur RadioRaspberry Pi and Amateur Radio
Raspberry Pi and Amateur Radio
Kevin Hooke
 
Low Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PILow Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PI
Varun A M
 
Building the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry PiBuilding the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry Pi
Neil Broers
 
Raspberry Pi
Raspberry PiRaspberry Pi
Raspberry Pi
Noona marja
 
Python in raspberry pi
Python in raspberry piPython in raspberry pi
Python in raspberry pi
Sudar Muthu
 
Presentation on Raspberry pi
Presentation on Raspberry piPresentation on Raspberry pi
Presentation on Raspberry pi
OpenDev
 
Pi Is For Python
Pi Is For PythonPi Is For Python
Pi Is For Python
Brad Fortner
 
DigiPinguïns: demo Raspberry Pi (Koen De Smet)
DigiPinguïns: demo Raspberry Pi (Koen De Smet)DigiPinguïns: demo Raspberry Pi (Koen De Smet)
DigiPinguïns: demo Raspberry Pi (Koen De Smet)
Avansa Mid- en Zuidwest
 
Raspberry Pi Using Python
Raspberry Pi Using PythonRaspberry Pi Using Python
Raspberry Pi Using Python
Seggy Segaran
 
Interfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the WorldInterfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the World
Omer Kilic
 
Raspberry Pi in education, resource presentation.
Raspberry Pi in education, resource presentation.Raspberry Pi in education, resource presentation.
Raspberry Pi in education, resource presentation.
Mike Stringer
 
Java Device I/O at Raspberry PI to Build a Candy Vending Machine
Java Device I/O at Raspberry PI to Build a Candy Vending MachineJava Device I/O at Raspberry PI to Build a Candy Vending Machine
Java Device I/O at Raspberry PI to Build a Candy Vending Machine
Jeff Prestes
 
Gettiing Started with IoT using Raspberry Pi and Python
Gettiing Started with IoT using Raspberry Pi and PythonGettiing Started with IoT using Raspberry Pi and Python
Gettiing Started with IoT using Raspberry Pi and Python
Martin Christen
 
Raspberry Pi and Amateur Radio - 2020 update
Raspberry Pi and Amateur Radio - 2020 updateRaspberry Pi and Amateur Radio - 2020 update
Raspberry Pi and Amateur Radio - 2020 update
Kevin Hooke
 
Raspberry Pi (Introduction)
Raspberry Pi (Introduction)Raspberry Pi (Introduction)
Raspberry Pi (Introduction)
Mandeesh Singh
 
Raspberry pi intro.
Raspberry pi intro.Raspberry pi intro.
Raspberry pi intro.
Saiko Saiko
 
Raspberry Pi - HW/SW Application Development
Raspberry Pi - HW/SW Application DevelopmentRaspberry Pi - HW/SW Application Development
Raspberry Pi - HW/SW Application Development
Corley S.r.l.
 
Project Humix overview
Project Humix overviewProject Humix overview
Project Humix overview
Jeffrey Liu
 
Raspberry Pi and Amateur Radio
Raspberry Pi and Amateur RadioRaspberry Pi and Amateur Radio
Raspberry Pi and Amateur Radio
Kevin Hooke
 
Low Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PILow Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PI
Varun A M
 
Building the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry PiBuilding the Internet of Things with Raspberry Pi
Building the Internet of Things with Raspberry Pi
Neil Broers
 
Python in raspberry pi
Python in raspberry piPython in raspberry pi
Python in raspberry pi
Sudar Muthu
 
Presentation on Raspberry pi
Presentation on Raspberry piPresentation on Raspberry pi
Presentation on Raspberry pi
OpenDev
 
DigiPinguïns: demo Raspberry Pi (Koen De Smet)
DigiPinguïns: demo Raspberry Pi (Koen De Smet)DigiPinguïns: demo Raspberry Pi (Koen De Smet)
DigiPinguïns: demo Raspberry Pi (Koen De Smet)
Avansa Mid- en Zuidwest
 
Raspberry Pi Using Python
Raspberry Pi Using PythonRaspberry Pi Using Python
Raspberry Pi Using Python
Seggy Segaran
 
Interfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the WorldInterfacing the Raspberry Pi to the World
Interfacing the Raspberry Pi to the World
Omer Kilic
 
Raspberry Pi in education, resource presentation.
Raspberry Pi in education, resource presentation.Raspberry Pi in education, resource presentation.
Raspberry Pi in education, resource presentation.
Mike Stringer
 
Java Device I/O at Raspberry PI to Build a Candy Vending Machine
Java Device I/O at Raspberry PI to Build a Candy Vending MachineJava Device I/O at Raspberry PI to Build a Candy Vending Machine
Java Device I/O at Raspberry PI to Build a Candy Vending Machine
Jeff Prestes
 
Gettiing Started with IoT using Raspberry Pi and Python
Gettiing Started with IoT using Raspberry Pi and PythonGettiing Started with IoT using Raspberry Pi and Python
Gettiing Started with IoT using Raspberry Pi and Python
Martin Christen
 
Raspberry Pi and Amateur Radio - 2020 update
Raspberry Pi and Amateur Radio - 2020 updateRaspberry Pi and Amateur Radio - 2020 update
Raspberry Pi and Amateur Radio - 2020 update
Kevin Hooke
 
Raspberry Pi (Introduction)
Raspberry Pi (Introduction)Raspberry Pi (Introduction)
Raspberry Pi (Introduction)
Mandeesh Singh
 
Raspberry pi intro.
Raspberry pi intro.Raspberry pi intro.
Raspberry pi intro.
Saiko Saiko
 
Raspberry Pi - HW/SW Application Development
Raspberry Pi - HW/SW Application DevelopmentRaspberry Pi - HW/SW Application Development
Raspberry Pi - HW/SW Application Development
Corley S.r.l.
 
Project Humix overview
Project Humix overviewProject Humix overview
Project Humix overview
Jeffrey Liu
 

Viewers also liked (20)

Intro Lora - Makers.ID Meetup
Intro Lora - Makers.ID MeetupIntro Lora - Makers.ID Meetup
Intro Lora - Makers.ID Meetup
Mif Masterz
 
LoRa and NB-IoT
LoRa and NB-IoT LoRa and NB-IoT
LoRa and NB-IoT
Darshan Patil
 
LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosLPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
Peter R. Egli
 
LoRa WAN - Connecting the Internet of Things
LoRa WAN - Connecting the Internet of ThingsLoRa WAN - Connecting the Internet of Things
LoRa WAN - Connecting the Internet of Things
Kent Plummer
 
Understand LPWA tetchnologies (Sigfox and LoRa)
Understand LPWA tetchnologies (Sigfox and LoRa)Understand LPWA tetchnologies (Sigfox and LoRa)
Understand LPWA tetchnologies (Sigfox and LoRa)
Robert V
 
LPWAN for IoT
LPWAN for IoTLPWAN for IoT
LPWAN for IoT
Infiswift Solutions
 
Webnesday - Introduction to LoRaWAN
Webnesday - Introduction to LoRaWANWebnesday - Introduction to LoRaWAN
Webnesday - Introduction to LoRaWAN
Martin Haas
 
An Overview of LoRA, Sigfox, and IEEE 802.11ah
An Overview of LoRA, Sigfox, and IEEE 802.11ahAn Overview of LoRA, Sigfox, and IEEE 802.11ah
An Overview of LoRA, Sigfox, and IEEE 802.11ah
Faheem Zafari
 
Introduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & WebIntroduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & Web
JWORKS powered by Ordina
 
Project humix overview - For Raspberry pi community meetup
Project humix overview - For  Raspberry pi  community meetupProject humix overview - For  Raspberry pi  community meetup
Project humix overview - For Raspberry pi community meetup
Jeffrey Liu
 
台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT
台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT
台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT
Anderson Cheng
 
Unit Testing in AngularJS - CC FE & UX
Unit Testing in AngularJS -  CC FE & UXUnit Testing in AngularJS -  CC FE & UX
Unit Testing in AngularJS - CC FE & UX
JWORKS powered by Ordina
 
Big data elasticsearch practical
Big data  elasticsearch practicalBig data  elasticsearch practical
Big data elasticsearch practical
JWORKS powered by Ordina
 
thesis
thesisthesis
thesis
Andrew Schick
 
Frontend Build Tools - CC FE & UX
Frontend Build Tools - CC FE & UXFrontend Build Tools - CC FE & UX
Frontend Build Tools - CC FE & UX
JWORKS powered by Ordina
 
Integration testing - A&BP CC
Integration testing - A&BP CCIntegration testing - A&BP CC
Integration testing - A&BP CC
JWORKS powered by Ordina
 
AuthentiThings: The Pitfalls and Promises of Authentication in the IoT
AuthentiThings: The Pitfalls and Promises of Authentication in the IoTAuthentiThings: The Pitfalls and Promises of Authentication in the IoT
AuthentiThings: The Pitfalls and Promises of Authentication in the IoT
TransUnion
 
6LoWPAN: An open IoT Networking Protocol
6LoWPAN: An open IoT Networking Protocol6LoWPAN: An open IoT Networking Protocol
6LoWPAN: An open IoT Networking Protocol
Samsung Open Source Group
 
IoT SMART BUS WITH LoRa
IoT SMART BUS WITH LoRaIoT SMART BUS WITH LoRa
IoT SMART BUS WITH LoRa
Josh Lrt
 
20161227 Taipei Smart IOT Innovation Lab workshop
20161227 Taipei Smart IOT Innovation Lab workshop20161227 Taipei Smart IOT Innovation Lab workshop
20161227 Taipei Smart IOT Innovation Lab workshop
Hu-Cheng Lee
 
Intro Lora - Makers.ID Meetup
Intro Lora - Makers.ID MeetupIntro Lora - Makers.ID Meetup
Intro Lora - Makers.ID Meetup
Mif Masterz
 
LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosLPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
Peter R. Egli
 
LoRa WAN - Connecting the Internet of Things
LoRa WAN - Connecting the Internet of ThingsLoRa WAN - Connecting the Internet of Things
LoRa WAN - Connecting the Internet of Things
Kent Plummer
 
Understand LPWA tetchnologies (Sigfox and LoRa)
Understand LPWA tetchnologies (Sigfox and LoRa)Understand LPWA tetchnologies (Sigfox and LoRa)
Understand LPWA tetchnologies (Sigfox and LoRa)
Robert V
 
Webnesday - Introduction to LoRaWAN
Webnesday - Introduction to LoRaWANWebnesday - Introduction to LoRaWAN
Webnesday - Introduction to LoRaWAN
Martin Haas
 
An Overview of LoRA, Sigfox, and IEEE 802.11ah
An Overview of LoRA, Sigfox, and IEEE 802.11ahAn Overview of LoRA, Sigfox, and IEEE 802.11ah
An Overview of LoRA, Sigfox, and IEEE 802.11ah
Faheem Zafari
 
Introduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & WebIntroduction to Webpack - Ordina JWorks - CC JS & Web
Introduction to Webpack - Ordina JWorks - CC JS & Web
JWORKS powered by Ordina
 
Project humix overview - For Raspberry pi community meetup
Project humix overview - For  Raspberry pi  community meetupProject humix overview - For  Raspberry pi  community meetup
Project humix overview - For Raspberry pi community meetup
Jeffrey Liu
 
台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT
台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT
台灣樹莓派 2016/12/26 #17 站在Nas的中心呼喊物聯網 QNAP QIoT
Anderson Cheng
 
AuthentiThings: The Pitfalls and Promises of Authentication in the IoT
AuthentiThings: The Pitfalls and Promises of Authentication in the IoTAuthentiThings: The Pitfalls and Promises of Authentication in the IoT
AuthentiThings: The Pitfalls and Promises of Authentication in the IoT
TransUnion
 
IoT SMART BUS WITH LoRa
IoT SMART BUS WITH LoRaIoT SMART BUS WITH LoRa
IoT SMART BUS WITH LoRa
Josh Lrt
 
20161227 Taipei Smart IOT Innovation Lab workshop
20161227 Taipei Smart IOT Innovation Lab workshop20161227 Taipei Smart IOT Innovation Lab workshop
20161227 Taipei Smart IOT Innovation Lab workshop
Hu-Cheng Lee
 
Ad

Similar to IoT: LoRa and Java on the PI (20)

Cc internet of things @ Thomas More
Cc internet of things @ Thomas MoreCc internet of things @ Thomas More
Cc internet of things @ Thomas More
JWORKS powered by Ordina
 
IoT Session Thomas More
IoT Session Thomas MoreIoT Session Thomas More
IoT Session Thomas More
Kevin Van den Abeele
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
Bringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near YouBringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near You
Samsung Open Source Group
 
SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...
SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...
SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...
South Tyrol Free Software Conference
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
Raspberry pi
Raspberry piRaspberry pi
Raspberry pi
Pravesh Sahu
 
Introduction to the rapid prototyping with python and linux for embedded systems
Introduction to the rapid prototyping with python and linux for embedded systemsIntroduction to the rapid prototyping with python and linux for embedded systems
Introduction to the rapid prototyping with python and linux for embedded systems
Naohiko Shimizu
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
Introduction to iOS Penetration Testing
Introduction to iOS Penetration TestingIntroduction to iOS Penetration Testing
Introduction to iOS Penetration Testing
OWASP
 
Efabless Marketplace webinar slides 2024
Efabless Marketplace webinar slides 2024Efabless Marketplace webinar slides 2024
Efabless Marketplace webinar slides 2024
Nobin Mathew
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computersPiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
Ian Kluft
 
Up and running with Raspberry Pi
Up and running with Raspberry PiUp and running with Raspberry Pi
Up and running with Raspberry Pi
Shahed Mehbub
 
IoT Prototyping using BBB and Debian
IoT Prototyping using BBB and DebianIoT Prototyping using BBB and Debian
IoT Prototyping using BBB and Debian
Mender.io
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
IoT for data science Module 5 - Raspberry Pi.pptx
IoT for data science Module 5 - Raspberry Pi.pptxIoT for data science Module 5 - Raspberry Pi.pptx
IoT for data science Module 5 - Raspberry Pi.pptx
MadhurimaDas52
 
Internet of things aktu lab file
Internet of things  aktu lab fileInternet of things  aktu lab file
Internet of things aktu lab file
Nitesh Dubey
 
Iot lab manual new
Iot lab manual newIot lab manual new
Iot lab manual new
Dr. Radhey Shyam
 
Raspberry pi overview
Raspberry pi overview Raspberry pi overview
Raspberry pi overview
Matthew Karas
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...
SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...
SFScon 22 - Roberto Innocenti - Start Enjoy Yourself with Open Hardware POWER...
South Tyrol Free Software Conference
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
Introduction to the rapid prototyping with python and linux for embedded systems
Introduction to the rapid prototyping with python and linux for embedded systemsIntroduction to the rapid prototyping with python and linux for embedded systems
Introduction to the rapid prototyping with python and linux for embedded systems
Naohiko Shimizu
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
Introduction to iOS Penetration Testing
Introduction to iOS Penetration TestingIntroduction to iOS Penetration Testing
Introduction to iOS Penetration Testing
OWASP
 
Efabless Marketplace webinar slides 2024
Efabless Marketplace webinar slides 2024Efabless Marketplace webinar slides 2024
Efabless Marketplace webinar slides 2024
Nobin Mathew
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computersPiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
Ian Kluft
 
Up and running with Raspberry Pi
Up and running with Raspberry PiUp and running with Raspberry Pi
Up and running with Raspberry Pi
Shahed Mehbub
 
IoT Prototyping using BBB and Debian
IoT Prototyping using BBB and DebianIoT Prototyping using BBB and Debian
IoT Prototyping using BBB and Debian
Mender.io
 
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdfAdvanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
Advanced View of Projects Raspberry Pi List - Raspberry PI Projects.pdf
WiseNaeem
 
IoT for data science Module 5 - Raspberry Pi.pptx
IoT for data science Module 5 - Raspberry Pi.pptxIoT for data science Module 5 - Raspberry Pi.pptx
IoT for data science Module 5 - Raspberry Pi.pptx
MadhurimaDas52
 
Internet of things aktu lab file
Internet of things  aktu lab fileInternet of things  aktu lab file
Internet of things aktu lab file
Nitesh Dubey
 
Raspberry pi overview
Raspberry pi overview Raspberry pi overview
Raspberry pi overview
Matthew Karas
 
Ad

More from JWORKS powered by Ordina (20)

Lagom in Practice
Lagom in PracticeLagom in Practice
Lagom in Practice
JWORKS powered by Ordina
 
Netflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLandNetflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLand
JWORKS powered by Ordina
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
JWORKS powered by Ordina
 
An introduction to Cloud Foundry
An introduction to Cloud FoundryAn introduction to Cloud Foundry
An introduction to Cloud Foundry
JWORKS powered by Ordina
 
Cc internet of things LoRa and IoT - Innovation Enablers
Cc internet of things   LoRa and IoT - Innovation Enablers Cc internet of things   LoRa and IoT - Innovation Enablers
Cc internet of things LoRa and IoT - Innovation Enablers
JWORKS powered by Ordina
 
Mongodb @ vrt
Mongodb @ vrtMongodb @ vrt
Mongodb @ vrt
JWORKS powered by Ordina
 
Mongo db intro.pptx
Mongo db intro.pptxMongo db intro.pptx
Mongo db intro.pptx
JWORKS powered by Ordina
 
Big data document and graph d bs - couch-db and orientdb
Big data  document and graph d bs - couch-db and orientdbBig data  document and graph d bs - couch-db and orientdb
Big data document and graph d bs - couch-db and orientdb
JWORKS powered by Ordina
 
Big data key-value and column stores redis - cassandra
Big data  key-value and column stores redis - cassandraBig data  key-value and column stores redis - cassandra
Big data key-value and column stores redis - cassandra
JWORKS powered by Ordina
 
Hadoop bootcamp getting started
Hadoop bootcamp getting startedHadoop bootcamp getting started
Hadoop bootcamp getting started
JWORKS powered by Ordina
 
Intro to cassandra
Intro to cassandraIntro to cassandra
Intro to cassandra
JWORKS powered by Ordina
 
Android wear - CC Mobile
Android wear - CC MobileAndroid wear - CC Mobile
Android wear - CC Mobile
JWORKS powered by Ordina
 
Clean Code - A&BP CC
Clean Code - A&BP CCClean Code - A&BP CC
Clean Code - A&BP CC
JWORKS powered by Ordina
 
Unit testing - A&BP CC
Unit testing - A&BP CCUnit testing - A&BP CC
Unit testing - A&BP CC
JWORKS powered by Ordina
 
Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014
JWORKS powered by Ordina
 
Spring 4 - A&BP CC
Spring 4 - A&BP CCSpring 4 - A&BP CC
Spring 4 - A&BP CC
JWORKS powered by Ordina
 
Android secure offline storage - CC Mobile
Android secure offline storage - CC MobileAndroid secure offline storage - CC Mobile
Android secure offline storage - CC Mobile
JWORKS powered by Ordina
 
Meteor - JOIN 2015
Meteor - JOIN 2015Meteor - JOIN 2015
Meteor - JOIN 2015
JWORKS powered by Ordina
 
Batch Processing - A&BP CC
Batch Processing - A&BP CCBatch Processing - A&BP CC
Batch Processing - A&BP CC
JWORKS powered by Ordina
 
Java 7 & 8 - A&BP CC
Java 7 & 8 - A&BP CCJava 7 & 8 - A&BP CC
Java 7 & 8 - A&BP CC
JWORKS powered by Ordina
 
Netflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLandNetflix OSS and HATEOAS deployed on production - JavaLand
Netflix OSS and HATEOAS deployed on production - JavaLand
JWORKS powered by Ordina
 
Cc internet of things LoRa and IoT - Innovation Enablers
Cc internet of things   LoRa and IoT - Innovation Enablers Cc internet of things   LoRa and IoT - Innovation Enablers
Cc internet of things LoRa and IoT - Innovation Enablers
JWORKS powered by Ordina
 
Big data document and graph d bs - couch-db and orientdb
Big data  document and graph d bs - couch-db and orientdbBig data  document and graph d bs - couch-db and orientdb
Big data document and graph d bs - couch-db and orientdb
JWORKS powered by Ordina
 
Big data key-value and column stores redis - cassandra
Big data  key-value and column stores redis - cassandraBig data  key-value and column stores redis - cassandra
Big data key-value and column stores redis - cassandra
JWORKS powered by Ordina
 
Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014Documenting your REST API with Swagger - JOIN 2014
Documenting your REST API with Swagger - JOIN 2014
JWORKS powered by Ordina
 
Android secure offline storage - CC Mobile
Android secure offline storage - CC MobileAndroid secure offline storage - CC Mobile
Android secure offline storage - CC Mobile
JWORKS powered by Ordina
 

Recently uploaded (19)

Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation TemplateSmart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
yojeari421237
 
5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx
andani26
 
Determining Glass is mechanical textile
Determining  Glass is mechanical textileDetermining  Glass is mechanical textile
Determining Glass is mechanical textile
Azizul Hakim
 
Understanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep WebUnderstanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep Web
nabilajabin35
 
(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security
aluacharya169
 
highend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptxhighend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptx
elhadjcheikhdiop
 
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHostingTop Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
steve198109
 
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
DataProvider1
 
White and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptxWhite and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptx
canumatown
 
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 SupportReliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
steve198109
 
Computers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers NetworksComputers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers Networks
Tito208863
 
IT Services Workflow From Request to Resolution
IT Services Workflow From Request to ResolutionIT Services Workflow From Request to Resolution
IT Services Workflow From Request to Resolution
mzmziiskd
 
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC
 
project_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptxproject_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptx
redzuriel13
 
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry SweetserAPNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC
 
Best web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you businessBest web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you business
steve198109
 
Perguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolhaPerguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolha
socaslev
 
OSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description fOSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description f
cbr49917
 
DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)
APNIC
 
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation TemplateSmart Mobile App Pitch Deck丨AI Travel App Presentation Template
Smart Mobile App Pitch Deck丨AI Travel App Presentation Template
yojeari421237
 
5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx5-Proses-proses Akuisisi Citra Digital.pptx
5-Proses-proses Akuisisi Citra Digital.pptx
andani26
 
Determining Glass is mechanical textile
Determining  Glass is mechanical textileDetermining  Glass is mechanical textile
Determining Glass is mechanical textile
Azizul Hakim
 
Understanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep WebUnderstanding the Tor Network and Exploring the Deep Web
Understanding the Tor Network and Exploring the Deep Web
nabilajabin35
 
(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security(Hosting PHising Sites) for Cryptography and network security
(Hosting PHising Sites) for Cryptography and network security
aluacharya169
 
highend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptxhighend-srxseries-services-gateways-customer-presentation.pptx
highend-srxseries-services-gateways-customer-presentation.pptx
elhadjcheikhdiop
 
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHostingTop Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
Top Vancouver Green Business Ideas for 2025 Powered by 4GoodHosting
steve198109
 
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...Mobile database for your company telemarketing or sms marketing campaigns. Fr...
Mobile database for your company telemarketing or sms marketing campaigns. Fr...
DataProvider1
 
White and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptxWhite and Red Clean Car Business Pitch Presentation.pptx
White and Red Clean Car Business Pitch Presentation.pptx
canumatown
 
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 SupportReliable Vancouver Web Hosting with Local Servers & 24/7 Support
Reliable Vancouver Web Hosting with Local Servers & 24/7 Support
steve198109
 
Computers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers NetworksComputers Networks Computers Networks Computers Networks
Computers Networks Computers Networks Computers Networks
Tito208863
 
IT Services Workflow From Request to Resolution
IT Services Workflow From Request to ResolutionIT Services Workflow From Request to Resolution
IT Services Workflow From Request to Resolution
mzmziiskd
 
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC -Policy Development Process, presented at Local APIGA Taiwan 2025
APNIC
 
project_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptxproject_based_laaaaaaaaaaearning,kelompok 10.pptx
project_based_laaaaaaaaaaearning,kelompok 10.pptx
redzuriel13
 
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry SweetserAPNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC Update, presented at NZNOG 2025 by Terry Sweetser
APNIC
 
Best web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you businessBest web hosting Vancouver 2025 for you business
Best web hosting Vancouver 2025 for you business
steve198109
 
Perguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolhaPerguntas dos animais - Slides ilustrados de múltipla escolha
Perguntas dos animais - Slides ilustrados de múltipla escolha
socaslev
 
OSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description fOSI TCP IP Protocol Layers description f
OSI TCP IP Protocol Layers description f
cbr49917
 
DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)DNS Resolvers and Nameservers (in New Zealand)
DNS Resolvers and Nameservers (in New Zealand)
APNIC
 

IoT: LoRa and Java on the PI

  • 1. 1 IoT - LoRa & Java on the Pi CC IoT Tim Ysewyn Frederick Bousson Kevin Van den Abeele Guest speaker Dave De Groote
  • 2. 2 Agenda In today's session: ● News update ● Theoretical part ○ What is LoRa ○ Who is working on/with LoRa ● Practical part ○ Java on the raspberry pi ○ Getting started ○ A simple example ○ Alternatives to Java? ● Q&A
  • 3. 3 Can’t keep up? Don’t understand something?
  • 5. 5 News update Latest news from IoT land: ● Proximus LoRa beta has started in Belgium ○ More later in this session! ● Element14 launched the new Raspberry Pi Zero ○ Very very small! ○ Single core CPU & 512MB Ram ○ https://www.raspberrypi.org/products/pi-zero/ ○ Costs only 5 dollar!
  • 8. 8 LoRa Technology (Long Range Low Power)
  • 9. 9 LoRa Technology (Long Range Low Power)
  • 10. 10 LoRa Devices Base station Any type is possible as long as it is connected with a LoRa chip CO2, PIR, Humidity, Luminance, Temperature, Pressure, … Sensor Types banana for scale
  • 12. 12 Ordina At Proximus - MyThings Builder ▪ Charts ▪ Managing containers of sensors (Battery, temperature, luminance, …) - MyThings Manager ▪ Online onboarding of sensors ▪ User management - MyThings Scanner ▪ Customer can go into the field and onboard sensors (scanning QR code of sensor)
  • 15. 15 LoRa in Belgium Proximus has launched its LoRa Beta program in Belgium ● Available in 10 areas (More to come in 2016) ● Preview access to SEaaS (Sensor as a Service) API ● 6 months free access to the network ○ There however is a message quota ○ 15k messages in total => 84 upstream, 12 downstream /day ○ Very limited! Proximus LoRa website: http://www.proximus.be/nl/id_cl_iot/bedrijven-en-overheden/producten-en-diensten/internet- en-netwerken/internet-of-things.html Dev kits (we will probably get two or three): http://www.allthingstalk.com/lora-rapid-development-kit
  • 16. 16 Setting up your Raspberry pi
  • 17. 17 Setting up your Raspberry pi Useful links: ● Main Raspberry Pi website ○ Contains many resources and is a good place to start! ○ https://www.raspberrypi.org/ ○ Has links and images for the most common OSs ● Magpi ○ Website (and magazine) focussing on the Raspberry Pi ○ https://www.raspberrypi.org/magpi/ ○ Good source for extra information and articles
  • 18. 18 Setting up your Raspberry pi ● Insert SD card in your mac or windows pc/laptop. ● Open “cmdline.txt” and append the following at the end: “ip=169.254.0.2” ○ Make sure to have a space after the last item before adding the ip ○ Make sure NOT to add a newline after the ip! ○ Save the file and put the SD card back in the raspberry pi ● Connect your raspberry pi to the power and connect it directly to the computer via an ethernet cable ● Wait a few minutes... ● Open an ssh client and connect to your raspberry pi ○ On mac: ssh [email protected] (the default password is raspberry) ● Execute the following command: “sudo raspi-config” ○ Have a look around in the settings and edit where required ○ Finish settings and reboot your pi (this will disconnect the ssh session) ● Download the latest FileZilla release ● Extract/install FileZilla ● Open FileZilla and connect to your raspberry pi ○ sftp://169.254.0.2 user:pi password:raspberry
  • 19. 19 Java on the Raspberry Pi
  • 20. 20 Java on the Raspberry Pi Java runs pretty well on the Raspberry Pi (even more so on our model 2) The Raspbian OS has Java 1.8u25 installed by default! For updates of java: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html Download the ARMV6/V7 Hard float ABI or update via the built in package manager! Capabilities: ● Most normal jars will run just fine (albeit slower and more memory limited) ● Can run complex UIs when using JavaFx ○ Has full hardware acceleration for UI rendering ○ Forget swing and awt! ○ The devoxx screens were running on a Pi with JavaFx UI
  • 21. 21 A Simple Example A simple web server application: ● Clone the following repo: https://github.com/ordina-oraj/IoT.git ● Make sure you have gradle installed! ○ On osx: “brew install gradle” ○ Import the project in IntelliJ and when asked for the gradle folder: “/usr/local/Cellar/gradle/2.1/libexec” ● Compile the application by running the gradle task “build” ● Open filezilla and connect to the Pi ● Copy the generated jar file (in /build/libs/) to a folder on your Pi ● Connect to the Pi via SSH and go to the directory where you placed the jar ● Run the following command: “java -jar NameOfYourJar.jar” ○ For remote debug prepend -jar in the command with: “-agentlib: jdwp=transport=dt_socket,server=y,suspend=n,address=5005” ● On your host, open a browser and go to: http://169.254.0.2:8080/ ○ If you see a welcome page, your setup was successful!
  • 22. 22 A simple example… Continued This is up to you! Take a look in the code, and implement something fancy for the “impress” me section. A few ideas: ● A second more extensive rest service ● A websocket implementation? ○ Dare we say a chat client? ● A file upload ● A form to submit ● ...
  • 24. 24 Java and IO pins The Pi has a bunch of IO pins. These can be used for several things. Model A and B: ● 26 pins ● https://www.raspberrypi.org/documentation/usage/gpio/ ● 17 of 26 pins are for GPIO Model A+, B+, Zero and 2: ● 40 pins ● https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/ ● 26 of 40 pins are for GPIO These GPIO pins can be used to collect data from sensors, to drive servos, LEDs and other peripherals. http://wiringpi.com/pins/
  • 25. 25 Java and IO pins… Continued
  • 26. 26 Java and IO pins… Continued To use the GPIO pins from within Java an extra library is needed, as there is no native support within Java. This is where PI4J comes in. It is a easy to use library to control the GPIO pins: Installation is easy and is documented on http://pi4j.com/install.html Usage is also not that difficult: http://pi4j.com/usage.html The project on our github contains the pi4j library and some example code to get you started. => DEMO TIME!
  • 28. 28 Alternatives? What about non Java languages on the Pi? ● Python ● C / C++ ● Javascript (via node.js or io.js) ● … Node.js: Node is very simple to setup and use. It makes use of Google’s V8 javascript engine and is very fast. Node itself is single threaded but dispatches operations like IO the separate threads. It can be clustered and allowed to run on multiple threads via more node workers. Program for Node run in Javascript and thus required no manual compilation before running. This makes it very handy for rapid development. More about Node.js in our next session! ;)