SlideShare a Scribd company logo
Raspberry PiRaspberry Pi
Content Layout
 Raspberry Pi
o Introduction
o Types & Specifications
o OS
o Architecture
o GPIO Pins
o Hardware & Connectivity
o Use of PI
 Wireless Display over Bluetooth using Pi and Android Phone
 Video
o Raspberry Pi based FM Transmitter
o Difference between Raspberry Pi & Arduino
What is Raspberry Pi?
Raspberry Pi is a single board computer which is the size as small as a credit card.
 Developed by Raspberry Pi foundation in UK
 Costs around US$25 to $35
KEY FEATURES
• Connect to the TV via HDMI interface
• For learning programming
• Act as a media centre for video playback or gaming functions
 The Raspberry Pi measures 85.60mm x 56mm x 21mm (or roughly 3.37″ x 2.21″ x 0.83″) & It weighs 45g
Types& Specification Of Raspberry Pi 
There are two types of Raspberry Pi :
Model A Model B
OPERATING SYSTEM USED IN RASPBERRY PI
 First you have to write it to a suitable (2GB or 4GB) SD card using the UNIX tool dd.
Windows users can use Win32 Disk Imager.
 Install NOOBS in your primary PC
 List of OS
Raspbian “wheezy”
OpenELEC
Occidentalis v0.2
Pidora
RaspBMC
RISC OS
Arch
Linux based OS
ARCHITECTURE OF RASPBERRY PI
PINSLAYOUT
• 17 GPIOpins
• most have alternated functions
• two pins for UART; two for I2C; six for
SPI
• All 17 pins can be GPIO (i.e., INPUT or
OUTPUT)
• all support interrupts
• internal pull-ups & pull-downs for each
pin
•Pins are 3.3V not 5V like on the Arduino
•They are connected directly to the
Broadcom chip
•Sending 5V to a pin may kill the Pi
•Maximum permitted current draw from a
3.3V pin is 50mA
Diagram includes BCM GPIO references (GPIO.BCM), common
functions, WiringPi pin references, and Pin numbers (GPIO.BOARD).
The Bigger Picture
Hardware & Connectivity inside the Pi
COMPONENTSOFA RASPBERRY PI
POWER
5v micro
USB
connector
(Similar to the one on a lot of mobile phones!)
A/V (AUDIO/VIDEO)
HDMI Audio & Video
(works with modern TVs and DVI monitors)
A/V (AUDIO/VIDEO)
RCA Video
(works with
most older
TVs)
HDMI Audio & Video
(works with modern TVs and DVI monitors)
A/V (AUDIO/VIDEO)
RCA Video
(works with
most older
TVs)
HDMI Audio & Video
(works with modern TVs and DVI monitors)
3.5mm Audio
Standard
headphone
socket
CONNECTIVITY
2 x USB 2.0
ports
CONNECTIVITY
2 x USB 2.0
ports
10/100Mb
Ethernet
CONECTIVITY
2 x USB 2.0
ports
10/100Mb
Ethernet
GPIO
(General
Purpose
Input &
Output)
INTERNALS
SOC (System On a Chip)
Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
INTERNALS
LAN Controller
SOC (System On a Chip)
Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
INTERNALS
JTAG
(debug ports)
LAN Controller
SOC (System On a Chip)
Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
INTERNALS
JTAG
(debug ports)
LAN Controller
SOC (System On a Chip)
Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
CSI
(camera interface)
INTERNALS
JTAG
(debug ports)
LAN
Controller
SOC (System On a Chip)
Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
CSI
(camera interface)
DSI
(display interface)
STORAGE
SD Card Slot
(supports SD cards up to 32GB)
10 USESFORA RASPBERRY PI
10 Office
123456789
12345678910
Office
9 Programming
1234567810
12345678910
Programming
8
Games
Console
1234567910
12345678910
Games
Console
7 Minecraft
1234568910
12345678910
Minecraft
6 Tor Router
1234578910
Tor Router
12345678910
5 HTPC
1234678910
12345678910
HTPC
4 Bartender
1235678910
Bartender
12345678910
3 Camera
1245678910
12345678910
Camera
2
1345678910
Clock
12345678910
Clock
1
2345678910
PiBot!
PiBot!
12345678910
WIRELESSDISPLAY OVER BLUETOOTH
USING PI AND ANDROID PHONE
PROJECT OVERVIEW
 Goal is to build a system using Raspberry Pi and an Android phone to
