Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Hands-On Internet of Things with Blynk
Hands-On Internet of Things with Blynk

Hands-On Internet of Things with Blynk: Build on the power of Blynk to configure smart devices and build exciting IoT projects

Arrow left icon
Profile Icon Seneviratne
Arrow right icon
R$50 per month
Paperback May 2018 271 pages 1st Edition
eBook
R$80 R$173.99
Paperback
R$217.99
Subscription
Free Trial
Renews at R$50p/m
Arrow left icon
Profile Icon Seneviratne
Arrow right icon
R$50 per month
Paperback May 2018 271 pages 1st Edition
eBook
R$80 R$173.99
Paperback
R$217.99
Subscription
Free Trial
Renews at R$50p/m
eBook
R$80 R$173.99
Paperback
R$217.99
Subscription
Free Trial
Renews at R$50p/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

Hands-On Internet of Things with Blynk

Setting Up a Development Environment

Blynk is known as the most user-friendly IoT platform consisting of an app builder that can be run on iOS and Android operating systems, and a set of libraries to build amazing IoT applications in minutes with your favorite hardware platform. It allows you to quickly build interfaces by simply dragging and dropping widgets to control and monitor your hardware projects from your iOS and Android device.

In this chapter, you will learn about:

  • Hardware platforms, connection types, architecture, ecosystem, and online resources
  • Installing Blynk app builder on Android
  • Creating a user account with the Blynk app builder to log in to Blynk Cloud
  • Creating a new project with Blynk
  • Preparing Raspberry Pi by adding SD card, Ethernet cable, Wi-Fi dongle, and power supply
  • Writing Raspbian Stretch Lite on Raspberry Pi by flashing image to SD card with Etcher
  • Configuring SSH on Raspberry Pi
  • Installing prerequisite packages such as git-core and WiringPi on Raspberry Pi
  • Using PuTTY to connect with Raspberry Pi with SSH protocol
  • Configuring wireless connection on Raspberry Pi for Raspbian Stretch Lite
  • Connecting Raspberry Pi with Blynk Cloud by running the sample C++ source file

What is Blynk?

