Raspberry Pi 3 Projects for Java Programmers
eBook - ePub

Raspberry Pi 3 Projects for Java Programmers

Pradeeka Seneviratne, John Sirach

Share book
  1. 286 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Raspberry Pi 3 Projects for Java Programmers

Pradeeka Seneviratne, John Sirach

Book details
Book preview
Table of contents
Citations

About This Book

Learn the art of building enticing projects by unleashing the potential of Raspberry Pi 3 using JavaAbout This Book• Explore the small yet powerful mini computer in order to run java applications• Leverage Java libraries to build exciting projects on home automation, IoT, and Robotics by leveraging Java libraries• Get acquainted with connecting electronic sensors to your Raspberry Pi 3 using Java APIs.Who This Book Is ForThe book is aimed at Java programmers who are eager to get their hands-on Raspberry Pi and build interesting projects using java. They have a very basic knowledge of Raspberry Pi.What You Will Learn• Use presence detection using the integrated bluetooth chip• Automatic light switch using presence detection• Use a centralized IoT service to publish data using RPC• Control a robot by driving motors using PWM• Create a small web service capable of performing actions on the Raspberry Pi and supply readings• Image capture using Java together with the OpenCV frameworkIn DetailRaspberry Pi is a small, low cost and yet very powerful development platform. It is used to interact with attached electronics by the use of it's GPIO pins for multiple use cases, mainly Home Automation and Robotics.Our book is a project-based guide that will show you how to utilize the Raspberry Pi's GPIO with Java and how you can leverage this utilization with your knowledge of Java. You will start with installing and setting up the necessary hardware to create a seamless development platform. You will then straightaway start by building a project that will utilize light for presence detection. Next, you will program the application, capable of handling real time data using MQTT and utilize RPC to publish data to adafruit.io. Further, you will build a wireless robot on top of the zuma chassis with the Raspberry Pi as the main controller. Lastly, you will end the book with advanced projects that will help you to create a multi-purpose IoT controller along with building a security camera that will perform image capture and recognize faces with the help of notifications.By the end of the book, you will be able to build your own real world usable projects not limited to Home Automation, IoT and/or Robotics utilizing logic, user and web interfaces.Style and approachThe book will contain projects that ensure a java programmer gets started with building interesting projects using the small yet powerful Raspberry Pi 3. We will start with brushing up your Raspberry Pi skills followed by building 5-6 projects

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Raspberry Pi 3 Projects for Java Programmers an online PDF/ePUB?
Yes, you can access Raspberry Pi 3 Projects for Java Programmers by Pradeeka Seneviratne, John Sirach in PDF and/or ePUB format, as well as other popular books in Computer Science & Hardware. We have over one million books available in our catalogue for you to explore.

Information

Year
2017
ISBN
9781786463616
Subtopic
Hardware
Edition
1

Integrating a Real-Time IoT Dashboard

The Raspberry Pi is great for working with sensor systems and controlling actuators in both indoor and outdoor environments. The data can be gathered from local sensors attached to the Raspberry Pi, or sensors connected to a cloud computing environment. Adafruit IO is a system that makes data useful, and it provides useful features to work with your data, such as real-time graphs and sets of UI controls that can be used to either display data from a feed or produce data for a feed on a specific topic.
In this chapter, you will:
  • Create feeds and a dashboard with Adafruit IO
  • Connect the TMP102 temperature sensor with the Raspberry Pi through an I2C bus
  • Get data from the temperature sensor through the I2C with the Pi4J library
  • Work with the Eclipse Paho Java MQTT client library
  • Publish data to the feed on a specific topic
  • Display data on the Adafruit IO dashboard
  • Subscribe to a feed to get data on a specific topic
  • Control an actuator using the Adafruit IO dashboard

Adafruit IO

Adafruit IO is a system that makes your data useful and provides easy-to-use, simple data connections. Basic programming is required to work with the Adafruit IO system, which includes client libraries that wrap its REST and MQTT APIs. Currently, Adafruit provides client libraries to work with following programming languages:
  • Arduino
  • Ruby
  • Python
  • Node.js
Still, there is no official Adafruit client library to work with Java. So, you can use the Eclipse Paho MQTT Java client to work with Adafruit IO.
You can visit Adafruit IO at https://io.adafruit.com/.

Bill of materials

To build all the projects that will be discussed in this chapter, you will need to have the following things in your tool box:
  • One Raspberry Pi 3 (SparkFun part number: DEV-13825)
  • One SparkFun digital temperature sensor breakout board - TMP102 (SparkFun part number: SEN-11931)
  • One LED
  • One breadboard-self-adhesive (white) (SparkFun part number: PRT-12002)
  • Hookup wire or jumper wire kit
  • Wire strippers

Sign in with Adafruit IO

You will need an Adafruit user account to sign in to Adafruit IO:
  1. Using your web browser, visit https://io.adafruit.com/ and click the large text button, SIGN IN TO JOIN THE OPEN BETA.
  2. On the next page, there are two options available for you. If you already have an account with Adafruit, you can use the same credentials to sign in with Adafruit IO by giving the credentials (email/username and password) and clicking on the SIGN IN button. If you don't have an account, click the SIGN UP button to create a new account.
After successfully signing in to Adafruit IO, you will navigate to the Adafruit IO dashboards page, which includes a list of dashboards. Figure 4-1 shows a section of the Adafruit IO dashboards page. The dashboards page is generally located at the (your user name)/dashboards path:
Figure 4-1: Adafruit IO dashboards page
  1. A navigation menu is located on the left-hand side of the page, and provides links to your profile, feeds, groups, dashboards, triggers, and settings.

Finding your AIO key

The Adafruit (AIO) IO key is used to authenticate your client connection with the Adafruit IO system:
  1. In the left navigation bar of the dashboards page, click the Settings menu. You will navigate to the Settings page with a set of settings associated with your Adafruit IO account, as shown in Figure 4-2:
Figure 4-2: Adafruit IO settings page
  1. Click VIEW AIO KEY under Manage AIO Keys. A pop-up window will show the AIO key associated with your account, as shown in Figure 4-3:
Figure 4-3: Adafruit AIO key
The 32-digit AIO key looks similar to this:
 c62d5f647eb44a4098ff0c46403b...

Table of contents