get the wireless display over Bluetooth and setup a Virtual Network
connection between them
 The basic idea is to set up Bluetooth networking with the Pi, and use
SDL VNC viewer to display the X screen on the Android device
 Virtual NetworkComputing (VNC) is a graphical desktop sharing
system that uses the Remote Frame Buffer protocol (RFB) to remotely
control another computer. It transmits the keyboard and mouse events
from one computer to another, relaying the graphical screen updates
back in the other direction, over a network.
MOTIVATION
 The basic idea of connecting a raspberry pi and an android
over Bluetooth and VNC
 Give usera flexibility to access and workremotely overthe phone
 Can help save and store data over the pi and phone. The
phone can be accessed completely over the Raspberry Pi
 The Raspberry Pi is a pretty powerful device, but much of its
benefits come when it's connected to the Internet. If we want
to utilize the Pi for mobility, we should try this method of
tethering it to our smartphones to get it online anywhere we
have mobile data
SYSTEM ARCHITECTURESystem Architecture:
An overall view of the system is as below:
Ping
On Pi Android Phone
Bluetooth network setup
UtilityVNC Set-up
BLUETOOTH NETWORK SETUP
 The Raspberry pi is not equipped with the built in Bluetooth,
so we need to follow the below steps:
 Bluetooth dongle (We used version 2.0)
 Install drivers
 Commands on the command editor of pi to scan the devices
over Bluetooth. This is needed only for first time
 Connect
VNC SETUPFOR RASPBERRY PI
 Using commands, we installed
TightVNCServer over Raspberry Pi
 Set the pixel format and
geometry settings as for the
Android display screen
 Install client over android
 Connect to Raspberry pi
LEARNING
 Basic Raspberry Pi setup and connection
 Connecting Raspberry Pi and android phone over Bluetooth and access
the data and folders of Android from pi
 Establishing the Virtual Network connection between the Pi and Android
 This enables the users to remotely access the Raspberry pi system over a phone
 Once completely installed, the Pi should automatically mount and
connect to our mobile device when we plug it in, without having to fiddle
around in the command
 Can be enhanced and improved for future works like live