Blynk was born as a Kickstarter project created by Pasha Baiborodin, and backed by 2,321 supporters who pledged $49,235 to help bring it to life. This is more than the finally announced stretched goal that is $26,000. Blynk is one of the successfully completed projects listed on Kickstarter (https://www.kickstarter.com/):

Kickstarter campaign page for Blynk

Hardware platforms

Blynk supports hardware platforms such as Arduino, Raspberry Pi, and similar microcontroller boards to build hardware for your projects. The following is a list of some microcontroller boards that can be coupled with Blynk:

  • Espressif (ESP8266, ESP32, NodeMCU, WeMos D1, Adafruit HUZZAH, SparkFun Blynk Board, SparkFun ESP8266 Thing)
  • Linux (C++) (Raspberry Pi, Ubuntu)
  • Arduino (Arduino UNO, Arduino MKR1000, Arduino MKRZero, Arduino Yun, Arduino 101, Arduino Zero, Arduino M0, Arduino M0 Pro, Arduino Nano, Arduino Leonardo, Arduino Due, Arduino Mega 2560, Arduino Mega 1280, Arduino Mega ADK, Arduino Micro, Arduino Pro Micro, Arduino Mini, Arduino Pro Mini, Arduino Fio, Arduino Decimilia, Arduino Duemilanove, Arduino Pro, Arduino Ethernet, Arduino Leonardo ETH, Arduino Industrial 101)
  • Particle (particle core, particle photon, particle electron)

You can read the list of up-to-date hardware that you can use with Blynk at https://github.com/blynkkk/blynkkk.github.io/blob/master/SupportedHardware.md.

Connection types

Blynk supports the following connection types to connect your microcontroller board (hardware) with the Blynk Cloud and Blynk's personal server:

  • Ethernet
  • Wi-Fi
  • Bluetooth
  • Cellular
  • Serial

However, throughout this book, you will only focus on Wi-Fi and Ethernet connection types to connect with Blynk Cloud and Blynk's personal server.

Blynk architecture

The Blynk platform includes the following components:

  • Blynk app builder: Allows to you build apps for your projects using various widgets. It is available for Android and iOS platforms.
  • Blynk server: Responsible for all the communications between your mobile device that's running the Blynk app and the hardware. You can use the Blynk Cloud or run your private Blynk server locally. It's open source, could easily handle thousands of devices, and can even be launched on a Raspberry Pi.
  • Blynk libraries: Enables communication with the server and processes all the incoming and outcoming commands from your Blynk app and the hardware. They are available for all the popular hardware platforms.

All the aforementioned components communicate with each other to build a fully functional IoT application that can be controlled from anywhere through a preconfigured connectivity type. You can control your hardware from the Blynk app running on your mobile device through the Blynk Cloud or Blynk's personal server. It works the same in the opposite direction by sending rows of processed data from hardware to your Blynk app.

Blynk ecosystem

The Blynk ecosystem consists of the following partners. They can cover anything from electronic components, to manufacturing and data plans:

  • Intel IoT Solutions Alliance
  • SparkFun Electronics
  • Espressif
  • Arduino
  • Texas Instruments
  • Proximus
  • Deutshe Telekom
  • Particle
  • Samsung
  • littleBits
  • Hologram
  • ThingSpeak.com
  • Electric Imp
  • Punch Through
  • Codebender
  • RedBearLab
  • Wicked device
  • TinyCircuits

Online resources

Blynk provides the following online resources through their website:

  • Getting started: Guides you how to connect your Arduino with Blynk Cloud by writing sketch with Arduino's Integrated Development Environment (IDE) (http://www.blynk.cc/getting-started).
  • Documentation: Provides a comprehensive documentation about how to work with the Blynk app builder, Blynk libraries, Blynk Cloud, and Blynk's personal server. This guide mainly focuses on the Arduino development environment (http://docs.blynk.cc/).
  • Forum: There are thousands of people around the globe who are willing to help your Blynk projects through this conversation board. You can register with the Blynk forum by creating a new account with it, posting your questions, discussing with experts, helping others, and sharing your work with others (http://community.blynk.cc/).

The Blynk app builder

The Blynk app builder provides an easy way to build IoT apps that can be run on smartphones and tablets. It provides a predefined set of draggable and droppable modules known as widgets, and allows the users to make further configuration on widgets with an easy-to-use user interface. Using the app builder, you can build apps for your personal use or business purposes, as shown in the following screenshot.

If you want to build an app with Blynk for business purposes, visit http://www.blynk.io/business/ for more information:

Blynk widget Box

Installing the Blynk app builder

The Blynk app builder is currently available for Android and iOS platforms. The following steps explain how to install the Blynk app builder on your Android smartphone or tablet:

  1. Tap the apps icon in the lower-right corner of the home screen (consider that this is the default location).
  2. Swipe left and right until you find the Play Store icon.
  3. Tap the Play Store icon.
  4. The first time you open the Play Store, you may be prompted to sign in with your Google credentials. If you still don't have a Google account, you can create a free account with Google.
  5. Once you sign in with Google Play Store, you can search for a specific app.
  6. Tap the magnifying glass in the upper-right corner, type in the name blynk, and tap the magnifying glass on the keyboard to execute the search. You will get a result on the screen as follows:
Search results for Blynk
  1. Tap INSTALL to start the installation process. Also, you can find more information about the app by tapping the MORE INFO button:
Installing Blynk app
  1. Tap ACCEPT to allow the Blynk app to access some resources on your mobile device:
Permitting access to resources in your mobile device
  1. The installation process will take some time depending on the bandwidth of your internet connection.
  2. After completing the installation, you can open the Blynk app by tapping on the OPEN button with Google Play. This will help you to open the Blynk app builder for the first time without moving to the home screen of your smartphone or tablet:
Once installed, opening Blynk app builder from Google Play
  1. After installation, an application icon associated with the Blynk app builder can be found on the home screen of your smartphone or tablet:
Opening Blynk app builder from Android home screen

Creating a Blynk account

Before you start to create applications with the Blynk app builder, you should create a user account with Blynk Cloud. The following steps will guide you through how to do that:

  1. Open the Blynk app builder on your mobile device by tapping on the application icon labeled Blynk.
  2. Tap Create New Account.
  3. Alternatively, you can log into the Blynk app builder with your Facebook account by tapping on the Log In with Facebook button:
Creating new account—step 1
  1. On the Create New Account page, type your email address for the username, and a password.
  2. Then, tap the Sign Up button:
Creating new account—step 2
  1. A user account will be created, and you will automatically be logged in to the Blynk app builder (Blynk Cloud).
  2. First, you will be notified on how energy works. Tap on the Cool! Got it. button:
Notification about how energy works
Each widget needs energy to operate. When you delete a widget, energy is returned.
  1. At any time, you can log out from the app builder by tapping the log out icon in the toolbar. When prompted, tap LOG OUT, or tap CANCEL if you want to stay logged in.
At the time of writing, Blynk doesn't send any email message to your email account confirming the creation of the new user account.
  1. When you log into the Blynk app builder again, type in your email address associated with the Blynk account and the password, then tap Log In.
  2. You can reset your password by tapping Reset Password at any time.

Creating a new project

Now that you have created a new account with Blynk Cloud and logged in to your Blynk app builder running on your smartphone or tablet, you can follow the following steps to create a new project with the Blynk app builder:

  1. To start building a project, tap New Project. This will bring you to the create New Project wizard:
Creating a new project
  1. Type in demo in the Project Name textbox:
Creating new project—project name
  1. Tap the CHOOSE DEVICE dropdown box to see the available hardware models (the default is ESP8266). Then, tap Raspberry Pi3 B from the Select your hardware list. You may find other versions of the Raspberry Pi as well. Following are the available options for Raspberry Pi versions:
    • Raspberry Pi 2/A+/B+
    • Raspberry Pi 3 B
    • Raspberry Pi A/B (Rev2)
    • Raspberry Pi B (Rev 1)
  2. After choosing the hardware model, tap OK:
Creating new project—Selecting hardware
  1. Tap on the CONNECTION TYPE dropdown list to see the available connection types. Then select WiFi from the CONNECTION TYPE list, followed by OK.
  2. Tap the Create button to create the project workspace:
Creating new project
  1. After successfully creating the project, the app builder will send an auth
    token to confirm your project
    . Every new project you create will have its
    own auth token. The auth token is a unique identifier that consists of alphanumeric characters, and authorizes you to access the Blynk Cloud,
    located at https://www.blynk.cc/:
Notification about the auth token
  1. At the same time, you'll have an auth token automatically sent to the email address you provided.
If you have lost your auth token, you can still find it with your project in Project Settings (the nut icon).
  1. Tap the nut icon in the toolbar to get to the Project Settings page. Then, scroll down to find the DEVICES section. Tap demo Raspberry Pi 3 B (WiFi).
  2. Alternatively, you can tap Email all under AUTH TOKENS to get all the Auth tokens on your email provided for each project in your Blynk account. You can also tap Copy all to copy all the Auth tokens to your mobile device's clipboard:
Finding Auth token—step 10
  1. On the My Devices page, tap demo Raspberry Pi 3 B(WiFi) under My Devices:
My Devices page
  1. You can find the Auth token under the AUTH TOKEN section, but it only shows the last four alphanumeric characters. You can tap the E-mail button to send it to the email account again:
Finding Auth token—step 12

You will learn how to use the Auth token with your C++ code later in this chapter.

Getting parts

Blynk supports over 400 hardware platforms and major connectivity types such as Ethernet, Wi-Fi, Bluetooth, Bluetooth Low Energy, and USB; however, it is very difficult to explain how to build devices for Blynk using all the supporting hardware platforms in a single book. Therefore, this book will be using Raspberry Pi as the hardware platform to demonstrate the ability and power of Blynk.

Raspberry Pi

Raspberry Pi is a small, programmable device. It is a mixture between a very small computer and a programmable embedded board. You can connect the Raspberry Pi to the internet through Wi-Fi or Ethernet. You will be using Raspberry Pi 3, the latest model of the Raspberry Pi family, as the hardware platform; however, you can use other versions of Raspberry Pi, such as Raspberry Pi 2/A+/B+ and Raspberry Pi A/B (revision 2) to work with projects that we will be discussing throughout the book.

The sample code provided with this book is not tested with Raspberry Pi Zero W or Raspberry Pi Zero.

Here is a list of the Raspberry Pi boards available in reverse chronological order:

  • Raspberry Pi 3 Model B (third-generation single-board computer)
  • Raspberry Pi 2 Model B (the Raspberry Pi 2 Model B is the second-generation Raspberry Pi)
  • Raspberry Pi 1 Model B+ (the model B+ is the final revision of the original Raspberry Pi)
  • Raspberry Pi 1 Model A+ (the model A+ is the low-cost variant of Raspberry Pi)
  • Raspberry Pi Zero W (single-board computer with wireless and Bluetooth connectivity)
  • Raspberry Pi Zero (lowest-cost single-board computer)
Raspberry Pi 3 Model B, which is one of the latest models of the Raspberry Pi family, can be found here along with the other models: https://www.raspberrypi.org/products/raspberry-pi-3-model-b/.

Refer to the following screenshot:

Raspberry Pi 3 Model B, a single-board computer with wireless LAN and Bluetooth connectivity

Following is the list of important specifications of Raspberry Pi Model 3:

  • Quad Core 1.2 GHz Broadcom BCM2837 64-bit CPU
  • 1 GB RAM
  • BCM43438 wireless LAN and Bluetooth Low Energy (BLE) on board
  • 40 extended GPIO pins
  • 4 USB 2 ports
  • 4 Pole stereo output and composite video port
  • Full-size HDMI
  • CSI camera port for connecting a Raspberry Pi camera
  • DSI display port for connecting a Raspberry Pi touchscreen display
  • Micro SD port for loading your operating system and storing data
  • Upgraded switched Micro USB power source up to 2.5 A

You will learn more technical details about Raspberry Pi in Chapter 2, Building Your First Blynk Application.

Raspberry Pi can be plugged in to a computer monitor or TV, and uses a standard keyboard and mouse. If you want, you can use the Raspberry Pi without attaching a monitor/TV, keyboard, or mouse.

You will need the following things to prepare your Raspberry Pi before installing Raspbian:

  • SD card: 8 GB class 4 SD card is recommended; however, you can use one with higher capacity like 16 GB, 32 GB, or 64 GB. But having a class 10 micro SD card in your Raspberry Pi is very much recommended. Don't use SD cards lower than class 4, because they provide very low writing speed. The following screenshot shows an 8 GB Kingston class 4 micro SD card. The SD card works as the hard drive of your Raspberry Pi:
Kingston 8 GB class 4 micro SD card
  • Power supply: Raspberry Pi is powered by a micro USB power supply. You'll need a good-quality power supply that can supply at least 2 A at 5V for the Raspberry Pi 3 Model B, or 700 mA at 5V for the earlier, lower-powered models. The following screenshot shows a micro USB power supply for Raspberry Pi:
A micro USB power supply for Raspberry Pi
  • A Wi-Fi dongle (required for earlier, lower-powered models): Allows you to connect your Raspberry Pi to a wireless network. The following screenshot shows the official and recommended universal USB Wi-Fi dongle for Raspberry Pi.
  • Ethernet (network) cable [Model B/B+/2/3 only]: An Ethernet cable is used to connect your Pi to a local network and the internet. The following screenshot shows an Ethernet cable:
SparkFunCAT 6 Cable—3ft (image is CC BY 2.0—https://creativecommons.org/licenses/by/2.0/)

Setting up Raspberry Pi

Let's see how to set up Raspberry Pi:

  1. Place your SD card into the SD card slot on the Raspberry Pi. It will only fit one way
  2. Plug your keyboard and mouse in to the USB ports on the Raspberry Pi
  3. Connect your HDMI cable from your Raspberry Pi to your monitor or TV
  4. Connect a Wi-Fi dongle to one of the USB ports (unless you have a Raspberry Pi 3)
  5. The Raspberry Pi is powered by the micro USB power supply

Setting up software on Raspberry Pi

The SD card works as the hard drive of your Raspberry Pi. As you know, every computer should have an operating system to manage.

The official operating system for Raspberry Pi is known as Raspbian. The Raspbian OS can be installed on the SD card.

Installing Raspbian

Raspbian is the officially supported operating system for Raspberry Pi by the Raspberry Pi Foundation. Raspbian can be installed on Raspberry Pi through NOOBS, or as a standalone image:

  1. Browse the page https://www.raspberrypi.org/downloads/ on the Raspberry Pi website. You can find two options at the top of the page:
    • New Out Of Box Software (NOOBS): An easy operating system installer for beginners
    • Raspbian: The officially supported Raspberry Pi operating system based on Debian
  2. Click Raspbian:
Raspbian
  1. You will navigate to the https://www.raspberrypi.org/downloads/raspbian/ page. Click on RASPBIAN STRETCH LITE, which is a minimal image based on Debian Stretch:
RASPBIAN STRETCH LITE
  1. You can directly download the image file as a Zip file, or you can download it through the torrent. I found that downloading through the torrent is the fastest and most convenient way, but you will need a torrent client installed on your computer. uTorrent and BitTorrent are a couple of the popular clients. You can find plenty of resources on the internet on how to install and use torrent software.
  2. Extract the downloaded compressed image file using 7-Zip (Windows), or the Unarchiver (macOS). You will get an image file like 2017-11-29-raspbian-stretch-lite.img. The first part of the filename indicates the date on which you downloaded the file.

Writing Raspbian Stretch Lite image on SD card

You will need to use an image writing tool to install the image you have downloaded on your SD card.

Etcher is a graphical SD card writing tool that works on macOS, Linux,
and Windows, and is the easiest option for most users. Etcher also supports
writing images directly from the ZIP file, without any unzipping required.
You can download Etcher at https://etcher.io/:

  1. From the drop down-list, choose the operating system you are going to use to run Etcher (I chose Etcher for Windows x64):
Choosing the operating system
  1. The executable file will start downloading, and will be saved to your computer's Downloads folder. You can use Etcher on your computer without installing it. Just run the executable file (Etcher-Portable-1.2.1-x64.exe) to launch the application:
Etcher application window
  1. Connect the micro SD card to your computer. You can use an SD card reader to connect it to your computer. Once connected, Windows will recognize it as a removable drive.
  2. Click the Select Image button, browse the Raspbian image file (2017-11-29-raspbian-stretch-lite.img), and click the Open button. The following screenshot shows the resultant window after selecting the image file:
Selecting image
  1. Click the Select Drive button and choose the SD card. The following screenshot shows the resultant window after selecting the drive for the SD card:
Selecting SD card as the drive
  1. Click the Flash! button to write the image on your micro SD card. The following screenshot shows the window during flashing. When you get a message from Windows User Account Control, click the Yes button to proceed:
Image flashing to SD card in progress

Creating a configuration file for SSH

The Raspbian Stretch Lite doesn't have any configuration settings enabled to work with the SSH protocol for secure remote login from another computer. Therefore, first you should create a configuration file to enable the use of the SSH protocol:

  1. With the SD card connected to your computer, open Command Prompt and change to your Pi's boot partition (let's assume the boot partition of the SD card is i):
C:>i
  1. Then type the following command to create an empty file named .ssh on the root of the boot partition of the SD card:
i:>echo .ssh
  1. Remove the SD card from your computer, and place it into the SD card slot on the Raspberry Pi. It will only fit one way.
  2. Connect the USB Wi-Fi dongle to one of the USB ports (unless you have a Raspberry Pi 3).
  3. Connect the Ethernet cable between your Raspberry Pi and the router.
  4. Finally, connect the power supply to the micro USB port of the Raspberry Pi, and apply power. You will see a steady red LED and intermittently flashing green LED. Wait until the green LED turns off.
  5. Log into your router's portal and find the dynamic IP address assigned with your Raspberry Pi:
Raspberry Pi can be found under Device List
  1. You will notice that the allocated IP address for my Raspberry Pi is 192.168.1.5. You may get a different IP address based on your network topology.

Connecting with Raspberry Pi with SSH

SSH allows you to secularly log into the Raspberry Pi from your computer. PuTTY can be used to establish the connection between your computer and Raspberry Pi, and provides a terminal to run commands on Raspberry Pi. You can download PuTTY at http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.

The following steps will show you how to use PuTTY on Windows:

  1. Open PuTTY by running the downloaded executable file (putty.exe).
  2. In the PuTTY Configuration window, type in your connection settings:
    • Host Name (or IP address): IP address assigned by your router like 192.18.1.5
    • Port: 22
    • Connection type: SSH
  3. Then click the Open button to start the SSH session:
PuTTY configuration
  1. If this is your first time connecting to Raspberry Pi from your computer, you will see the PuTTY security alert. Accept the connection by clicking the Yes button:
PuTTY Security Alert
  1. Once the SSH connection is open, you should see a terminal. Type in the following default credentials to log into your Raspberry Pi. Press Enter following each input:
login as: pi
pi@192.168.1.5's password: raspberry
  1. You are now logged in to your Raspberry Pi with SSH.
  2. When typing your password, you will not see the cursor moving, or any characters typed on your terminal screen:
  1. Log into Raspberry Pi using your default username and password.

Configuring a wireless connection on Raspberry Pi

Now you can configure the wireless connection to allow your Raspberry Pi to connect with your home or school Wi-Fi network. The following steps will guide you through how to configure the connection settings:

  1. Open the wpa_supplicant configuration file in nano using the following command:
pi@raspberrypi:~ $sudonano /etc/wpa_supplicant/wpa_supplicant.conf
  1. Go to the bottom of the file and add the following:
network={
ssid="testing"
psk="testingPassword"
}
  1. If the network you are connecting to does not use a password, the wpa_supplicant entry for the network will need to include the correct key_mgmt entry:
network={
ssid="testing"
key_mgmt=NONE
}
  1. Alternatively, you can use the wpa_passphrase utility to generate an encrypted PSK:
network={
ssid="testing"
#psk="testingPassword"
psk=131e1e221f6e06e3911a2d11ff2fac9182665c004de85300f9cac208a6a80531
}
  1. If you are using a hidden network, an extra option in the wpa_supplicant file, scan_ssid, may help connection:
network={
ssid="yourHiddenSSID"
scan_ssid=1
psk="Your_wifi_password"
}
  1. Now save the file by pressing Ctrl + X, then Y, then finally press Enter.
  2. Reboot your Raspberry Pi for the new configurations to take effect by issuing the following command:
pi@raspberrypi:~ $sudo reboot
  1. You can verify if it has successfully connected by using ifconfig wlan0. If the inetaddr field has an address beside it, the Raspberry Pi has connected to the network. If not, check that your ssid and psk are correct:
Verifying the wireless connection
  1. Otherwise, you can verify the wireless connection between your Raspberry Pi and router by logging into your router's configuration page.
You may get a different user interface depending on your router's brand.

Refer to the following screenshot:

Device list at router configuration page
  1. Now you have successfully connected your Raspberry Pi to the home router's wireless network.

Installing prerequisite software on Raspbian

Now you're ready to install all the required software on your Raspberry Pi to prepare it to work with Blynk Cloud:

  • Update and upgrade packages
  • git core
  • WiringPi
  • Blynk libraries

Updating and upgrading Raspbian

Let's see how to update and upgrade Raspbian:

  1. First, update your system's package list by entering the following command:
pi@raspberrypi:~ $sudo apt-get update

Refer to the following screenshot:

Updating Raspbian
  1. Then, upgrade all your installed packages to their latest versions with the following command:
pi@raspberrypi:~ $sudo apt-get dist-upgrade
  1. When prompted, press Y to continue:
Upgrading Raspbian

Installing git

You will need to install git-core on your Raspberry Pi to work with git repositories for cloning packages like WiringPi, and Blynk libraries.

  1. With the SSH to your Raspberry Pi with PuTTY, run the following command:
pi@raspberrypi:~ $sudo apt-get install git-core
Installing git-core
  1. This will install git on your Raspberry Pi. After installation is complete, verify the version of git by using the following command:
pi@raspberrypi:~ $ git -version

Refer to the following screenshot:

Verifying git version

Installing WiringPi

WiringPi is a PIN-based GPIO access library that can be used with all versions of Raspberry Pi:

  1. First, run the following command to clone the WiringPi repository:
pi@raspberrypi:~ $ git clone git://git.drogon.net/wiringPi

Refer to the following screenshot:

Cloning WiringPi
  1. Then move to the wiringPi directory:
pi@raspberrypi:~ $ cd wiringPi
  1. Run the following command to build the WiringPi:
pi@raspberrypi:~/wiringPi $ ./build

Refer to the following screenshot:

Building WiringPi

Deploying Blynk libraries

Let's look at how to deploy Blynk libraries:

  1. You can deploy the Blynk libraries on Raspberry Pi by running the following commands:
pi@raspberrypi:~/wiringPi $ cd
pi@raspberrypi:~ $ git clone https://github.com/blynkkk/blynk-library.git

Refer to the following screenshot:

Cloning Blynk libraries
  1. After cloning the git repository, move to the linux directory:
pi@raspberrypi:~ $ cd blynk-library/linux
  1. Then build the library from source by targeting Raspberry Pi:
pi@raspberrypi:~/blynk-library/linux $make clean all target=raspberry
  1. This command will output the Blynk file that will be used to connect to the Blynk server:
Building Blynk libraries

Connecting Raspberry Pi with Blynk Cloud

After completing the building process, you can run the sample C++ code to connect your Raspberry Pi with the Blynk Cloud through Wi-Fi:

  1. Run the default source code file, which is main.cpp, with the following command:
pi@raspberrypi:~/blynk-library/linux $sudo ./blynk --token=da999e8ef4ac42148f9f e8427d482451
  1. When you run the command sudo ./blynk --token=da999e8ef4ac42148f9fe8427d482451, the main.cpp file residing in the blynk-library/linux directory gets executed. The sample code only connects to the Blynk server at https://www.blynk.cc/. The output should look something like this:
Output for default file main.cpp
  1. You can find the sample code for main.cpp in the blynk-library/linux directory. You can read the content of the file with the following command:
pi@raspberrypi:~/blynk-library/linux $ cat main.cpp
  1. The output should look something similar to what is on this link: https://github.com/PacktPublishing/Hands-On-Internet-of-Things-with-Blynk/blob/master/Chapter%201/Listing%201-1/main.cpp.
  2. Go through the code and see whether you can understand the key functions. Don't worry, you will learn how to write C++ code for the Blynk application in Chapter 3, Using Controller Widgets.
  3. Now exit from the nano editor by pressing Ctrl + X with your keyboard. The editor will prompt you asking if you want to save the file; type Y in response.

Summary

Now you have to prepared your Raspberry Pi by equipping it with hardware and installing Raspbian OS and required software like git-core, WiringPi, and Blynk libraries. Finally, you ran the default C++ source file to connect your Raspberry Pi to the Blynk Cloud server.

Chapter 2, Building Your First Blynk Application, will present how to build your first application with Blynk. You will learn how to use the Blynk app builder to build an app to turn an LED on and off, and write C++ source code to allow your Raspberry Pi to connect, transfer, and manipulate data with Blynk Cloud.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Use Blynk cloud and Blynk server to connect devices
  • Build IoT applications on Android and iOS platforms
  • A practical guide that will show how to connect devices using Blynk and Raspberry Pi 3

Description

Blynk, known as the most user-friendly IoT platform, provides a way to build mobile applications in minutes. With the Blynk drag-n-drop mobile app builder, anyone can build amazing IoT applications with minimal resources and effort, on hardware ranging from prototyping platforms such as Arduino and Raspberry Pi 3 to industrial-grade ESP8266, Intel, Sierra Wireless, Particle, Texas Instruments, and a few others. This book uses Raspberry Pi as the main hardware platform and C/C++ to write sketches to build projects. The first part of this book shows how to set up a development environment with various hardware combinations and required software. Then you will build your first IoT application with Blynk using various hardware combinations and connectivity types such as Ethernet and Wi-Fi. Then you'll use and configure various widgets (control, display, notification, interface, time input, and some advanced widgets) with Blynk App Builder to build applications. Towards the end, you will learn how to connect with and use built-in sensors on Android and iOS mobile devices. Finally you will learn how to build a robot that can be controlled with a Blynk app through the Blynk cloud and personal server. By the end of this book, you will have hands-on experience building IoT applications using Blynk.

Who is this book for?

This book is targeted at any stakeholder working in the IoT sector who wants to understand how Blynk works and build exciting IoT projects. Prior understanding of Raspberry Pi, C/C++, and electronics is a must.

What you will learn

  • • Build devices using Raspberry Pi and various sensors and actuators
  • • Use Blynk cloud to connect and control devices through the Blynk app builder
  • • Connect devices to Blynk cloud and server through Ethernet and Wi-Fi
  • • Make applications using Blynk app builder on Android and iOS platforms
  • • Run Blynk personal server on the Windows, MAC, and Raspberry Pi platforms

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : May 28, 2018
Length: 271 pages
Edition : 1st
Language : English
ISBN-13 : 9781788995061
Category :
Languages :
Tools :

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 : May 28, 2018
Length: 271 pages
Edition : 1st
Language : English
ISBN-13 : 9781788995061
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
R$50 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
R$500 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 R$25 each
Feature tick icon Exclusive print discounts
R$800 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 R$25 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total R$ 770.97
Internet of Things Programming Projects
R$245.99
Industrial Internet Application Development
R$306.99
Hands-On Internet of Things with Blynk
R$217.99
Total R$ 770.97 Stars icon

Table of Contents

9 Chapters
Setting Up a Development Environment Chevron down icon Chevron up icon
Building Your First Blynk Application Chevron down icon Chevron up icon
Using Controller Widgets Chevron down icon Chevron up icon
Using Display Widgets Chevron down icon Chevron up icon
Using Notification Widgets Chevron down icon Chevron up icon
Connecting with Sensors on Your Mobile Device Chevron down icon Chevron up icon
Setting Up a Personal Blynk Server Chevron down icon Chevron up icon
Controlling a Robot with Blynk Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon
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.