element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum How can I interface the PI to sensors ?
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Featured Articles
Announcing Pi
Technical Specifications
Raspberry Pi FAQs
Win a Pi
Raspberry Pi Wishlist
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 13 replies
  • Subscribers 679 subscribers
  • Views 1957 views
  • Users 0 members are here
  • raspberry
  • help
  • helpme
  • raspberry_pi
  • raspberrypi
Related

How can I interface the PI to sensors ?

GreenYamo
GreenYamo over 13 years ago

Sorry if this has been asked before

 

I have experience playing around with the Arduino platform and interfacing sensors such as temperature, pressure etc.

 

I would like to know how this would be possible with the PI. I have seen the 'Gert Board' and also the board produced by Ciseco here: http://shop.ciseco.co.uk/slice-of-pi/. Is it as simple as plugging in sensors (and of course the odd LED or two) to the general I/O pins mentioned in the description for the last item and writing some code to read / write to these (I'm hoping in Python?).

 

Would I do better to learn more about I2C and SPI to get the most of the Pi ( I have seen you can do this on the Arduino, but i'm somewhat a beginner so keeping it simple at the moment). If so, can anyone recommend a good primer on I2C and SPI for the Arduino?

 

Given the power differential of the Pi to the Arduino in terms of processing power I think this would be a great platform to work on for this type of exercise.

 

Thanks for any pointers.

  • Sign in to reply
  • Cancel
  • Former Member
    Former Member over 13 years ago

    Hi Steve,

    in your case I'd start of the playground on the arduino website, that's a good starting point. There are quite a few examples and you may also want to buy one of those simple shield with a lot of different hardware (I think it is called dangershield?!). If you want to get your hands dirty with I2C or SPI the BusPirate may be intersting for you, it's a good board to learn/understand how bus communication works.

    It's probably also a good idea to learn a bit C, if you plan on working with hardware with the arduino or the R-Pi.

     

    Hope I could help a bit

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • zardoz99
    zardoz99 over 13 years ago

    You might also be interested in the One-Wire File System. http://owfs.org/

     

    This exposes some of the available sensors in a way that makes them easy to access.

     

    Z

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • fustini
    fustini over 13 years ago

    The elinux wiki is a good place to watch as information on interfacing progresses.  This page indicates that right now the GPIO, SPI and I2C drivers are a work in progess:

     

    http://elinux.org/RPi_Low-level_peripherals#Driver_support

     

    Like many aspects of the project, I'm sure this will improve rapidly once boards start getting into more hands.  Also on that page, there is an interesting example of memory-mapped GPIO:

     

    http://elinux.org/RPi_Low-level_peripherals#Code_examples

     

    I think we'll eventually see easy-to-use abstractions for interfacing like Matt Richardson has done for Python on the BeagleBone:

     

    http://blog.makezine.com/2012/03/14/how-to-get-started-with-the-beaglebone/

     

    On the hardware side, I'm sure there will be plenty of interesting interface boards.  I'm very excited to see how Adafruit's Pi Plates progress:

     

    http://www.adafruit.com/blog/2012/03/14/adafruit-experimenting-with-pi-plates-for-raspberry_pi-shields-for-the-raspberry-pi/

     

    Cheers,

    Drew

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago in reply to fustini

    low-level driver support looks great... thumbs up image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago

    I built my own GPS board but has a separate microcontroller that can talk to sensors. The RPi and the MCU talks via serial connection through the onboard UART on the headers.  So in essence, I can send a command to the MCU to grab sensor data. Something like  root:>$GPS#LAT? root:>$LED1#ON? root:>$SENS#TEMP1? root:>$SERV#145?  of course, the MCU would have to be programmed to grab sensor data continuously and respond to command received from its serial port  that's just example. its better (at least for me with MCU experience) than messing around with Linux SPI/I2C kernel drivers.  also makes it easier to interface with higher level applications like php/java/etc.

     

    https://lh5.googleusercontent.com/-KRuqdpwOfAU/T1xBaaTHZkI/AAAAAAAAEf0/8Y0JGUxLS6g/s640/IMG_20120310_191400.jpg

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago

    if anyone will be using the gpio ports directly (i.e., w/o an expansion board such as adafruit or gertboard) I strongly recommend that they use buffers as found on this page: http://elinux.org/RPi_Tutorial_EGHS:GPIO_Protection_Circuits.

     

    The LED tutorial works for sure with the shell script previously mentioned.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to Former Member

    Julian mentioned the Bus Pirate if you're going to be messing with I2C or SPI, and I second that.  It's a very cheap but highly useful little gadget.  You can even use it as a very slow 'scope, lol.  Here are some links for it:

     

    • http://dangerousprototypes.com/docs/Bus_Pirate
    • http://dangerousprototypes.com/docs/Common_Bus_Pirate_cable_pinouts
    • http://www.sparkfun.com/products/9544
    • http://www.coolcomponents.co.uk/catalog/pirate-p-671.html
    • http://www.youtube.com/watch?v=fwE4PYCmACQ
    • http://www.youtube.com/watch?v=8XiXXxV9nRI
    • https://github.com/tgvaughan/PirateScope

     

    Morgaine.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • GreenYamo
    GreenYamo over 13 years ago in reply to morgaine

    Hi Morgaine, that is very interesting, thank you for the recommendation.image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • simon.monk
    simon.monk over 13 years ago

    Also you could try the wireless approach: http://www.element14.com/community/thread/18613

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • GreenYamo
    GreenYamo over 13 years ago in reply to simon.monk

    Morgaine, I have taken your advice and bought a bus pirate with assorted leads (arrived yesterday) so those links will come in useful i'm sure :-)

     

    Simon, I will be trying the wireless approach :-)

     

    Steve

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube