Monday, March 11, 2013

Raspberry Pi and Button Press Example

Hi there. This post is not going to be on JavaScript but it will be a bit more centered on the Raspberry Pi and what I did today. As pointed out in an old blog post, I'm working on a software that creates streams of data and pass them through a topology. As data sink, I though it would be very nice to have a Raspberry Pi which gathers data from the environment, for example.
Today I started to implement something on the RPi. Nothing serious, but I wanted to test the GPIO. First of all I had to install some Python dependencies to read data from it

$sudo apt-get update
$sudo apt-get install python-dev
$sudo apt-get install python-rpi.gpio

After this, I had to learn a little bit about the GPIO. The General Purpose Input/Output is an interface available on some devices capable of getting inputs and sending outputs. In the RPi, this is the male pins situated on top of the RPi logo in the latest devices.
The following schematics shows which pin corresponds to which usage

Today what I will do is connect a simple button and trigger some event on the RPi. The event will only be a print line saying something. The purpose of this test project was to get my hands dirty a little bit with the RPi by starting with something extremely simple.


- 1 Raspberry Pi
- 1 Ribbon
- 1 Breadboard
- Some wires
- 1 10k Ohm resistor
- 1 Button sensor

How to build

Place the button on the breadboard. On the row of one pin of the button, I had to connect one head of the resistor. The other head had to be connected on another row. On the same row of this head, then, I had to connect the 3v3 pin (pin 1) of the RPi. To do that I had to use the ribbon and then use a wire from the other end of the ribbon.

I have chosen to use the pin called GPIO17 on the image shown. From that pin I connected a wire which was placed on the same row in which one head of the button and one of the resistor were placed. Finally, the ground pin was connected to the other end of the button.


The code was a simple piece of Python that gathered the input from the pin number 17. Here is it:

import RPi.GPIO as gpio
pin = 17;
gpio.setup(pin, gpio.IN)

while True:
    input = gpio.input(pin)
    if input == False:
        print('button press');
        while input == False:
            input = gpio.input(pin);

Be careful and respect indentation as Python will complain otherwise. I have chosen pin 17 but any GPIO pin will work as long as you change it in your code. The code is extremely simple: with a while True it checks if the button has been pressed. If that is the case, then, it will print the message. While the button is pressed it will just fall into the second while statement.

To run the code, just do this

sudo python

And that's it. Here is a picture of what I built.

As you can see, the blue wire is the 3v3 pin, the yellow one is the GPIO17 while the black one is ground.
I hope to build some cooler stuff and show it here.

