SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
Interfacing the Raspberry Pi
        to the World
Up close and personal with P1 (and P5!)


    @OmerK | OSHCAMP 2012 | 15 Sep 2012
omer.kilic.name
Agenda
●   Mechanical Details
●   Electrical Details
●   Software Details
●   Tips for headless operation
●   Questions
Mechanical
●   Standard 100mil (2.54mm) spacing
    –   P1 → 2x13 way
    –   P5 → 2x4 way
M/F Jumper Cables
M/F Jumper Cables
IDC Cable




Re-use old floppy cables!
http://www.raspberrypi.org/archives/1404
“Breakout” boards




 Pi Cobbler from Adafruit
Slice of Pi from Ciseco




      Pi Plate from Adafruit



More at: http://elinux.org/RPi_Expansion_Boards
Electrical
●   P1
    ●  Power
       ● 3.3V (max I: ~50mA)

       ● 5V (max I: Power Supply - 700mA)

    ● 17 GPIO Pins, multiplexed with:

       ● UART

       ● I2C

       ● SPI

       ● PWM

●   P5
    ● 4 extra GPIO pins

    ● Power

●   More signals broken out to S2 and S5 (Camera and
    flat panel connectors)
    ● Fiddly!




http://elinux.org/RPi_Low-level_peripherals
Revision 2 – Changes
●   Fuses protecting the USB outputs have been removed
    –   Power the board via back-feeding hub
●   JTAG on P1
●   I2C peripherals swapped
●   P5 – New header: 4 more GPIO + Power
●   P6 – Reset Jumper
●   Mounting holes!!!!!!!!!!!!


          http://www.raspberrypi.org/archives/1929
Revision 2
Power (5V)
Electrical




             3.3V!
3.3V
http://www.flickr.com/photos/56601859@N00/3064468115
Use protection
●   Level Shifting
    –   Logic buffers (74HCT242)
    –   Birectional translators (TXB0108)
    –   Discrete shifters (FETs + Rs)
●   Current limiting R
Recommended Distro




                      Occidentalis by Adafruit
http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/overview
Software
●   Peripherals are memory mapped
    –   Access via /dev/mem
        ●   Faster, needs root, hacky, dangerous!
    –   Use kernel modules/sysfs
        ●   /sys/class/gpio/gpioX/value etc.
        ●   Slower, doesn't need root, easier, (relatively) safer
Software – GPIO
●   /sys/class/gpio/ (export|direction|value|interrupt|unexport)
●   Example:
    –   echo 17 > /sys/class/gpio/export
    –   echo “out” > /sys/class/gpio/gpio17/direction
    –   echo “1” > /sys/class/gpio/gpio17/value
●   Interrupt support
    –   Use poll() on /value
Software – I2C
●   /dev/i2c-0 and /dev/i2c-1
●   Install the i2c-utils package
    –   i2cdetect, i2cdump, i2cget, i2cset
●   Support for kernel hardware modules:
    –   echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-
        0/new_device
●   i2c-dev details:
    –   http://kernel.org/doc/Documentation/i2c/dev-interface
Software – SPI
●   /dev/spidev0.0 and /dev/spidev0.1
    –   Chip select pins
●   Support for kernel hardware modules:
    –   Need to rebuild kernel!
●   spidev details:
    –   http://kernel.org/doc/Documentation/spi/spidev
Software – PWM
●   No kernel module (or libgpio) support, memory
    mapped voodoo necessary.
●   WiringPi example:
    –   pinMode(1, PWM_OUTPUT);
    –   PwmWrite(500);
Libraries
●   Python
    –   Quick2wire, Rpi.GPIO
●   C
    –   WiringPi, pihwm
●   Bindings also available for Java(!), Ruby, Erlang
Tips for headless operation
●   Use 240/16 (CPU/GPU) RAM split
    –   No need for graphical stuff
●   Setup avahi/zeroconf
    –   No need to remember IP address
        ●   ssh raspberrypi.local
●   Setup mosh
    –   Great for intermittent networking
Questions?

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Internet of things using Raspberry Pi
Internet of things using Raspberry PiInternet of things using Raspberry Pi
Internet of things using Raspberry Pi
 
Single Board Computers & Raspberry Pi Basics
Single Board Computers & Raspberry Pi BasicsSingle Board Computers & Raspberry Pi Basics
Single Board Computers & Raspberry Pi Basics
 
Raspberry-Pi
Raspberry-PiRaspberry-Pi
Raspberry-Pi
 
Introduction to Arduino & Raspberry Pi
Introduction to Arduino & Raspberry PiIntroduction to Arduino & Raspberry Pi
Introduction to Arduino & Raspberry Pi
 
