{"id":3248,"date":"2013-03-28T13:12:58","date_gmt":"2013-03-28T13:12:58","guid":{"rendered":"http:\/\/178.62.14.192\/?p=3248"},"modified":"2013-03-28T13:12:58","modified_gmt":"2013-03-28T13:12:58","slug":"controlling-servo-motors-on-the-raspberrypi","status":"publish","type":"post","link":"https:\/\/www.recantha.co.uk\/blog\/?p=3248","title":{"rendered":"Controlling servo motors on the #RaspberryPi"},"content":{"rendered":"<p><a href=\"http:\/\/hackaday.com\/2013\/02\/10\/better-pwm-on-the-raspberry-pi\/#comments\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft\" alt=\"Better PWM on the Raspberry Pi\" src=\"\/blog\/wp-content\/uploads\/2013\/03\/PanTilt-1L1.jpg\" width=\"216\" height=\"216\" \/><\/a><\/p>\n<p>As part of my &#8220;SpacePi&#8221; Raspberry Pi astronomy project, I want to be able to control the orientation of the camera module remotely. I want to be able to sit away from the camera rig and control where it is pointing using a web interface and (optionally, and because I damn well can) via a Wii remote.<\/p>\n<p>So, I&#8217;m currently doing research into how best to do this.<\/p>\n<p>I&#8217;ve got the actual mechanism sorted by buying one of these: <a href=\"http:\/\/robosavvy.com\/store\/product_info.php\/manufacturers_id\/35\/products_id\/1182\">Dagu Pan\/Tilt<\/a> which comes with <a href=\"http:\/\/robosavvy.com\/store\/product_info.php\/products_id\/1587\">two of these motors<\/a>. I&#8217;m planning on building some kind of LEGO base for it as I don&#8217;t fancy trying to balance it on the bottom of the servo! \ud83d\ude42<\/p>\n<p>The motors operate at a known rate at around 4.8v, which is perfect because that&#8217;s what comes off the Pi. Except I don&#8217;t think it&#8217;s safe to do this. I know the 3.3v rails have a max power draw of 50ma, but I think that the amps available on the 5V is just whatever is left after the Pi takes it&#8217;s ~700ma. That might mean I have enough amps left, but I don&#8217;t fancy trying this out on one of my beloved Pis! So that means an extra power supply for the servo motors. Okay, I can live with that. I&#8217;d rather not, you understand, so if anyone knows that it <i>is\u00a0<\/i>safe to power from the Pi, please let me know!<\/p>\n<p>Control of the servos is via PWM, aka Pulse Width Modulation. This is something that the Arduino does very well, but that the Raspberry Pi does less well. This is because the Arduino is what is known as a &#8220;real time system&#8221;, meaning that when it is running it&#8217;s program loop nothing else can use up the CPU. Literally, the only thing running is what you&#8217;ve told it to run. The Raspberry Pi, on the other hand, is\u00a0<em>not<\/em> a real time system as Linux itself is always beavering away in the background taking up CPU cycles. However, I have come across some ways of getting the Pi to give the impression that it\u00a0<em>is<\/em> a real time system and to do PWM &#8216;properly&#8217;.<\/p>\n<p>So, some web pages to look at:<\/p>\n<ul>\n<li><a href=\"http:\/\/hackaday.com\/2013\/02\/10\/better-pwm-on-the-raspberry-pi\/#comments\">Better PWM on the Raspberry Pi<\/a>\u00a0&#8211; an article on hackaday.com about the <a href=\"https:\/\/github.com\/richardghirst\/PiBits\/tree\/master\/ServoBlaster\">ServoBlaster project<\/a>\u00a0which is a good implementation of software PWM.<\/li>\n<li>Gordon Henderson has <a href=\"https:\/\/projects.drogon.net\/software-pwm-on-the-raspberry-pi\/\">written about an improvement to the WiringPi library<\/a> to allow threaded PWM on every GPIO pin taking up 0.1% of the CPU each.<\/li>\n<li><a href=\"http:\/\/www.rpiblog.com\/2012\/11\/pwm-on-raspberry-pi.html\">Rahul Kar has blogged<\/a> about using the WiringPi library and PWM.<\/li>\n<li><a href=\"http:\/\/bvanderveen.com\/a\/strategies-for-driving-servos-with-raspberry-pi\/\">Benjamin van der Veen&#8217;s blog<\/a> was useful in understanding PWM in the first place.<\/li>\n<li><a href=\"http:\/\/www.petervis.com\/Raspberry_PI\/Raspberry_Pi_Motor_Controller_L6203\/Raspberry_Pi_GPIO_PWM_Pin.html\">Petervis.com has a little bit<\/a> about the single PWM hardware pin on the Pi.<\/li>\n<li><a href=\"http:\/\/raspberrypi.stackexchange.com\/questions\/34\/how-can-i-control-an-rc-servo\">Great question on StackExchange<\/a> about using PWM to control servos.<\/li>\n<li><a href=\"https:\/\/github.com\/jronald\/PiBits\">JRonald&#8217;s fork of ServoBlaster<\/a> that doesn&#8217;t use up all the pins for PWM.<\/li>\n<li><a href=\"http:\/\/www.raspberrypi.org\/phpBB3\/viewtopic.php?f=37&amp;t=15011\">Thread on the Foundation form dealing with ServoBlaster<\/a>.<\/li>\n<li><a href=\"http:\/\/www.youtube.com\/watch?v=Jse3cziVyeg\">A video showing the Pi driving 5 servos<\/a> &#8211; I think using PigPio.<\/li>\n<li><a href=\"http:\/\/www.youtube.com\/watch?v=9GWgFoHpX9I\">Another video<\/a> this time with link to <a href=\"http:\/\/www.youtube.com\/redirect?q=http%3A%2F%2Fabyz.co.uk%2Frpi%2Fpigpio%2Fpigpio-v1.tar&amp;session_token=m9c_UQa_ZzD9CTGnY5XJhioALO58MTM2NDQ4OTg1OUAxMzY0NDc1NDU5\">download PigPio<\/a>.<\/li>\n<li><a href=\"http:\/\/www.youtube.com\/watch?v=1X_FYJ5x6Wo\">Video showing Python PWM<\/a>\u00a0with a link to <a href=\"https:\/\/goddess-gate.com\/dc2\/index.php\/pages\/pizypwm.en\">download<\/a>. <a href=\"https:\/\/github.com\/aboudou\/pizypwm\">The GitHub is here<\/a>.<\/li>\n<\/ul>\n<p>After looking at all these, I would have tried out the Python version first. I like Python, it&#8217;s my sort of language. But the <a href=\"http:\/\/www.raspberrypi.org\/phpBB3\/viewtopic.php?f=32&amp;t=35961\">author of PyZiPi has said<\/a> that it&#8217;s not suitable for servo control.<\/p>\n<p>If Python fails me, I&#8217;ll move onto C\/C++ with PigPio first as it seems the simplest, but will probably end up using ServoBlaster and jumping through the required hoops to get it working. (There are all kinds of things mentioned like &#8216;userland&#8217; which I&#8217;ve heard of and frightens me!).<\/p>\n<p>The other thing to try, of course, is to try the <a href=\"https:\/\/github.com\/WiringPi\/WiringPi-Python\">WiringPi-Python library<\/a> which means you can use the WiringPi library from within Python. Certainly seems as though it might work, as Gordon Henderson has hinted in the comments section of this <a href=\"https:\/\/projects.drogon.net\/raspberry-pi\/wiringpi\/functions\/\">blog page<\/a>.<\/p>\n<p>More soon! (Once I&#8217;ve got the pan\/tilt servo rig in my hands)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As part of my &#8220;SpacePi&#8221; Raspberry Pi astronomy project, I want to be able to control the orientation of the camera module remotely. I want to be able to sit away from the camera rig and control where it is&hellip;<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[8,45],"tags":[],"class_list":["post-3248","post","type-post","status-publish","format-standard","hentry","category-camera-module","category-robotics"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Controlling servo motors on the #RaspberryPi - Raspberry Pi Pod<\/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:\/\/www.recantha.co.uk\/blog\/?p=3248\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Controlling servo motors on the #RaspberryPi - Raspberry Pi Pod\" \/>\n<meta property=\"og:description\" content=\"As part of my &#8220;SpacePi&#8221; Raspberry Pi astronomy project, I want to be able to control the orientation of the camera module remotely. I want to be able to sit away from the camera rig and control where it is&hellip;Read more &rarr;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\" \/>\n<meta property=\"og:site_name\" content=\"Raspberry Pi Pod\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/recantha\/\" \/>\n<meta property=\"article:published_time\" content=\"2013-03-28T13:12:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2013\/03\/PanTilt-1L1.jpg\" \/>\n<meta name=\"author\" content=\"Michael Horne\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@recantha\" \/>\n<meta name=\"twitter:site\" content=\"@recantha\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Michael Horne\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\"},\"author\":{\"name\":\"Michael Horne\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263\"},\"headline\":\"Controlling servo motors on the #RaspberryPi\",\"datePublished\":\"2013-03-28T13:12:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\"},\"wordCount\":691,\"commentCount\":4,\"publisher\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#organization\"},\"articleSection\":[\"Camera module\",\"Robotics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.recantha.co.uk\/blog\/?p=3248#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\",\"url\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\",\"name\":\"Controlling servo motors on the #RaspberryPi - Raspberry Pi Pod\",\"isPartOf\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#website\"},\"datePublished\":\"2013-03-28T13:12:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.recantha.co.uk\/blog\/?p=3248\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/?p=3248#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.recantha.co.uk\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Controlling servo motors on the #RaspberryPi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#website\",\"url\":\"https:\/\/www.recantha.co.uk\/blog\/\",\"name\":\"Raspberry Pi Pod\",\"description\":\"Experiences with the Raspberry Pi micro computer and microcontroller\",\"publisher\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.recantha.co.uk\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#organization\",\"name\":\"Raspberry Pi Pod\",\"url\":\"https:\/\/www.recantha.co.uk\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1\",\"width\":800,\"height\":337,\"caption\":\"Raspberry Pi Pod\"},\"image\":{\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/recantha\/\",\"https:\/\/x.com\/recantha\",\"https:\/\/www.linkedin.com\/in\/recantha\/\",\"https:\/\/www.youtube.com\/channel\/UCK4F9blabxzmk8Inzhs8tpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263\",\"name\":\"Michael Horne\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g\",\"caption\":\"Michael Horne\"},\"url\":\"https:\/\/www.recantha.co.uk\/blog\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Controlling servo motors on the #RaspberryPi - Raspberry Pi Pod","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:\/\/www.recantha.co.uk\/blog\/?p=3248","og_locale":"en_US","og_type":"article","og_title":"Controlling servo motors on the #RaspberryPi - Raspberry Pi Pod","og_description":"As part of my &#8220;SpacePi&#8221; Raspberry Pi astronomy project, I want to be able to control the orientation of the camera module remotely. I want to be able to sit away from the camera rig and control where it is&hellip;Read more &rarr;","og_url":"https:\/\/www.recantha.co.uk\/blog\/?p=3248","og_site_name":"Raspberry Pi Pod","article_publisher":"https:\/\/www.facebook.com\/recantha\/","article_published_time":"2013-03-28T13:12:58+00:00","og_image":[{"url":"https:\/\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2013\/03\/PanTilt-1L1.jpg","type":"","width":"","height":""}],"author":"Michael Horne","twitter_card":"summary_large_image","twitter_creator":"@recantha","twitter_site":"@recantha","twitter_misc":{"Written by":"Michael Horne","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.recantha.co.uk\/blog\/?p=3248#article","isPartOf":{"@id":"https:\/\/www.recantha.co.uk\/blog\/?p=3248"},"author":{"name":"Michael Horne","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263"},"headline":"Controlling servo motors on the #RaspberryPi","datePublished":"2013-03-28T13:12:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.recantha.co.uk\/blog\/?p=3248"},"wordCount":691,"commentCount":4,"publisher":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#organization"},"articleSection":["Camera module","Robotics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.recantha.co.uk\/blog\/?p=3248#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.recantha.co.uk\/blog\/?p=3248","url":"https:\/\/www.recantha.co.uk\/blog\/?p=3248","name":"Controlling servo motors on the #RaspberryPi - Raspberry Pi Pod","isPartOf":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#website"},"datePublished":"2013-03-28T13:12:58+00:00","breadcrumb":{"@id":"https:\/\/www.recantha.co.uk\/blog\/?p=3248#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.recantha.co.uk\/blog\/?p=3248"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.recantha.co.uk\/blog\/?p=3248#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.recantha.co.uk\/blog"},{"@type":"ListItem","position":2,"name":"Controlling servo motors on the #RaspberryPi"}]},{"@type":"WebSite","@id":"https:\/\/www.recantha.co.uk\/blog\/#website","url":"https:\/\/www.recantha.co.uk\/blog\/","name":"Raspberry Pi Pod","description":"Experiences with the Raspberry Pi micro computer and microcontroller","publisher":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.recantha.co.uk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.recantha.co.uk\/blog\/#organization","name":"Raspberry Pi Pod","url":"https:\/\/www.recantha.co.uk\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2016\/03\/cropped-PiPod-Logo-v3.png?fit=800%2C337&ssl=1","width":800,"height":337,"caption":"Raspberry Pi Pod"},"image":{"@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/recantha\/","https:\/\/x.com\/recantha","https:\/\/www.linkedin.com\/in\/recantha\/","https:\/\/www.youtube.com\/channel\/UCK4F9blabxzmk8Inzhs8tpg"]},{"@type":"Person","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/c27c4ef2ee1c18b130f1fcd5dcdbb263","name":"Michael Horne","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.recantha.co.uk\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/479778b0677caadde0ceb54c4129804ef674914607e3ed0998808148357d10d8?s=96&d=mm&r=g","caption":"Michael Horne"},"url":"https:\/\/www.recantha.co.uk\/blog\/?author=1"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p2RsaV-Qo","jetpack-related-posts":[{"id":14715,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=14715","url_meta":{"origin":3248,"position":0},"title":"Two motor controller boards for the Raspberry Pi from 4tronix &#8211; review","author":"Michael Horne","date":"9 May 2016","format":false,"excerpt":"This weekend has given me time to work my way through my 'review pile'. I'm almost to the bottom of the pile now - just one book to go. In the meantime, however, I tried out two motor controller boards from 4tronix. Introduction At the moment, there is a certain\u2026","rel":"","context":"In &quot;GPIO boards&quot;","block_context":{"text":"GPIO boards","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=20"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/05\/piconzeroinaction.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/05\/piconzeroinaction.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/05\/piconzeroinaction.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/05\/piconzeroinaction.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":12633,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=12633","url_meta":{"origin":3248,"position":1},"title":"Support Raspberry Pi robotics by voting for Dawn Robotics","author":"Michael Horne","date":"20 May 2015","format":false,"excerpt":"Alan Broun at Dawn Robotics is currently pitching for a \u00a320,000 fund from Jisc to develop their Raspberry Pi robotics kit. The kit comes with a chassis, motors, wheels, a driver board,\u00a0a servo-controlled Pi camera and all the fixings necessary to build a great mobile robot. The funding will help\u2026","rel":"","context":"In &quot;Competitions&quot;","block_context":{"text":"Competitions","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=11"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/cdn1.bigcommerce.com\/server3600\/iuq8w53\/products\/152\/images\/474\/pi_magician_small_03__98633.1407312492.1280.1280.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/cdn1.bigcommerce.com\/server3600\/iuq8w53\/products\/152\/images\/474\/pi_magician_small_03__98633.1407312492.1280.1280.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/cdn1.bigcommerce.com\/server3600\/iuq8w53\/products\/152\/images\/474\/pi_magician_small_03__98633.1407312492.1280.1280.jpg?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/cdn1.bigcommerce.com\/server3600\/iuq8w53\/products\/152\/images\/474\/pi_magician_small_03__98633.1407312492.1280.1280.jpg?resize=700%2C400 2x, https:\/\/i0.wp.com\/cdn1.bigcommerce.com\/server3600\/iuq8w53\/products\/152\/images\/474\/pi_magician_small_03__98633.1407312492.1280.1280.jpg?resize=1050%2C600 3x"},"classes":[]},{"id":7720,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=7720","url_meta":{"origin":3248,"position":2},"title":"PWM dimming of an LED on the #RaspberryPi","author":"Michael Horne","date":"3 February 2014","format":false,"excerpt":"A father-and-daughter team wants to control servo motors using PWM (Pulse Width Modulation) on the Raspberry Pi. As a demonstration of how possible this is, they've started out by using PWM with an LED to fade it up and down. To do this, they've used the Occidentalis distro from Adafruit\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=39"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":16755,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=16755","url_meta":{"origin":3248,"position":3},"title":"New HAT to generate motor-control pulses for the Raspberry Pi","author":"Michael Horne","date":"14 April 2017","format":false,"excerpt":"Sean Hegarty has been in touch about a new HAT-format board that he and his company (CNC Design Ltd) have released for the Raspberry Pi. It allows\u00a0clean, fast and accurate pulses to be created using simple ASCII commands. This is especially useful for \"hardware designs\u00a0where a variable frequency pulse is\u2026","rel":"","context":"In &quot;GPIO boards&quot;","block_context":{"text":"GPIO boards","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=20"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/04\/pthat.png?fit=1200%2C900&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/04\/pthat.png?fit=1200%2C900&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/04\/pthat.png?fit=1200%2C900&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/04\/pthat.png?fit=1200%2C900&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/04\/pthat.png?fit=1200%2C900&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":17961,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=17961","url_meta":{"origin":3248,"position":4},"title":"Robotic teasmade controlled by a Raspberry Pi used in Channel 4 documentary","author":"Michael Horne","date":"19 December 2017","format":false,"excerpt":"In recent Channel 4 documentary\u00a0Guy Martin Versus the Robot Car, they had a need to construct a robotic teasmaid. Called\u00a0R2\u2011Tea2, and built by Running in the Halls, the teasmaid uses an\u00a0Adafruit 16-channel PCA9685 PWM\/servo board (USA\/UK) and 2 H-bridge DC motor drivers to control the various motors. Communication is achieved\u2026","rel":"","context":"In &quot;Accessories&quot;","block_context":{"text":"Accessories","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=54"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/12\/teasmade.jpg?fit=1000%2C750&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/12\/teasmade.jpg?fit=1000%2C750&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/12\/teasmade.jpg?fit=1000%2C750&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.recantha.co.uk\/blog\/wp-content\/uploads\/2017\/12\/teasmade.jpg?fit=1000%2C750&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":2743,"url":"https:\/\/www.recantha.co.uk\/blog\/?p=2743","url_meta":{"origin":3248,"position":5},"title":"Tracking faces with a webcam and servos with the #RaspberryPi \/ @Raspberry_Pi","author":"Michael Horne","date":"10 March 2013","format":false,"excerpt":"Grintor has published an Instructable on setting up the Raspberry Pi and some servo motors to\u00a0pan & tilt a webcam to do face tracking.","rel":"","context":"In &quot;Photography&quot;","block_context":{"text":"Photography","link":"https:\/\/www.recantha.co.uk\/blog\/?cat=36"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/posts\/3248","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3248"}],"version-history":[{"count":0,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=\/wp\/v2\/posts\/3248\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3248"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3248"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.recantha.co.uk\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3248"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}