demonstrations, programming and learning
SERVO WITH THE PI
Controlling a Servo with the Pi
• Controlling the servos requires PWM, aka Pulse Width Modulation
– The Arduino program has complete control of the microcontroller
• when it is running loop() nothing else can use the CPU
– Except for interrupt handlers written as part of the Arduino
program
– On the Raspberry Pi, your program runs within a Linux OS
• The Linux OS may switch to running another program!
– But you can change your program’s scheduling priority
• Some ways of getting the Pi to give the impression that it is a real time
system and to do PWM ‘properly’:
Connect a Parallax Servo
Servo Connector:
Black – Pi’s ground
Red – Pi’s 5V
White – signal on GPIO 17
Image credit: http://www.parallax.com/
NOTE: For a single small servo you can take the 5 volts for it from the Pi header,
but doing anything non-trivial with four servos connected pulls the 5 volts down
far enough to crash the Pi
Using WiringPi’s servo example
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <wiringPi.h>
#include <softServo.h>
int main () {
if (wiringPiSetup () == -1) { // setup to use Wiring pin numbers
fprintf (stdout, "oops: %sn", strerror (errno)) ;
return 1 ;
}
softServoSetup (0, 1, 2, 3, 4, 5, 6, 7) ; // wiringPi pin numbers
for (;;) {
softServoWrite (0, 0) ; // wiringPi pin 0 is BCM_GPIO 17
delay (1000) ;
softServoWrite (0, 500) ;
delay (1000);
softServoWrite (0, 1000) ;
delay (1000);
}
Running servo.c
• To compile: gcc -Wall -o servo servo.c
wiringPi/wiringPi/softServo.c  compile softServo.c
-IwiringPi/wiringPi  path to softServo.c
-lwiringPi  include wiring library
• To run: sudo ./servo
• Calling softServoWrite () ;
– The 1st
input is the pin number
– The 2nd
input refers to the number of microseconds of the pulse.
• An input of 0 produces a 1000uSec (1mSec) pulse (hard left)
• An input of 1000 produces a 2000uSec (2mSec) pulse (hard right)
• An input of 500 produces a 1500uSec (1.5 mSec) pulse (stop)
Raspberry-Pi

More Related Content

PPTX
Raspberry Pi (Introduction)
PPT
Brain chips seminar ppt
PDF
Architecture d'un réseau GSM 2G (Téléphonie Mobile)
PPTX
6G mobile technology
PPTX
QR Codes presentation
PPT
Raspberry Pi
PDF
Introduction to Raspberrypi
PPT
Brain chips
Raspberry Pi (Introduction)
Brain chips seminar ppt
Architecture d'un réseau GSM 2G (Téléphonie Mobile)
6G mobile technology
QR Codes presentation
Raspberry Pi
Introduction to Raspberrypi
Brain chips

What's hot (20)

PPTX
Raspberry pi
PPT
Raspberry Pi Technology
PPT
Seminar Presentation on raspberry pi
PPT
Raspberry Pi Presentation
PPT
Rasp berry Pi
PPTX
Raspberry Pi Introduction
PPTX
Raspberry pi
PPTX
Raspberry pi
PPTX
Introduction To Raspberry Pi with Simple GPIO pin Control
PPTX
Introduction to raspberry pi
PPTX
Raspberry pi complete setup
PPTX
Raspberry Pi Session - 22_11_2014
PPTX
Raspberry Pi
PPTX
Presentation on Raspberry pi
PDF
My presentation raspberry pi
PPTX
Raspberry pi
PPT
Raspberry pi
PPTX
Home automation using arduino
PPTX
Simple Presentation On Raspberry pi
PPTX
Raspberry pi
Raspberry pi
Raspberry Pi Technology
Seminar Presentation on raspberry pi
Raspberry Pi Presentation
Rasp berry Pi
Raspberry Pi Introduction
Raspberry pi
Raspberry pi
Introduction To Raspberry Pi with Simple GPIO pin Control
Introduction to raspberry pi
Raspberry pi complete setup
Raspberry Pi Session - 22_11_2014
Raspberry Pi
Presentation on Raspberry pi
My presentation raspberry pi
Raspberry pi
Raspberry pi
Home automation using arduino
Simple Presentation On Raspberry pi
Raspberry pi
Ad

Viewers also liked (20)

PPTX
Raspberry Pi presentation for Computer Architecture class
PDF
LCA13: ARMv8 Status and Updates
PDF
Introduction to Raspberry PI
DOCX
A seminar report on Raspberry Pi
PPTX
Rassberry pi
PPTX
Getting Started with Raspberry Pi
PPTX
Raspberry pi
PDF
AKIBAX2010 新ブーム「電子工作」を体験しよう!
PDF
How I Learned To Stop Worrying (And Love The KiCad)
PDF
Iphoneで良い音楽を聞く方法
PDF
これからの音楽はハイレゾだ!
PDF
ビル・ゲイツ「学校では教えてくれない人生に役立つ11のルール」
PPTX
Why (and how) to switch to KiCad
ODP
Designing with KiCAD of 64-bit ARM board
PPTX
PCB Business Card
PDF
Picademy 5 Picamera Intro Workshop
PDF
Raspberry PiのUSB OTGを試す
PDF
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
PDF
プログラミング言語の理念いろいろ
PPTX
Raspberry Piで 初心者が 半日でできる電子工作 を考えてみた
Raspberry Pi presentation for Computer Architecture class
LCA13: ARMv8 Status and Updates
Introduction to Raspberry PI
A seminar report on Raspberry Pi
Rassberry pi
Getting Started with Raspberry Pi
Raspberry pi
AKIBAX2010 新ブーム「電子工作」を体験しよう!
How I Learned To Stop Worrying (And Love The KiCad)
Iphoneで良い音楽を聞く方法
これからの音楽はハイレゾだ!
ビル・ゲイツ「学校では教えてくれない人生に役立つ11のルール」
Why (and how) to switch to KiCad
Designing with KiCAD of 64-bit ARM board
PCB Business Card
Picademy 5 Picamera Intro Workshop
Raspberry PiのUSB OTGを試す
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい
プログラミング言語の理念いろいろ
Raspberry Piで 初心者が 半日でできる電子工作 を考えてみた
Ad

Similar to Raspberry-Pi (20)

PDF
Amity Raspberry Jam
PDF
Video conferincing
PPTX
IoT for data science Module 5 - Raspberry Pi.pptx
PDF
Raspberry pi technical documentation
PPTX
M.Tech Internet of Things Unit - III.pptx
PDF
Iaetsd the universal brain for all robots
PPTX
Raspberry Pi - Unlocking New Ideas for Your Library
PPTX
Capstone_Project.ppt
PDF
Iaetsd the world’s smallest computer for programmers and app developers
PPTX
RASPBERRY Pi.pptx
PPTX
Raspberry pi
PDF
Internet of things aktu lab file
PPTX
Bulb Control using Web App with Raspberry Pi
PDF
Develop Smart Solutions with Raspberry Pi and EnableX Live Video API
PPTX
IOT notes ....,.........
PPTX
Raspberry Pi Free Session - 20_09_2014
PDF
Single Board Computers & Raspberry Pi Basics
PPSX
Low Cost HD Surveillance Camera using Raspberry PI
PPTX
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
PPTX
Raspberry pi
Amity Raspberry Jam
Video conferincing
IoT for data science Module 5 - Raspberry Pi.pptx
Raspberry pi technical documentation
M.Tech Internet of Things Unit - III.pptx
Iaetsd the universal brain for all robots
Raspberry Pi - Unlocking New Ideas for Your Library
Capstone_Project.ppt
Iaetsd the world’s smallest computer for programmers and app developers
RASPBERRY Pi.pptx
Raspberry pi
Internet of things aktu lab file
Bulb Control using Web App with Raspberry Pi
Develop Smart Solutions with Raspberry Pi and EnableX Live Video API
IOT notes ....,.........
Raspberry Pi Free Session - 20_09_2014
Single Board Computers & Raspberry Pi Basics
Low Cost HD Surveillance Camera using Raspberry PI
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Raspberry pi

More from Rehan Fazal (20)

PPTX
Water Distribution Control System
PPTX
Plc based Robotic Arm and Automated Different Size Bottle Filling System
PPTX
Jindal Steel
PPT
Chhatisgarh State Electricity
PPTX
BHEL Vocational Training
PPTX
YOKOGAWA CENTUM CS 3000 R3
PPTX
Surface acoustic wave (saw) radio transponders
PPTX
Red Tacton
PPTX
Transparent Electronics
PPTX
Thermoelectric Fan Powered By a Candle
PPTX
Spintronics
PPTX
Projectors
PPT
Paper Battery
PPT
Organic Light Emitting Diode
PPTX
Online Electric Vehicle
PPTX
PPT
Guided Missiles
PPTX
Emp Bomb
PPTX
Electronic Nose
PPTX
Brain Machine Interface
Water Distribution Control System
Plc based Robotic Arm and Automated Different Size Bottle Filling System
Jindal Steel
Chhatisgarh State Electricity
BHEL Vocational Training
YOKOGAWA CENTUM CS 3000 R3
Surface acoustic wave (saw) radio transponders
Red Tacton
Transparent Electronics
Thermoelectric Fan Powered By a Candle
Spintronics
Projectors
Paper Battery
Organic Light Emitting Diode
Online Electric Vehicle
Guided Missiles
Emp Bomb
Electronic Nose
Brain Machine Interface

Recently uploaded (20)

PDF
Sunset Boulevard Student Revision Booklet
PDF
5.Universal-Franchise-and-Indias-Electoral-System.pdfppt/pdf/8th class social...
PDF
3.The-Rise-of-the-Marathas.pdfppt/pdf/8th class social science Exploring Soci...
PPTX
IMMUNIZATION PROGRAMME pptx
PPTX
Cardiovascular Pharmacology for pharmacy students.pptx
PDF
High Ground Student Revision Booklet Preview
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PPTX
How to Manage Global Discount in Odoo 18 POS
PPTX
Onica Farming 24rsclub profitable farm business
PDF
Mga Unang Hakbang Tungo Sa Tao by Joe Vibar Nero.pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
English Language Teaching from Post-.pdf
PPTX
vedic maths in python:unleasing ancient wisdom with modern code
PPTX
Congenital Hypothyroidism pptx
PDF
Types of Literary Text: Poetry and Prose
PPTX
ACUTE NASOPHARYNGITIS. pptx
PPTX
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
Module 3: Health Systems Tutorial Slides S2 2025
PPTX
How to Manage Loyalty Points in Odoo 18 Sales
Sunset Boulevard Student Revision Booklet
5.Universal-Franchise-and-Indias-Electoral-System.pdfppt/pdf/8th class social...
3.The-Rise-of-the-Marathas.pdfppt/pdf/8th class social science Exploring Soci...
IMMUNIZATION PROGRAMME pptx
Cardiovascular Pharmacology for pharmacy students.pptx
High Ground Student Revision Booklet Preview
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
How to Manage Global Discount in Odoo 18 POS
Onica Farming 24rsclub profitable farm business
Mga Unang Hakbang Tungo Sa Tao by Joe Vibar Nero.pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
English Language Teaching from Post-.pdf
vedic maths in python:unleasing ancient wisdom with modern code
Congenital Hypothyroidism pptx
Types of Literary Text: Poetry and Prose
ACUTE NASOPHARYNGITIS. pptx
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
Week 4 Term 3 Study Techniques revisited.pptx
Module 3: Health Systems Tutorial Slides S2 2025
How to Manage Loyalty Points in Odoo 18 Sales

Raspberry-Pi

  • 2. Content Layout  Raspberry Pi o Introduction o Types & Specifications o OS o Architecture o GPIO Pins o Hardware & Connectivity o Use of PI  Wireless Display over Bluetooth using Pi and Android Phone  Video o Raspberry Pi based FM Transmitter o Difference between Raspberry Pi & Arduino
  • 3. What is Raspberry Pi? Raspberry Pi is a single board computer which is the size as small as a credit card.  Developed by Raspberry Pi foundation in UK  Costs around US$25 to $35 KEY FEATURES • Connect to the TV via HDMI interface • For learning programming • Act as a media centre for video playback or gaming functions  The Raspberry Pi measures 85.60mm x 56mm x 21mm (or roughly 3.37″ x 2.21″ x 0.83″) & It weighs 45g
  • 4. Types& Specification Of Raspberry Pi  There are two types of Raspberry Pi : Model A Model B
  • 5. OPERATING SYSTEM USED IN RASPBERRY PI  First you have to write it to a suitable (2GB or 4GB) SD card using the UNIX tool dd. Windows users can use Win32 Disk Imager.  Install NOOBS in your primary PC  List of OS Raspbian “wheezy” OpenELEC Occidentalis v0.2 Pidora RaspBMC RISC OS Arch Linux based OS
  • 7. PINSLAYOUT • 17 GPIOpins • most have alternated functions • two pins for UART; two for I2C; six for SPI • All 17 pins can be GPIO (i.e., INPUT or OUTPUT) • all support interrupts • internal pull-ups & pull-downs for each pin •Pins are 3.3V not 5V like on the Arduino •They are connected directly to the Broadcom chip •Sending 5V to a pin may kill the Pi •Maximum permitted current draw from a 3.3V pin is 50mA
  • 8. Diagram includes BCM GPIO references (GPIO.BCM), common functions, WiringPi pin references, and Pin numbers (GPIO.BOARD). The Bigger Picture
  • 9. Hardware & Connectivity inside the Pi COMPONENTSOFA RASPBERRY PI
  • 10. POWER 5v micro USB connector (Similar to the one on a lot of mobile phones!)
  • 11. A/V (AUDIO/VIDEO) HDMI Audio & Video (works with modern TVs and DVI monitors)
  • 12. A/V (AUDIO/VIDEO) RCA Video (works with most older TVs) HDMI Audio & Video (works with modern TVs and DVI monitors)
  • 13. A/V (AUDIO/VIDEO) RCA Video (works with most older TVs) HDMI Audio & Video (works with modern TVs and DVI monitors) 3.5mm Audio Standard headphone socket
  • 14. CONNECTIVITY 2 x USB 2.0 ports
  • 15. CONNECTIVITY 2 x USB 2.0 ports 10/100Mb Ethernet
  • 16. CONECTIVITY 2 x USB 2.0 ports 10/100Mb Ethernet GPIO (General Purpose Input & Output)
  • 17. INTERNALS SOC (System On a Chip) Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
  • 18. INTERNALS LAN Controller SOC (System On a Chip) Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
  • 19. INTERNALS JTAG (debug ports) LAN Controller SOC (System On a Chip) Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM
  • 20. INTERNALS JTAG (debug ports) LAN Controller SOC (System On a Chip) Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM CSI (camera interface)
  • 21. INTERNALS JTAG (debug ports) LAN Controller SOC (System On a Chip) Broadcom BCM2835 700Mhz & 256Mb / 512Mb RAM CSI (camera interface) DSI (display interface)
  • 22. STORAGE SD Card Slot (supports SD cards up to 32GB)
  • 44. WIRELESSDISPLAY OVER BLUETOOTH USING PI AND ANDROID PHONE
  • 45. PROJECT OVERVIEW  Goal is to build a system using Raspberry Pi and an Android phone to get the wireless display over Bluetooth and setup a Virtual Network connection between them  The basic idea is to set up Bluetooth networking with the Pi, and use SDL VNC viewer to display the X screen on the Android device  Virtual NetworkComputing (VNC) is a graphical desktop sharing system that uses the Remote Frame Buffer protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse events from one computer to another, relaying the graphical screen updates back in the other direction, over a network.
  • 46. MOTIVATION  The basic idea of connecting a raspberry pi and an android over Bluetooth and VNC  Give usera flexibility to access and workremotely overthe phone  Can help save and store data over the pi and phone. The phone can be accessed completely over the Raspberry Pi  The Raspberry Pi is a pretty powerful device, but much of its benefits come when it's connected to the Internet. If we want to utilize the Pi for mobility, we should try this method of tethering it to our smartphones to get it online anywhere we have mobile data
  • 47. SYSTEM ARCHITECTURESystem Architecture: An overall view of the system is as below: Ping On Pi Android Phone Bluetooth network setup UtilityVNC Set-up
  • 48. BLUETOOTH NETWORK SETUP  The Raspberry pi is not equipped with the built in Bluetooth, so we need to follow the below steps:  Bluetooth dongle (We used version 2.0)  Install drivers  Commands on the command editor of pi to scan the devices over Bluetooth. This is needed only for first time  Connect
  • 49. VNC SETUPFOR RASPBERRY PI  Using commands, we installed TightVNCServer over Raspberry Pi  Set the pixel format and geometry settings as for the Android display screen  Install client over android  Connect to Raspberry pi
  • 50. LEARNING  Basic Raspberry Pi setup and connection  Connecting Raspberry Pi and android phone over Bluetooth and access the data and folders of Android from pi  Establishing the Virtual Network connection between the Pi and Android  This enables the users to remotely access the Raspberry pi system over a phone  Once completely installed, the Pi should automatically mount and connect to our mobile device when we plug it in, without having to fiddle around in the command  Can be enhanced and improved for future works like live demonstrations, programming and learning
  • 52. Controlling a Servo with the Pi • Controlling the servos requires PWM, aka Pulse Width Modulation – The Arduino program has complete control of the microcontroller • when it is running loop() nothing else can use the CPU – Except for interrupt handlers written as part of the Arduino program – On the Raspberry Pi, your program runs within a Linux OS • The Linux OS may switch to running another program! – But you can change your program’s scheduling priority • Some ways of getting the Pi to give the impression that it is a real time system and to do PWM ‘properly’:
  • 53. Connect a Parallax Servo Servo Connector: Black – Pi’s ground Red – Pi’s 5V White – signal on GPIO 17 Image credit: http://www.parallax.com/ NOTE: For a single small servo you can take the 5 volts for it from the Pi header, but doing anything non-trivial with four servos connected pulls the 5 volts down far enough to crash the Pi
  • 54. Using WiringPi’s servo example #include <stdio.h> #include <errno.h> #include <string.h> #include <wiringPi.h> #include <softServo.h> int main () { if (wiringPiSetup () == -1) { // setup to use Wiring pin numbers fprintf (stdout, "oops: %sn", strerror (errno)) ; return 1 ; } softServoSetup (0, 1, 2, 3, 4, 5, 6, 7) ; // wiringPi pin numbers for (;;) { softServoWrite (0, 0) ; // wiringPi pin 0 is BCM_GPIO 17 delay (1000) ; softServoWrite (0, 500) ; delay (1000); softServoWrite (0, 1000) ; delay (1000); }
  • 55. Running servo.c • To compile: gcc -Wall -o servo servo.c wiringPi/wiringPi/softServo.c  compile softServo.c -IwiringPi/wiringPi  path to softServo.c -lwiringPi  include wiring library • To run: sudo ./servo • Calling softServoWrite () ; – The 1st input is the pin number – The 2nd input refers to the number of microseconds of the pulse. • An input of 0 produces a 1000uSec (1mSec) pulse (hard left) • An input of 1000 produces a 2000uSec (2mSec) pulse (hard right) • An input of 500 produces a 1500uSec (1.5 mSec) pulse (stop)