{"id":14342,"date":"2017-10-01T14:12:32","date_gmt":"2017-10-01T18:12:32","guid":{"rendered":"http:\/\/scruss.com\/blog\/?p=14342"},"modified":"2017-10-01T14:12:32","modified_gmt":"2017-10-01T18:12:32","slug":"installing-the-pimoroni-onoff-shim-the-hard-way","status":"publish","type":"post","link":"https:\/\/scruss.com\/blog\/2017\/10\/01\/installing-the-pimoroni-onoff-shim-the-hard-way\/","title":{"rendered":"Installing the Pimoroni OnOff Shim the hard way"},"content":{"rendered":"<p><span style=\"color: #ff0000;\"><strong>Hey!<\/strong> This process permanently modifies your Raspberry Pi and <strong>may<\/strong> <a href=\"https:\/\/forums.pimoroni.com\/t\/onoff-shim-inky-phat-machine-that-turns-itself-off\/6057\">prevent it from working with many HATs and add-ons<\/a> \u00e2\u20ac\u00a6 It also has some <em>really<\/em> fiddly soldering. If in doubt, don&#8217;t.<\/span><\/p>\n<p>Pimoroni&#8217;s <a href=\"https:\/\/shop.pimoroni.com\/products\/onoff-shim\">OnOff SHIM<\/a> adds what the Raspberry Pi should have had all along: a power button. While there are lots of soft power switches out there, the OnOff Shim adds circuitry to cut power to the Raspberry Pi after shutdown.<\/p>\n<p>While the shim comes with a 12-socket header, that prevents you from using any other device that uses the leftmost GPIO pins. I wanted access to all the pins, and not have the shim create an unsightly bump on the pins. So this is what I did \u00e2\u20ac\u00a6<\/p>\n<figure id=\"attachment_14343\" aria-describedby=\"caption-attachment-14343\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2741.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14343 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2741-1024x576.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2741.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2741-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2741-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2741-768x432.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14343\" class=\"wp-caption-text\">Regular GPIO header in place on a Raspberry Pi Zero W<\/figcaption><\/figure>\n<figure id=\"attachment_14344\" aria-describedby=\"caption-attachment-14344\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2742.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14344 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2742-1024x577.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2742.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2742-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2742-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2742-768x433.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14344\" class=\"wp-caption-text\">Test-fit the socket header to mark where you&#8217;re going to cut the pin support block<\/figcaption><\/figure>\n<figure id=\"attachment_14345\" aria-describedby=\"caption-attachment-14345\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2743.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14345 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2743-1024x577.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2743.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2743-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2743-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2743-768x433.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14345\" class=\"wp-caption-text\"><strong>Very<\/strong> carefully, cut the pin support block between (physical) pins 11-13 and 12-14. I used a mix of a sharp craft knife and nibbling with fine diagonal cutters. Try not to bend the GPIO pins either as you cut the block or lever the block out of the way<\/figcaption><\/figure>\n<figure id=\"attachment_14346\" aria-describedby=\"caption-attachment-14346\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2744.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14346 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2744-1024x577.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2744.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2744-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2744-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2744-768x433.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14346\" class=\"wp-caption-text\">Apply non-conductive tape to the back of the OnOff Shim. I used Kapton, but electrical\/insulating tape will do. Just make sure you don&#8217;t block any of the GPIO holes<\/figcaption><\/figure>\n<figure id=\"attachment_14347\" aria-describedby=\"caption-attachment-14347\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2745.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14347 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2745-1024x577.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2745.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2745-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2745-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2745-768x433.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14347\" class=\"wp-caption-text\">Test-fit the shim. You may have to pare away at the support block a bit to get it to fit level with the rest of the pins<\/figcaption><\/figure>\n<figure id=\"attachment_14348\" aria-describedby=\"caption-attachment-14348\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2746.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14348 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2746-1024x576.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2746.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2746-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2746-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2746-768x432.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14348\" class=\"wp-caption-text\">Now solder the shim in place. You want the solder joints as small as possible. I used extra liquid flux and very fine silver solder to just fill the pin holes. Too much solder left on the pins will stop HATs and socket headers fitting, so you may have to desolder as I had to do on the rightmost pin<\/figcaption><\/figure>\n<figure id=\"attachment_14349\" aria-describedby=\"caption-attachment-14349\" style=\"width: 840px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2747.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14349 size-large\" src=\"http:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2747-1024x575.jpg\" alt=\"\" width=\"840\" height=\"472\" srcset=\"https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2747.jpg 1024w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2747-160x90.jpg 160w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2747-320x180.jpg 320w, https:\/\/scruss.com\/wordpress\/wp-content\/uploads\/2017\/10\/IMG_2747-768x431.jpg 768w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/a><figcaption id=\"caption-attachment-14349\" class=\"wp-caption-text\">Example HAT fitted with OnOff shim underneath. Note that his particular HAT \u00e2\u20ac\u201d the Pimoroni <a href=\"https:\/\/shop.pimoroni.com\/products\/inky-phat\">Inky pHAT<\/a> \u00e2\u20ac\u201d will <strong>not<\/strong> work with this shim.<\/figcaption><\/figure>\n<p>The <a href=\"https:\/\/pinout.xyz\/pinout\/onoff_shim#\">OnOff SHIM<\/a> uses GPIO pin <a href=\"https:\/\/pinout.xyz\/pinout\/pin11_gpio17#\">BCM 17<\/a> (physical pin 11) as the power button sensor and <a href=\"https:\/\/pinout.xyz\/pinout\/pin7_gpio4#\">BCM 4<\/a> as the power off signal. Any device that also uses BCM 17 (and possibly BCM 4) will likely cause the reset process to be triggered. This means that I can&#8217;t use the shim with my <a href=\"https:\/\/pinout.xyz\/pinout\/inky_phat#\">Inky pHAT<\/a> EPD. You would have thought that Pimoroni might&#8217;ve considered that, since they made both. Consulting <a href=\"https:\/\/pinout.xyz\/\">pinout.xyz<\/a> suggests that 41 boards that likely may not work with the OnOff shim: <a href=\"https:\/\/pinout.xyz\/pinout\/cirrus_logic_audio_card\">Cirrus Logic Audio Card<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/display-o-tron_3000\">Display-o-Tron 3000<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/dots\">DOTs<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/enviro_phat\">Enviro pHAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/esp_iot_phat\">ESP IoT pHAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/explorer_hat\">Explorer HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/explorer_hat_pro\">Explorer HAT Pro<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/flex\">Flex<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/gertvga_666\">GertVGA 666<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/high-precision_ad\/da_board\">High-Precision AD\/DA Board<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/hyperpixel\">Hyperpixel<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/inky_phat\">Inky pHAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/iot_phat\">IoT pHAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/ledborg\">LEDBorg<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/motozero\">MotoZero<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/navio2_autopilot\">Navio2 Autopilot<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/papirus_hat\">PaPiRus HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/papirus_zero\">PaPiRus Zero<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/piano_hat\">Piano HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pibrella\">Pibrella<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/picade_hat\">Picade HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pi_cap\">Pi Cap<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pigrrl_gamepad\">PiGRRL Gamepad<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pi-lite-r\">Pi-LITE-r<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pi-mote\">Pi-mote<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pi_poe_switch_hat\">Pi PoE Switch HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pistep2_dual\">PiStep2 Dual<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pistep2_quad\">PiStep2 Quad<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/pi_stop\">Pi Stop<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/propeller_hat\">Propeller HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/robohat\">RoboHat<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/rtk_motor_controller\">RTK Motor Controller<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/servo_pwm_pi_zero\">Servo PWM Pi Zero<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/skywriter_hat\">Skywriter HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/ultimate_gps_hat\">Ultimate GPS HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/voice_hat\">Voice HAT<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/witty_pi\">Witty Pi<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/witty_pi_2\">Witty Pi 2<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/zero2go\">Zero2Go<\/a>, <a href=\"https:\/\/pinout.xyz\/pinout\/zero_lipo\">Zero LiPo<\/a> and <a href=\"https:\/\/pinout.xyz\/pinout\/zeroseg\">ZeroSeg<\/a>.<\/p>\n<p>While I like the OnOff SHIM, check carefully that it will work with your application.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hey! This process permanently modifies your Raspberry Pi and may prevent it from working with many HATs and add-ons \u00e2\u20ac\u00a6 It also has some really fiddly soldering. If in doubt, don&#8217;t. Pimoroni&#8217;s OnOff SHIM adds what the Raspberry Pi should have had all along: a power button. While there are lots of soft power switches [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Installing the Pimoroni OnOff Shim the hard way","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":[7],"tags":[3073,3074,993,2510],"class_list":["post-14342","post","type-post","status-publish","format-standard","hentry","category-computers-suck","tag-onoff","tag-pimoroni","tag-power","tag-raspberrypi"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pQNZZ-3Jk","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/14342","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/comments?post=14342"}],"version-history":[{"count":1,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/14342\/revisions"}],"predecessor-version":[{"id":14350,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/14342\/revisions\/14350"}],"wp:attachment":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/media?parent=14342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/categories?post=14342"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/tags?post=14342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}