Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Internet of Things Programming Projects
Internet of Things Programming Projects

Internet of Things Programming Projects: Build exciting IoT projects using Raspberry Pi 5, Raspberry Pi Pico, and Python , Second Edition

eBook
$9.99 $27.99
Paperback
$34.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Internet of Things Programming Projects

Understanding the Raspberry Pi

Welcome to the wonderful world of Internet of Things (IoT) projects and the Raspberry Pi in this, the second edition of Internet of Things Programming Projects.

In this book, we will take a journey into IoT projects using the Raspberry Pi. In the first part of this book, we’ll explore IoT projects on the Raspberry Pi, initially transforming it into a weather station with the Sense HAT to capture real-time data. Later, we’ll use motors and general-purpose input/output (GPIO) pins to repurpose the Pi as an analog metering device.

We will then create an IoT home security system, using the Raspberry Pi as the central hub for an alarm system. We’ll also develop a LoRa-enabled IoT monitoring station for remote sensing. The book culminates with our most ambitious project: building an IoT robot car powered by the Raspberry Pi.

We will start this chapter by exploring the various Raspberry Pi models and their significance, observing...

Technical requirements

The following are required to complete this chapter:

  • Late-model Raspberry Pi, such as the Raspberry Pi 5 4/8 GB model or Raspberry Pi 4B 4/8 GB model
  • Keyboard, mouse, and monitor
  • Raspberry Pi Sense HAT is optional but encouraged; we will be making use of the Sense HAT software emulator

The GitHub repository for the chapter is located at https://github.com/PacktPublishing/-Internet-of-Things-Programming-Projects-2nd-Edition/tree/main/Chapter1.

For those that have access to a 3D printer or 3D printing service, there are .stl files available in the Build Files directory of this chapter’s GitHub repository for the construction of the optional custom case. Files are available for the Raspberry Pi 5 and Raspberry Pi 4B versions of the case.

A general knowledge of programming is also required. We will be using the Python programming language in this book. We will start with basic code and work our way toward more advanced coding as...

Exploring Raspberry Pi models

Every Raspberry Pi model, from the initial Raspberry Pi 1 to the current Raspberry Pi 5 and the compact Pi Zero, possesses distinct characteristics and functionalities that make it an exciting choice for IoT developers. Each model excels in different areas, such as processing power, size, and energy efficiency.

The Raspberry Pi models have evolved significantly over time, with each iteration bringing notable advancements in processing power, memory, and capabilities.

In the following list, we compare the various models of the Raspberry Pi, starting with the first one:

  • Raspberry Pi 1: Launched in February 2012, the Raspberry Pi 1 changed the world of computing with its affordability and accessibility. Equipped with a 700 MHz processor, 512 MB RAM, and a $35 price point, the first model of the Raspberry Pi spurred digital innovation and highlighted the potential of single-board computers.
  • Raspberry Pi 2: Released in February 2015, the Raspberry...

Exploring alternatives to the Raspberry Pi

The IoT landscape is filled with a variety of single-board computers and microcontrollers, each offering unique specifications that cater to specific project needs. By comparing these alternatives with the Raspberry Pi, we can make informed decisions about the ideal platform for our unique requirements. The following is a breakdown of some of the alternatives to the Raspberry Pi that we may consider for our IoT projects. We will only focus on the Raspberry Pi and not the Raspberry Pi Pico as we will be using the former for this chapter’s programming projects:

  • BeagleBone Black: The BeagleBone Black features a 1GHz ARM Cortex-A8 processor, 512MB DDR3 RAM, 4 GB flash storage, and many connectivity options. Its distinct feature, the Programmable Real-Time Units (PRUs), allow for precise real-time processing, ideal for applications such as robotics or industrial automation. Despite this, the Raspberry Pi remains popular due to its...

Looking at the power of HATs

Raspberry Pi HATs are add-on boards that extend the capabilities of the Raspberry Pi, offering a wide range of functionality for various applications. These HATs provide an easy and convenient way to enhance the Raspberry Pi’s capabilities by adding features such as sensors, actuators, displays, communication interfaces, and more. In this section, we will explore two notable HATs: the Pibrella HAT and the Raspberry Pi Sense HAT.