Categories: ,


  1. This post is not going to be on JavaScript but it will be a bit more centered on the Raspberry Pi .As pointed out in an old blog post. As data sink, it would be very nice to have a Raspberry Pi which gathers data from the environment.

  2. 2016 fake rolex watches large pilot version of the replica watches "Little Prince" limited edition IW500916 In 2002, the country from the antique "B-UHR" replica watches to draw inspiration, launched a large size of the large pilot wrist watch IW5002. At that time the basic watch are still 36-40 mm size, 46 mm shape quite shocking

  3. Are you looking for guest posting/blogging sites? then click :
    guest posting sites in india

  4. Are you looking for guest posting/blogging sites? then click :
    guest posting sites in india

  5. Very meaningful & well defined blog. willing to see more like this.

  6. This comment has been removed by the author.

  7. This comment has been removed by the author.

  8. Peptid
    This is an excellent post I seen thanks to share it. It is really what I wanted to see hope in future you will continue for sharing such a excellent post.

  9. Used Test Equipment
    I am really enjoying reading your well written articles. It looks like you spend a lot of effort and time on your blog. I have bookmarked it and I am looking forward to reading new articles. Keep up the good work.

  10. Amazing knowledge and I like to share this kind of information with my friends and hope they like it they why I do...! webstagram

  11. Our expert technicians suggest about the maximum possible solutions for account live password reset. Our toll free number 1-800-436-6070 is open and in working mode 24X7.

  12. >Our outlooks-live expert technicians suggest about the maximum possible solutions for your issues. customer support toll free number 1-800-436-6070 is open and in working mode 24X7 or visit our website.

  13. To activate Norton visit and verify product key or Get Technical support for download, install and online activation. If you do not have Norton subscription do not worry call customer support 1-800-436-6070 toll free.

  14. During any of these processes, if you face any trouble then contact our mcafee installation toll-free number 1-800-436-6070 USA or Canada for an instant support by a certified technician. We provide support for all errors including help more visit our website.

  15. your Microsoft account is locked out, you won’t be able to access your computer or Laptop. So how do you get account live password reset this the answer is actually quite simple. Instead of in with the online Microsoft call 1-800-436-6070 toll free.

  16. If your apple id locked you want to change your forgot apple id password to another third-party email address, you need to verify your account after you enter the email address that you want to use as your apple id reset more detail please visit our website or online chat.

  17. Your apple id password reset is the key to all Apple services. You use it on your iOS device and your Mac. You log in with it to iCloud the apple id password reset Store, and more if you forgot apple id password visit our website help our expert online.

  18. I am Alina Stevens from New York. I am a professional writer, nowadays I am writing blogs for troubleshooting technical glitches.
    att email not working on iphone email not working 2019

  19. Looking for Ms office setup help guides, overview which includes (word, excel, power point presentation, OneNote) and facing any technical error due to download, install update and activate on windows or mac can contact to our office setup expert engineer can resolve your all problems.
    office setup
    office setup product key

  20. Nice content! thanks for sharing with us.
    Are you looking for reset Mac-book, iPhone, iPad, iPod facing any technical error can contact our computer tech expert engineer can resolve your all problems can also call- in the US, Canada
    How to reset iphone X?, reset iPhone 6, reset iPhone 8

  21. Reset Apple ID Password - Can go through the link reset apple id password and follow the instructional steps to reset.

  22. If you are looking Buy Business leather wallet case that has the particular item you are looking smart wallet quality keeps your bills & cards safe outside for easy access.

    When you Buy Disposable Gloves Online you have to start by searching for a product like Buy Sport Water Bottles Online, Buy sunglasses for men, Buy Joggers for women online or Buy Agility Quick Ladder Online many product can be done by visiting our website that has the particular item you need.

    This is our most well known Buy 4pcs Black WWJD Bracelet grouping of arm bands. We've picked the 13 most well known colors we offer You will get two of each shading and as a little something extra, you'll additionally offer you know more detail our website.

  23. We are located in Manchester, England, UK. Clients all over Europe can safely Buy marijuana online UK, from us as we have the best quality Weed for sale.

    Our Products:

    buy cannabis online UK
    Order weed online uk
    Buy weed online
    Cannabis oil sale

  24. Find the Best place to buy pet products online product services in USA. If you are interested in purchased pet product Buy dog accessories online, Pet essentials online store, Buy pet essentials online, Buy cheap pet products online, Buy pet accessories online, and Order pet products online and offer products for visit own website or through an Pet products online store site.

    #Buy pet products online #Buy USB Portable Paw Washing Cup #Buy Pet Hand Bag Online
    #Buy Portable Foldable Pet Playpen #Buy Dog Luminous Collar USB Charging
    #Buy Pet Water Fountain
    Buy Electric Shock Collar
    #Buy Pet Cleaning And Grooming Set #Buy Pet Feeder Fountain online
    Buy Pet Hair Shaver online

  25. Nice content thanks for sharing with us. Are you looking for Aol sig in visit the official web
    and enter your login credential having any technical error can connect our highly experienced engineer can resolve your all kind of query at a time.

  26. Nice Post thanks for sharing if you can provide some computer mcqs that will be great and so nice of you....

  27. Find the best product home workout equipment online immediately click our link One Click Smart online shopping company best quality product such as Buy Indoor Cycling Exercise Bike, Buy abdominal exercise equipment online, Buy abdominal exercise equipment online, Buy workout equipment for home if you know more info visit at site.

    Fitness Equipment Folding Treadmill
    Buy Indoor Cycling Exercise Bike
    Two way Belt Exercise Spinning Bike
    Stainless Indoor Horizontal Bars
    Buy Male Spring Chest Developer
    Buy Push Ups Rack Board

  28. I’m really enjoying the design and layout of your website.
    Travel in London

  29. Mywifiext is a way to setup Netgear Wi-Fi Range Extender as it will help you to connect the Netgear Extender to your home router; once you are on all you need to do is click on NEW EXTENDER SETUP that will redirect you to on- Screen instructions or genie setup wizard of Netgear. Check out:
    mywifiext |www.mywifiext-net | Netgear Router Login | Netgear Router Setup | mywifiext | Netgear Nighthawk app

  30. You can choose among them as per your network requirements like if you have large home network then you can go for Linksys RE6500 range extender and if you have smaller network then you go with Linksys RE6300 setup. Linksys re6500 | Linksys re6300 | Linksys extender setup | Linksys re6300 extender setup | Linksys extender setup | Linksys smart wifi login

  31. emails Not receiving has become a common issue and wishes the intense attention of the specialists. However, a number of its users ar whiney concerning their account of gmail not receiving emails creating them wait till they get annoyed.

  32. Dear author, Hey what a brilliant post I have come across and believe me I have been searching out for this similar kind of post for past a week and hardly came across this. Thank you very much and will look for more postings from you guest posting sites in India.