IOT Networks
IOT NetworksIOT Networks
IOT Networks
 
Raspberry pi ppt
Raspberry pi pptRaspberry pi ppt
Raspberry pi ppt
 
IoT home automation project
IoT home automation projectIoT home automation project
IoT home automation project
 
Raspberry Pi Introduction
Raspberry Pi IntroductionRaspberry Pi Introduction
Raspberry Pi Introduction
 
Introduction to ESP32 Programming [Road to RIoT 2017]
Introduction to ESP32 Programming [Road to RIoT 2017]Introduction to ESP32 Programming [Road to RIoT 2017]
Introduction to ESP32 Programming [Road to RIoT 2017]
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
IoT Enabling Technologies
IoT Enabling TechnologiesIoT Enabling Technologies
IoT Enabling Technologies
 
Raspberry pi
Raspberry piRaspberry pi
Raspberry pi
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
Wi-Fi Esp8266 nodemcu
Wi-Fi Esp8266 nodemcu Wi-Fi Esp8266 nodemcu
Wi-Fi Esp8266 nodemcu
 
IOT ppt
IOT pptIOT ppt
IOT ppt
 
Smart Lighting Using IOT
Smart Lighting Using IOTSmart Lighting Using IOT
Smart Lighting Using IOT
 
Presentation on Raspberry pi
Presentation on Raspberry piPresentation on Raspberry pi
Presentation on Raspberry pi
 
Introduction to Arduino Microcontroller
Introduction to Arduino MicrocontrollerIntroduction to Arduino Microcontroller
Introduction to Arduino Microcontroller
 
Home Automation System using iot
Home Automation System using iotHome Automation System using iot
Home Automation System using iot
 
Status register
Status registerStatus register
Status register
 

Destacado

Erlang Embedded — Concurrent Blinkenlights and More!
Erlang Embedded — Concurrent Blinkenlights and More!Erlang Embedded — Concurrent Blinkenlights and More!
Erlang Embedded — Concurrent Blinkenlights and More!
Omer Kilic
 

Destacado (6)

Erlang Embedded — Concurrent Blinkenlights and More!
Erlang Embedded — Concurrent Blinkenlights and More!Erlang Embedded — Concurrent Blinkenlights and More!
Erlang Embedded — Concurrent Blinkenlights and More!
 
Building your own RC Car with Raspberry Pi
Building your own RC Car with Raspberry PiBuilding your own RC Car with Raspberry Pi
Building your own RC Car with Raspberry Pi
 
Raspberry Pi Presentation
Raspberry Pi PresentationRaspberry Pi Presentation
Raspberry Pi Presentation
 
Introduction to raspberry pi
Introduction to raspberry piIntroduction to raspberry pi
Introduction to raspberry pi
 
A seminar report on Raspberry Pi
A seminar report on Raspberry PiA seminar report on Raspberry Pi
A seminar report on Raspberry Pi
 
Raspberry pi : an introduction
Raspberry pi : an introductionRaspberry pi : an introduction
Raspberry pi : an introduction
 

Similar a Interfacing the Raspberry Pi to the World

Raspberry Pi with Java
Raspberry Pi with JavaRaspberry Pi with Java
Raspberry Pi with Java
koji lin
 

Similar a Interfacing the Raspberry Pi to the World (20)

Aewin network security appliance network management platform_scb6982
Aewin network security appliance network management platform_scb6982Aewin network security appliance network management platform_scb6982
Aewin network security appliance network management platform_scb6982
 
Getting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer KitGetting started with Intel IoT Developer Kit
Getting started with Intel IoT Developer Kit
 
Raspberry Pi - HW/SW Application Development
Raspberry Pi - HW/SW Application DevelopmentRaspberry Pi - HW/SW Application Development
Raspberry Pi - HW/SW Application Development
 
Raspberry Pi with Java
Raspberry Pi with JavaRaspberry Pi with Java
Raspberry Pi with Java
 
Raspberry Pi GPIO Tutorial - Make Your Own Game Console
Raspberry Pi GPIO Tutorial - Make Your Own Game ConsoleRaspberry Pi GPIO Tutorial - Make Your Own Game Console
Raspberry Pi GPIO Tutorial - Make Your Own Game Console
 
Raspberry Pi and Amateur Radio - 2020 update
Raspberry Pi and Amateur Radio - 2020 updateRaspberry Pi and Amateur Radio - 2020 update
Raspberry Pi and Amateur Radio - 2020 update
 