Pibrella HAT

The Pibrella HAT is an excellent beginner-friendly board designed to introduce electronics and programming concepts to users of all ages. It features buttons, LEDs, and a buzzer, providing a hands-on experience for physical computing projects with the Raspberry Pi. With its intuitive interface and Python library, the Pibrella HAT offers a great starting point for learning and prototyping.

Despite being designed for the first version of the Raspberry Pi and thus having only a 26-pin GPIO connection, the...

Investigating operating systems for the Raspberry Pi

While the official Raspberry Pi OS (formerly Raspbian) is the most widely used operating system for the Raspberry Pi, there is also support for various other operating systems. These options range from specialized systems tailored for specific applications, such as audio players including Volumio, and more general-purpose systems, such as Ubuntu and Raspberry Pi OS itself. In this section, we explore a selection of these operating systems and their unique features. They are as follows:

  • Volumio: For those of us aiming to build a networked audio system accessible via a computer or smartphone, Volumio is a fitting choice. It transforms the Raspberry Pi into a headless audio player, rendering a keyboard or mouse unnecessary. This system connects to our audio files via a USB or network, with the option to enhance the audio output quality through an add-on HAT. Notably, Volumio includes a Spotify plugin, letting us stream music...

Using the Raspberry Pi for IoT

IoT has revolutionized the way we interact with technology, giving everyday objects the ability to communicate, automate tasks, and generate invaluable data for use over the internet. The Raspberry Pi is central to many of these systems. Its versatility and robust processing capabilities enable this powerful single-board computer to function both as a data processor and a controller for physical devices.

Uniquely equipped with features such as GPIO pins, USB ports, and Wi-Fi capabilities, the Raspberry Pi is a cost-effective and instrumental tool in implementing IoT solutions. The Raspberry Pi is especially valuable for processing real-time data and managing hardware. The following is a look at examples of Raspberry Pi-based IoT systems.

Utilizing web services for IoT applications

One of the distinct advantages of using the Raspberry Pi in IoT applications is its capacity to process real-time data and control other hardware elements based on...

Getting started with Raspberry Pi development

Our Raspberry Pi can serve as a robust development platform ideal for various programming environments. The default Linux-based Raspberry Pi OS is equipped with Python, Scratch, and many other tools that cater to both beginners and seasoned programmers. It’s particularly effective for IoT projects and edge computing, thanks to its small form factor. As developers, we can use it for software development, web hosting, home automation projects, and prototyping, making it a versatile and accessible tool for innovation.

In this book, we will develop IoT projects using the Raspberry Pi, specifically utilizing the Raspberry Pi 5 with 8 GB of RAM for optimal performance. While other versions of the Raspberry Pi may be sufficient, the Raspberry Pi 5 with 8 GB of RAM is currently the most powerful model available. Our projects will encompass an array of exciting applications, including an analog metered weather dashboard, an internet-connected...

Summary

In this chapter, we began our journey into the world of IoT projects with the Raspberry Pi. We explored the various Raspberry Pi models, their distinct characteristics, and their significance in IoT development. We took a brief look at the alternatives to the Raspberry Pi for IoT applications and explored Raspberry Pi HATs, such as the Pibrella HAT and the Raspberry Pi Sense HAT.

Additionally, we looked at operating systems compatible with the Raspberry Pi, outside of the official Raspberry Pi OS. We highlighted the versatility and power of the Raspberry Pi in IoT applications, emphasizing its ability to process real-time data and control physical devices. The chapter also introduced the Raspberry Pi as a robust development platform, equipped with pre-installed tools for software development.

At the end of the chapter, we engaged in practical programming projects that utilized Sense HAT and explored its potential in IoT applications. These projects included a scrolling...

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Get to grips with the Raspberry Pi ecosystem and its role in IoT development
  • Integrate cutting-edge technologies such as MQTT, LoRa, and ROS for advanced IoT applications
  • Achieve superior control in your robot car with vision recognition and the power of ROS
  • Purchase of the print or Kindle book includes a free PDF eBook

Description

