FDP – Raspberry Pi and Python
Pi is a Pie!!
FDP – Raspberry Pi and Python
A Gateway
2
Gateway is a network point that acts as an entrance to another
network.
The devices/computers that control traffic within your company's
network or at your local Internet service provider (ISP) are gateway
nodes.
Gateway will have functions like protocol translation, firewall, proxy,
DHCP, etc.
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
An IoT Gateway
3
Constrained Devices i.e. they have no/less computation, communication, memory,
etc.
Not possible to support all device related protocols for server/cloud
Centralized as well as Local Analysis and Control
Need for the applications like Home Automation, Greenhouse, Smart Grid, etc.
Monitoring and Management of devices
Local data storage
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
An IoT Gateway
4
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
IoT Gateways
5
Development Kits
SBC/ Boards
Gateways
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
IoT Gateways
6
Intel Edison, Galileo
Arduino
Beaglebone Black/Blue/ Green
ARM Development Board
Intel IoT Gateway Kit
….
Raspberry Pi
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Gateway Comparison
7
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Why a Pi?
8
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
The Evolution of Pi
9
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
The Popularity….
10
A credit card size PC/ Open Hardware
Accessible Pricing
Incredible community
Just like a normal family desktop PC — a processor, RAM, HDMI port,
audio output, and USB ports for adding peripherals like a keyboard and
mouse
Almost a full fledged OS
Comes with the most recognizable component – the GPIO
Low powered (5V) micro-computer
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Major Revisions
11
Pi Zero
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Major Revisions
12
SN MODEL RAM PROCESSING SPEED
1 RPi 4 2GB/ 4GB/ 8GB 1.5GHz
2 RPi 3 Model B+ 1GB 1.4 GHz
3 RPi 3 Model B 1GB 1.2 GHz
4 RPi 3 Model A+ 512 MB 1.4 GHz
5 RPi Zero 512MB 1 GHz
6 RPi 2 Model B 1GB 900MHz
7 RPi 1 Model B+ 512MB 700MHz
8 RPi 1 Model A+ 512MB 700MHz
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
A Visual – Raspberry Pi 4
13
Source: Lifewire
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Raspberry Pi 3 Model B
14
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
A Visual – Raspberry Pi 4
15
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Raspberry Pi 3 - Specs
16
Chipset: Broadcom BCM2837
CPU: 1.2GHz quad-core 64-bit ARM cortex A53
Ethernet : 10/100 (Max throughput 100Mbps)
USB: Four USB 2.0 with 480Mbps data transfer
Storage: MicroSD card or via USB-attached storage
Wireless: 802.11n Wireless LAN (Peak transmit/receive throughput of 150Mbps), Bluetooth
4.1
Graphics: 400MHz VideoCore IV multimedia
Memory: 1GB LPDDR2-900 SDRAM
Expandability: 40 general purpose input-output pins
Video: HDMI port
Audio: Combined 3.5mm audio out jack and composite video
Camera interface (CSI)
Display interface (DSI)
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
The Best Selling Feature - GPIO
17
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
18
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Pin Groups
19
Power: Pins that are labeled 5.0v supply 5 volts of power and those labeled 3V3 supply 3.3 volts of power. There are two 5V pins and two 3V3 pins.
GND: These are the ground pins. There are eight ground pins.
Input/ Output pins: These are the pins labeled with the # sign, for example, #17, #27, #22, etc. These pins can be used for input or output.
I2C: I2C is a serial protocol for a two-wire interface to connect low-speed devices like microcontrollers, EEPROMs, A/D and D/A converters, I/O
interfaces, and other similar peripherals in embedded systems. These pins are labeled SDA and SCL.
UART: The Universal Asynchronous Receiver/Transmitter allows your Raspberry Pi to be connected to serial peripherals. The UART pins are labeled
TXD and RXD.
SPI: The Serial Peripheral Interface is a synchronous serial communication interface specification used for short distance communication, primarily
in embedded systems. The SPI pins are labeled MOSI, MISO, SCLK, CE0, and CE1.
ID EEPROM: Electrically Erasable Programmable Read-Only Memory is a user-modifiable read-only memory that can be erased and written to
repeatedly through the application of higher than normal electrical voltage. The two EEPROM pins on the Raspberry Pi (EED and EEC) are also
secondary I2C ports that primarily facilitate the identification of Pi Plates (e.g., Raspberry Pi Shields/Add-On Boards) that are directly attached to the
Raspberry Pi.
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Ways to Connect
20
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Text Editors
21
Desktop Editors
Text Editor – like Notepad in Windows
Thonny – Python REPL and IDE
Geany: C/C++, Python
GVim: Vim (listed below) also has a graphical version which opens in a window and allows interaction with the
mouse.
Command Line Editors
Nano: easy to use, most popular. To use: nano somefile.txt. Keyboard shortcuts like Ctrl + O to save and Ctrl + X to
exit.
Vi: A very old (c. 1976) command-line editor. It's succeeded by Vim (Vi Improved), which requires installation.
Emacs: GNU Command line editor which is not installed by default.
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Let’s get a slice….
22
OS Installation – Over to Kaushal
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
References
23
https://www.lifewire.com/what-is-raspberry-pi-4042337
https://www.postscapes.com/iot-gateways/#hardware/?view_202_page=3
https://www.codemag.com/Article/1607071/Introduction-to-IoT-Using-the-
Raspberry-Pi
https://pi4j.com/1.2/pins/model-3b-rev1.html
https://socialcompare.com/en/comparison/raspberrypi-models-comparison
Copyright © CDAC 2020 25-08-2020
FDP – Raspberry Pi and Python
Thank You
24
Copyright © CDAC 2020 25-08-2020