Ls catalog thiet bi tu dong gm e_0908_dienhathe.vn
Ls catalog thiet bi tu dong gm e_0908_dienhathe.vnLs catalog thiet bi tu dong gm e_0908_dienhathe.vn
Ls catalog thiet bi tu dong gm e_0908_dienhathe.vn
 
Ls catalog thiet bi tu dong gm e_0908
Ls catalog thiet bi tu dong gm e_0908Ls catalog thiet bi tu dong gm e_0908
Ls catalog thiet bi tu dong gm e_0908
 
How to Hack Edison
How to Hack EdisonHow to Hack Edison
How to Hack Edison
 
Ins and Outs of GPIO Programming
Ins and Outs of GPIO ProgrammingIns and Outs of GPIO Programming
Ins and Outs of GPIO Programming
 
arduino.pdf
arduino.pdfarduino.pdf
arduino.pdf
 
Android Things Linux Day 2017
Android Things Linux Day 2017 Android Things Linux Day 2017
Android Things Linux Day 2017
 
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
 
NodeMCU ESP8266 workshop 1
NodeMCU ESP8266 workshop 1NodeMCU ESP8266 workshop 1
NodeMCU ESP8266 workshop 1
 
FPGAs for Supercomputing: The Why and How
FPGAs for Supercomputing: The Why and HowFPGAs for Supercomputing: The Why and How
FPGAs for Supercomputing: The Why and How
 
Hp pro liant dl3xx g7
Hp pro liant dl3xx g7Hp pro liant dl3xx g7
Hp pro liant dl3xx g7
 
lesson2 - Nodemcu course - NodeMCU dev Board
 lesson2 - Nodemcu course - NodeMCU dev Board lesson2 - Nodemcu course - NodeMCU dev Board
lesson2 - Nodemcu course - NodeMCU dev Board
 
Choose your dev platform
Choose your dev platformChoose your dev platform
Choose your dev platform
 
Aewin network security appliance network management platform_scb7982
Aewin network security appliance network management platform_scb7982Aewin network security appliance network management platform_scb7982
Aewin network security appliance network management platform_scb7982
 
Raspberry Pi and Amateur Radio
Raspberry Pi and Amateur RadioRaspberry Pi and Amateur Radio
Raspberry Pi and Amateur Radio
 

Más de Omer Kilic

Fast and Furious: Overclocking chips for fun and profit
Fast and Furious: Overclocking chips for fun and profitFast and Furious: Overclocking chips for fun and profit
Fast and Furious: Overclocking chips for fun and profit
Omer Kilic
 
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing WorldCloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Omer Kilic
 
Taking Back Embedded: The Erlang Embedded Framework
Taking Back Embedded: The Erlang Embedded FrameworkTaking Back Embedded: The Erlang Embedded Framework
Taking Back Embedded: The Erlang Embedded Framework
Omer Kilic
 

Más de Omer Kilic (17)

Bare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems
Bare Metal from a Hardware Perspective: Embedded Frameworks & Build SystemsBare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems
Bare Metal from a Hardware Perspective: Embedded Frameworks & Build Systems
 
Gearing up for Volume Manufacturing
Gearing up for Volume ManufacturingGearing up for Volume Manufacturing
Gearing up for Volume Manufacturing
 
The Process of Shipping Hardware Products
The Process of Shipping Hardware ProductsThe Process of Shipping Hardware Products
The Process of Shipping Hardware Products
 
Confusion of Things — The IoT Hardware Kerfuffle
Confusion of Things — The IoT Hardware KerfuffleConfusion of Things — The IoT Hardware Kerfuffle
Confusion of Things — The IoT Hardware Kerfuffle
 
Fast and Furious: Overclocking chips for fun and profit
Fast and Furious: Overclocking chips for fun and profitFast and Furious: Overclocking chips for fun and profit
Fast and Furious: Overclocking chips for fun and profit
 
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing WorldCloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
 
Taking Back Embedded: The Erlang Embedded Framework
Taking Back Embedded: The Erlang Embedded FrameworkTaking Back Embedded: The Erlang Embedded Framework
Taking Back Embedded: The Erlang Embedded Framework
 
The Actor Model applied to the Raspberry Pi and the Embedded Domain
The Actor Model applied to the Raspberry Pi and the Embedded DomainThe Actor Model applied to the Raspberry Pi and the Embedded Domain
The Actor Model applied to the Raspberry Pi and the Embedded Domain
 
From Breadboard to Finished Product
From Breadboard to Finished ProductFrom Breadboard to Finished Product
From Breadboard to Finished Product
 
A Quick Introduction to Programmable Logic
A Quick Introduction to Programmable LogicA Quick Introduction to Programmable Logic
A Quick Introduction to Programmable Logic
 
