UNIT IV
OPEN PLATEFORMS AND PROGRAMMING
IOT deployment for Raspberry Pi / Arduino platform – Architecture – Programming – Interfacing
– Accessing GPIO Pins – Sending and Receiving signals Using GPIO Pins – Connecting to the
Cloud.
4.1 IOT deployment for Raspberry Pi / Arduino platform
4.1.1 IoT Tools and Devices
4.2 Raspberry PI Architecture
4.2.1. About the Board
4.2.2 The Status LEDs
4.2.3 Starting the Raspbian GUI
4.2.4. Difference between Raspberry Pi is and Desktop Computers
4.3 Raspberry PI interfacing
4.3.1 Features of SPI
4.3.2 Master-slave configuration of SPI
4.3.3 LED Circuit
4.3.4 Interfacing an LED and Switch with Raspberry PI
4.3.5 Interfacing Light Sensor
4.3.6. The sequence of events
4.4. INTRODUCTION TO ARDUINO
4.4.1 Features
4.4.2 Digital pins
4.4.3 Analog pins
4.4.4 Power pins
4.4.5 Arduino Uno R3 programming
4.5. TYPES OF ARDUINO
4.6. ARDUINO PROGRAMMING STRUCTURE
4.6.1 Sketches
4.6.2 Pins
4.6.3 Arduino program for LED blink
4.6.4 Controlling LED by using IR Sensor and Remote
4.6.5 Circuit Diagram
4.6.7 READING SWITCH
4.7. ACCESSING GPIO PINS
4.7.1 Pin Numbering
4.7.2 Control LED with Push Button using Raspberry Pi
4.7.3 Control LED using Python
4.7.4 Functions Used
4.7.5 GPIO.input(channel)
4.7.6 Control LED using C (WiringPi)
4.8. CONNECTING TO THE CLOUD
4.8.1 WAMP: AutoBahn for IoT
4.8.2 Key components of WAMP
4.8.3 Xively Cloud for IoT
*******
4.1. IOT DEPLOYMENT:
1
, UNIT IV OPEN PLATEFORMS AND PROGRAMMING OCS352 IOT CONCEPTS AND APPLICATIONS
Explain in detail about IoT Deployment.
➢ IoT development means combining hardware parts and software programs in such a way that the final
product could monitor specific values, collect and transfer data, analyse given data and cause the
physical device to act correspondingly.
➢ Creating such systems is a true challenge.
➢ Moreover, the Internet of Things has already been transformed into an industry in its own right, so
the need for reliable and comprehensive developer toolkits has also increased.
➢ IoT development, tools needed to create complex applications are represented by IoT hardware devices
(boards, SoM, SoC, sensors, gateways, trackers, and more), IoT app development platformism, IoT
operating systems (e.g., Embedded Linux) and programming languages.
4.1.1 IoT Tools and Devices
The 15 most popular tools currently used ✓ Node-RED
for IoT projects are ✓ Site Where
✓ Arduino ✓ Device Hive
✓ Flutter ✓ Home Assistant
✓ Kinoma ✓ Things Board
✓ Tessel 2 ✓ Milesight DeviceHub
✓ M2MLabs Mainspring ✓ Zetta
✓ Raspberry Pi OS (ex. Raspbian)
******
4.2 RASPBERRY PI ARCHITECTURE
Explain in detail about Raspberry Pi Architecture. || Explain the architecture of Raspberry Pi and
its role in IoT deployment. [MAY 2025]
➢ A Raspberry Pi is a credit card-sized computer originally designed for education, inspired by the
1981 BBC Micro.
➢ Creator Eben Upton's goal was to create a low-cost device that would improve programming skills
and hardware understanding at the pre-university level.
➢ The Raspberry Pi is slower than a modern laptop or desktop but is still a complete Linux computer
and can provide all the expected abilities that implies, at a low-power consumption level.
2
, UNIT IV OPEN PLATEFORMS AND PROGRAMMING OCS352 IOT CONCEPTS AND APPLICATIONS
Versions Remarks
Raspberry Pi 1 ➢ The original Raspberry Pi had 256 Mb of RAM, which increased to 512 MB in a
later revision. It has a 26-way GPIO connector.
Pi Zero ➢ The Pi Zero includes the GPIO connector, but the header pins are not soldered.
Raspberry Pi 2 ➢ The Raspberry Pi 2 swapped the single-core processor for a much faster quad-core
processor and increased the memory to 1GB RAM.
Raspberry Pi 3 ➢ The Raspberry Pi 3 changes the processor to an even more powerful 64-bit
processor.
➢ It also adds Wi-Fi and bluetooth which previously needed to be added as a USB
device.
➢ The Raspberry Pi 3 Model B was launched in February 2016.
➢ To get the Raspberry Pi working an SD card needs to be prepared with the Linux operating system
installed.
➢ Raspberry Pi users have made many creative and impressive projects using this device.
➢ It can also be programmed to assist in housekeeping your network by functioning as NAS, LDAP server,
web server, media server, DNS server etc.
➢ The Raspberry Pi Foundation recommends Python. Any language which will compile for ARMv6 can
be used.
➢ Installed by default on the Raspberry Pi C, C++, Java, Scratch and Ruby.
4.2.1. About the Board
➢ The Raspberry Pi does not have a separate CPU, RAM or GPU. Instead they are all squeezed into one
component called a system on Chip or SoC unit.
➢ Raspberry Pi is open hardware with the exception of its primary chip, the Broadcom SoC which runs the
main components of the board CPU, graphics, memory, USB controller etc.
3
, UNIT IV OPEN PLATEFORMS AND PROGRAMMING OCS352 IOT CONCEPTS AND APPLICATIONS
Figure:4.1 Block diagram of Raspberry Pi
Figure: 4.2 Raspberry Pi circuit board
➢ All of these Raspberry Pi Models share the following features
1. Operating systems: Raspbian RaspBMC. Arch Linux, Rise OS, OpenELEC Pidora.
2. Video output: HDMI Composite RCA.
3. Supported resolutions: 640x350 to 1920x1200, including 1080p, PAL and NTSC standards.
4. Power source: Micro USB
4