{"id":404,"date":"2016-07-03T09:15:44","date_gmt":"2016-07-03T09:15:44","guid":{"rendered":"http:\/\/mr-west.uk\/microbit\/?page_id=404"},"modified":"2016-07-23T17:37:33","modified_gmt":"2016-07-23T17:37:33","slug":"microbit-input-from-external-switches","status":"publish","type":"page","link":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/","title":{"rendered":"Microbit &#8211; External switches and buttons"},"content":{"rendered":"\n<div class=\"arconix-tabs-horizontal\"><ul class=\"arconix-tabs\"><li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Ingredients\"><a class=\"\" href=\"#tab-Ingredients\">Ingredients<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Wiringupthehardware\"><a class=\"\" href=\"#tab-Wiringupthehardware\">Wiring up the hardware<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Codingthesoftware\"><a class=\"\" href=\"#tab-Codingthesoftware\">Coding the software<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Challenges\"><a class=\"\" href=\"#tab-Challenges\">Challenges<\/a><\/li><\/ul>\n<div class=\"arconix-panes\"><div class=\"arconix-pane pane-Ingredients\">\n<h2>Connecting external switches and buttons to the Micro-bit<\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-632 alignright\" src=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/push-button-switch-300x253.png\" alt=\"push button switch\" width=\"300\" height=\"253\" srcset=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/push-button-switch-300x253.png 300w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/push-button-switch.png 394w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>In this topic you will learn how to wire up external switches and buttons to the Microbit. This tutorial only applies to digital (off\/on) buttons and switches. If you wish to to wire up an analogue switches(e.g. dimmer switch) then you should have a look at the <a href=\"http:\/\/learnlearn.uk\/microbit\/topics\/microbit-how-to-read-values-from-analogue-input-sensors\/\">analogue sensor topic<\/a>.<\/p>\n<h3>Ingredients<\/h3>\n<p>In order to read input from external switches and push buttons, you will need the following components:<\/p>\n<div class=\"arconix-list\" data-arconix-icon=\"fa-chevron-circle-right\" data-arconix-color=\"black\">\n<ul>\n<li>1 Microbit + USB lead<\/li>\n<li>1 Microbit battery + 2 AA batteries<\/li>\n<li>1 10,000 Ohm resistor ( or similar size)<\/li>\n<li>1 Push button or switch<\/li>\n<li>4 Crocodile clips<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div class=\"arconix-pane pane-Wiringupthehardware\">\n<p>Wiring up external switches and push buttons is quite easy, you just need to use a pull-up resistor circuit, as shown in the diagrams below.<\/p>\n<div id=\"attachment_629\" style=\"width: 310px\" class=\"wp-caption alignleft\"><a href=\"http:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-switch-wiring.jpg\"><img aria-describedby=\"caption-attachment-629\" decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-629\" src=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-switch-wiring-300x225.jpg\" alt=\"Click to enlarge\" width=\"300\" height=\"225\" srcset=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-switch-wiring-300x225.jpg 300w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-switch-wiring-768x576.jpg 768w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-switch-wiring.jpg 960w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-629\" class=\"wp-caption-text\">Click to enlarge<\/p><\/div>\n<div id=\"attachment_628\" style=\"width: 310px\" class=\"wp-caption alignleft\"><a href=\"http:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/IMG_20160707_1615531.jpg\"><img aria-describedby=\"caption-attachment-628\" decoding=\"async\" loading=\"lazy\" class=\"size-medium wp-image-628\" src=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/IMG_20160707_1615531-300x225.jpg\" alt=\"Click to enlarge\" width=\"300\" height=\"225\" srcset=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/IMG_20160707_1615531-300x225.jpg 300w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/IMG_20160707_1615531-768x576.jpg 768w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/IMG_20160707_1615531-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-628\" class=\"wp-caption-text\">Click to enlarge<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div class=\"arconix-toggle-wrap\"><div class=\"arconix-toggle-title toggle-closed\"><i class='fa fa-plus-square'><\/i>Why a pull-up resistor circuit?<\/div><div class=\"arconix-toggle-content\">\n<p>You can&#8217;t just wire the button straight through from a GPIO port (e.g. 0) through to the ground. Electrical systems are subject to electrical noise interference ( all circuits act like mini antennae) which means that the actual voltage in a circuit floats(it isn&#8217;t stable). This floating voltage can cause faulty on\/off readings, which we don&#8217;t want! The pull-up \/ pull-down resistor solves this problem.<\/p>\n<p><a href=\"https:\/\/learn.sparkfun.com\/tutorials\/pull-up-resistors\">For more information take a look at this article<\/a><\/p>\n<\/div><\/div>\n<\/div>\n<div class=\"arconix-pane pane-Codingthesoftware\">\n<div id=\"attachment_630\" style=\"width: 217px\" class=\"wp-caption alignright\"><img aria-describedby=\"caption-attachment-630\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-630 size-medium\" src=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-external-switch-input-demo-code-207x300.png\" alt=\"Click to enlarge\" width=\"207\" height=\"300\" srcset=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-external-switch-input-demo-code-207x300.png 207w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/Microbit-external-switch-input-demo-code.png 377w\" sizes=\"(max-width: 207px) 100vw, 207px\" \/><p id=\"caption-attachment-630\" class=\"wp-caption-text\">Click to enlarge<\/p><\/div>\n<p>Coding the Microbit to read the digital input value is simple, you just use the microbit.readPinDigital(pin) function.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-780 size-full alignnone\" src=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/microbit-readpindigital.png\" alt=\"microbit readpindigital\" width=\"348\" height=\"64\" srcset=\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/microbit-readpindigital.png 348w, https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/microbit-readpindigital-300x55.png 300w\" sizes=\"(max-width: 348px) 100vw, 348px\" \/><\/p>\n<p>This block will return a value of:<\/p>\n<ul>\n<li>1 if the switch is closed<\/li>\n<li>0 if the switch is open<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div class=\"mceTemp\"><\/div>\n<\/div>\n<div class=\"arconix-pane pane-Challenges\">\n<div class=\"arconix-accordions arconix-accordions-vertical arconix-accordions-1\"><div class=\"arconix-accordion-title accordion-Challenge-\"><i class=\"fa\"><\/i><p>Challenge - <\/p><\/div><div class=\"arconix-accordion-content\">\n<\/div><div class=\"arconix-accordion-title accordion-Challenge-\"><i class=\"fa\"><\/i><p>Challenge - <\/p><\/div><div class=\"arconix-accordion-content\">\n<\/div><div class=\"arconix-accordion-title accordion-Challenge-\"><i class=\"fa\"><\/i><p>Challenge - <\/p><\/div><div class=\"arconix-accordion-content\">\n<\/div><div class=\"arconix-accordion-title accordion-Challenge-\"><i class=\"fa\"><\/i><p>Challenge - <\/p><\/div><div class=\"arconix-accordion-content\">\n<\/div><div class=\"arconix-accordion-title accordion-Challenge-\"><i class=\"fa\"><\/i><p>Challenge - <\/p><\/div><div class=\"arconix-accordion-content\">\n<\/div><div class=\"arconix-accordion-title accordion-Challenge-\"><i class=\"fa\"><\/i><p>Challenge - <\/p><\/div><div class=\"arconix-accordion-content\">\n<\/div><\/div>\n<\/div><\/div><\/div>\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":280,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Microbit - External switches and buttons - Microbit - LearnLearn.co.uk<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Microbit - External switches and buttons - Microbit - LearnLearn.co.uk\" \/>\n<meta property=\"og:url\" content=\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/\" \/>\n<meta property=\"og:site_name\" content=\"Microbit\" \/>\n<meta property=\"article:modified_time\" content=\"2016-07-23T17:37:33+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/push-button-switch-300x253.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/\",\"url\":\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/\",\"name\":\"Microbit - External switches and buttons - Microbit - LearnLearn.co.uk\",\"isPartOf\":{\"@id\":\"https:\/\/learnlearn.uk\/microbit\/#website\"},\"datePublished\":\"2016-07-03T09:15:44+00:00\",\"dateModified\":\"2016-07-23T17:37:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Microbit Unit Home\",\"item\":\"https:\/\/learnlearn.uk\/microbit\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Topics\",\"item\":\"https:\/\/learnlearn.uk\/microbit\/topics\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Microbit &#8211; External switches and buttons\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/learnlearn.uk\/microbit\/#website\",\"url\":\"https:\/\/learnlearn.uk\/microbit\/\",\"name\":\"Microbit\",\"description\":\"Tutorials, Projects &amp; Challenges\",\"publisher\":{\"@id\":\"https:\/\/learnlearn.uk\/microbit\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/learnlearn.uk\/microbit\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/learnlearn.uk\/microbit\/#organization\",\"name\":\"Microbit\",\"url\":\"https:\/\/learnlearn.uk\/microbit\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/learnlearn.uk\/microbit\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2019\/06\/LearnLearnLogowhite.png\",\"contentUrl\":\"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2019\/06\/LearnLearnLogowhite.png\",\"width\":710,\"height\":98,\"caption\":\"Microbit\"},\"image\":{\"@id\":\"https:\/\/learnlearn.uk\/microbit\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Microbit - External switches and buttons - Microbit - LearnLearn.co.uk","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/","og_locale":"en_GB","og_type":"article","og_title":"Microbit - External switches and buttons - Microbit - LearnLearn.co.uk","og_url":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/","og_site_name":"Microbit","article_modified_time":"2016-07-23T17:37:33+00:00","og_image":[{"url":"http:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2016\/07\/push-button-switch-300x253.png"}],"twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/","url":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/","name":"Microbit - External switches and buttons - Microbit - LearnLearn.co.uk","isPartOf":{"@id":"https:\/\/learnlearn.uk\/microbit\/#website"},"datePublished":"2016-07-03T09:15:44+00:00","dateModified":"2016-07-23T17:37:33+00:00","breadcrumb":{"@id":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/learnlearn.uk\/microbit\/topics\/microbit-input-from-external-switches\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Microbit Unit Home","item":"https:\/\/learnlearn.uk\/microbit\/"},{"@type":"ListItem","position":2,"name":"Topics","item":"https:\/\/learnlearn.uk\/microbit\/topics\/"},{"@type":"ListItem","position":3,"name":"Microbit &#8211; External switches and buttons"}]},{"@type":"WebSite","@id":"https:\/\/learnlearn.uk\/microbit\/#website","url":"https:\/\/learnlearn.uk\/microbit\/","name":"Microbit","description":"Tutorials, Projects &amp; Challenges","publisher":{"@id":"https:\/\/learnlearn.uk\/microbit\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/learnlearn.uk\/microbit\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/learnlearn.uk\/microbit\/#organization","name":"Microbit","url":"https:\/\/learnlearn.uk\/microbit\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/learnlearn.uk\/microbit\/#\/schema\/logo\/image\/","url":"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2019\/06\/LearnLearnLogowhite.png","contentUrl":"https:\/\/learnlearn.uk\/microbit\/wp-content\/uploads\/sites\/2\/2019\/06\/LearnLearnLogowhite.png","width":710,"height":98,"caption":"Microbit"},"image":{"@id":"https:\/\/learnlearn.uk\/microbit\/#\/schema\/logo\/image\/"}}]}},"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"learnlearnadmin","author_link":"https:\/\/learnlearn.uk\/microbit\/author\/learnlearnadmin\/"},"rttpg_comment":0,"rttpg_category":null,"rttpg_excerpt":null,"_links":{"self":[{"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/pages\/404"}],"collection":[{"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/comments?post=404"}],"version-history":[{"count":0,"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/pages\/404\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/pages\/280"}],"wp:attachment":[{"href":"https:\/\/learnlearn.uk\/microbit\/wp-json\/wp\/v2\/media?parent=404"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}