concurrency.cc OSHUG #3
concurrency.cc OSHUG #3concurrency.cc OSHUG #3
concurrency.cc OSHUG #3
 
BURO Arduino Workshop
BURO Arduino WorkshopBURO Arduino Workshop
BURO Arduino Workshop
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
Interfacing with Arduino
Interfacing with ArduinoInterfacing with Arduino
Interfacing with Arduino
 
Introduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon TechnologyIntroduction to XMOS Software Defined Silicon Technology
Introduction to XMOS Software Defined Silicon Technology
 
TinkerSoc Electronics 101
TinkerSoc Electronics 101TinkerSoc Electronics 101
TinkerSoc Electronics 101
 
Beer Bottle Night Lamp
Beer Bottle Night LampBeer Bottle Night Lamp
Beer Bottle Night Lamp
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 

Interfacing the Raspberry Pi to the World

  • 1. Interfacing the Raspberry Pi to the World Up close and personal with P1 (and P5!) @OmerK | OSHCAMP 2012 | 15 Sep 2012
  • 3. Agenda ● Mechanical Details ● Electrical Details ● Software Details ● Tips for headless operation ● Questions
  • 4. Mechanical ● Standard 100mil (2.54mm) spacing – P1 → 2x13 way – P5 → 2x4 way
  • 7. IDC Cable Re-use old floppy cables!
  • 9. “Breakout” boards Pi Cobbler from Adafruit
  • 10. Slice of Pi from Ciseco Pi Plate from Adafruit More at: http://elinux.org/RPi_Expansion_Boards
  • 11. Electrical ● P1 ● Power ● 3.3V (max I: ~50mA) ● 5V (max I: Power Supply - 700mA) ● 17 GPIO Pins, multiplexed with: ● UART ● I2C ● SPI ● PWM ● P5 ● 4 extra GPIO pins ● Power ● More signals broken out to S2 and S5 (Camera and flat panel connectors) ● Fiddly! http://elinux.org/RPi_Low-level_peripherals
  • 12. Revision 2 – Changes ● Fuses protecting the USB outputs have been removed – Power the board via back-feeding hub ● JTAG on P1 ● I2C peripherals swapped ● P5 – New header: 4 more GPIO + Power ● P6 – Reset Jumper ● Mounting holes!!!!!!!!!!!! http://www.raspberrypi.org/archives/1929
  • 15. Electrical 3.3V!
  • 16. 3.3V
  • 18. Use protection ● Level Shifting – Logic buffers (74HCT242) – Birectional translators (TXB0108) – Discrete shifters (FETs + Rs) ● Current limiting R
  • 19. Recommended Distro Occidentalis by Adafruit http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/overview
  • 20. Software ● Peripherals are memory mapped – Access via /dev/mem ● Faster, needs root, hacky, dangerous! – Use kernel modules/sysfs ● /sys/class/gpio/gpioX/value etc. ● Slower, doesn't need root, easier, (relatively) safer
  • 21. Software – GPIO ● /sys/class/gpio/ (export|direction|value|interrupt|unexport) ● Example: – echo 17 > /sys/class/gpio/export – echo “out” > /sys/class/gpio/gpio17/direction – echo “1” > /sys/class/gpio/gpio17/value ● Interrupt support – Use poll() on /value
  • 22. Software – I2C ● /dev/i2c-0 and /dev/i2c-1 ● Install the i2c-utils package – i2cdetect, i2cdump, i2cget, i2cset ● Support for kernel hardware modules: – echo ds1307 0x68 > /sys/class/i2c-adapter/i2c- 0/new_device ● i2c-dev details: – http://kernel.org/doc/Documentation/i2c/dev-interface
  • 23. Software – SPI ● /dev/spidev0.0 and /dev/spidev0.1 – Chip select pins ● Support for kernel hardware modules: – Need to rebuild kernel! ● spidev details: – http://kernel.org/doc/Documentation/spi/spidev
  • 24. Software – PWM ● No kernel module (or libgpio) support, memory mapped voodoo necessary. ● WiringPi example: – pinMode(1, PWM_OUTPUT); – PwmWrite(500);
  • 25. Libraries ● Python – Quick2wire, Rpi.GPIO ● C – WiringPi, pihwm ● Bindings also available for Java(!), Ruby, Erlang
  • 26. Tips for headless operation ● Use 240/16 (CPU/GPU) RAM split – No need for graphical stuff ● Setup avahi/zeroconf – No need to remember IP address ● ssh raspberrypi.local ● Setup mosh – Great for intermittent networking