Renowned for its versatility, affordability, and active community support, Raspberry Pi is at the forefront of IoT development. Unlock the vast potential of Raspberry Pi and Raspberry Pi Pico by learning how to develop practical projects with this updated edition of Internet of Things Programming Projects. Written by an expert programmer who’s worked for some of Canada’s largest companies, this book starts with foundational concepts and practical exercises such as building a basic weather indicator, and gradually progressed toward more complex projects. You’ll get to grips with coding nuances and web service integrations that will help you create a sophisticated IoT robot car equipped with motor control, wireless communication, and sensor amalgamation. The book also explores LoRa technology, a game-changer for long-range, low-power communication in your projects, and delves into robot car development by implementing the Robot Operating System (ROS) for advanced control and coordination. Through clear, step-by-step instructions and insightful explanations, you’ll gain the skills and confidence to develop innovative IoT solutions for real-world applications. By the end of the book, you’ll have mastered the intricacies of IoT programming, from harnessing Raspberry Pi's capabilities to seamlessly integrating external components.

Who is this book for?

This book is for beginners as well as experienced programmers, IoT developers, and Raspberry Pi enthusiasts. With just basic knowledge of IoT, you can dive right in and explore the projects with ease.

What you will learn

  • Integrate web services into projects for real-time data display and analysis
  • Integrate sensors, motors, and displays to build smart IoT devices
  • Build a weather indicator using servo motors and LEDs
  • Create an autonomous IoT robot car capable of performing tasks
  • Develop a home security system with real-time alerts and SMS notifications
  • Explore LoRa and LoRaWAN for remote environmental monitoring

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jun 28, 2024
Length: 458 pages
Edition : 2nd
Language : English
ISBN-13 : 9781835082959
Category :
Languages :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Jun 28, 2024
Length: 458 pages
Edition : 2nd
Language : English
ISBN-13 : 9781835082959
Category :
Languages :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 129.97
Internet of Things Programming Projects
$34.99
Mastering Node.js Web Development
$49.99
Learn Ansible
$44.99
Total $ 129.97 Stars icon
Banner background image

Table of Contents

20 Chapters
Part 1: Setting Up the Raspberry Pi for IoT Development Chevron down icon Chevron up icon
Chapter 1: Understanding the Raspberry Pi Chevron down icon Chevron up icon
Chapter 2: Harnessing Web Services with the Raspberry Pi Chevron down icon Chevron up icon
Chapter 3: Building an IoT Weather Indicator Chevron down icon Chevron up icon
Chapter 4: Building an IoT Information Display Chevron down icon Chevron up icon
Part 2: Building an IoT Home Security Dashboard Chevron down icon Chevron up icon
Chapter 5: Exploring the GPIO Chevron down icon Chevron up icon
Chapter 6: Building an IoT Alarm Module Chevron down icon Chevron up icon
Chapter 7: Building an IoT Button Chevron down icon Chevron up icon
Chapter 8: Creating an IoT Alarm Dashboard Chevron down icon Chevron up icon
Part 3: Creating a LoRa-Enabled IoT Monitoring Station Chevron down icon Chevron up icon
Chapter 9: Understanding LoRa Chevron down icon Chevron up icon
Chapter 10: Integrating LoRa with the Internet Chevron down icon Chevron up icon
Part 4: Building an IoT Robot Car Chevron down icon Chevron up icon
Chapter 11: Introducing ROS Chevron down icon Chevron up icon
Chapter 12: Creating an IoT Joystick Chevron down icon Chevron up icon
Chapter 13: Introducing Advanced Robotic Eyes for Security (A.R.E.S.) Chevron down icon Chevron up icon
Chapter 14: Adding Computer Vision to A.R.E.S. Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(2 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
MD28 Jul 11, 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This book on Programming Projects is a fantastic resource for both beginners and experienced developers. The projects are well-curated and progressively challenging, with clear explanations and practical examples. It's an invaluable guide for anyone looking to improve their programming skills!
Amazon Verified review Amazon
JD_115 Jul 11, 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
The projects were very easy to follow as the author did a great job explaining concepts. Would highly recommend for any aspiring programmer.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.