{"id":78,"date":"2013-05-04T09:52:29","date_gmt":"2013-05-04T14:52:29","guid":{"rendered":"http:\/\/mikesmods.com\/mm-wp\/?p=78"},"modified":"2013-07-26T02:45:02","modified_gmt":"2013-07-26T07:45:02","slug":"hacking-the-ipad-3-lcd-part-4","status":"publish","type":"post","link":"http:\/\/mikesmods.com\/mm-wp\/?p=78","title":{"rendered":"Hacking the iPad 3 LCD, Part 4: Button Board"},"content":{"rendered":"<p>Now that the main board has been put on order, my focus can shift to the ancillary parts of the project.\u00a0 In particular, it is time to consider the human-interaction part of this build.\u00a0 I think it is important to be able to control the brightness, as well as overall system power, of the panel.\u00a0 Some designs handle brightness via the USB HID monitor class, and I may well go this way eventually, but for the short term I would rather have simple up\/down\/off button control, so I can have immediate gratification before I spend the time to write the HID software.<\/p>\n<p>Most monitors have some controls in the lower righthand corner &#8211; power, up\/down, menu, etc &#8211; as well as a status LED.\u00a0 As I will not be inserting video data and thus will not have an OSD, some of these buttons are not important.\u00a0 But I think the lower-righthand corner is natural for monitor controls, so my plans call for a simple board adhered to the back of the panel at this point, with basic controls and a status indicator LED.\u00a0 This will connect to J8 on the main board, which has been wired for this purpose (three active-low button inputs pulled high, and three resistor-limited PWM outputs).\u00a0 I have chosen to use a RGB LED because I have not yet decided on indicator colors.\u00a0 Perhaps white would have been ideal for this application as it is an Apple panel, but I couldn&#8217;t find a white + orange (for standby) LED.\u00a0 I chose a 0604-size 6-pin LED (Rohm <a title=\"ROHM SMLP36RGB1W3\" href=\"http:\/\/rohmfs.rohm.com\/en\/products\/databook\/datasheet\/opto\/led\/chip_multi\/smlp36.pdf\" target=\"_blank\">SMLP36RGB1W3<\/a>), so I could fit discrete white and orange 0402 LEDs if I wanted to change to that.<\/p>\n<p>For buttons, I was really torn.\u00a0 On one hand, it would have been nice to have the whole board hidden from view, and use right-angle buttons just exposed beyond the edge.\u00a0 I couldn&#8217;t think of a good way to show the LED though.\u00a0 I thought about capacitive touch buttons, which would be neat and fit with the Apple theme of the unit, and I actually wired the button inputs to capacitive touch inputs just in case, but I didn&#8217;t want to bother with the software and debugging right off the bat.\u00a0 So I went with regular SMD microminiature tactile switches (C&amp;K <a title=\"C&amp;K KMR4\" href=\"http:\/\/www.ck-components.com\/index.php?module=media&amp;action=Display&amp;cmpref=33314&amp;lang=en&amp;width=&amp;height=&amp;format=&amp;alt=\" target=\"_blank\">KMR421G LFS<\/a>).\u00a0 These are seriously, seriously small buttons.\u00a0 They should end up no taller than the panel is thick (and if you have a panel, you know how crazy thin it is), and allow my exposed board area to shrink to 0.14&#8243;.\u00a0 So enough talking about it, let&#8217;s have a look, eh?<\/p>\n<div id=\"attachment_79\" style=\"width: 310px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Button_Board_RevA.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-79\" class=\"size-medium wp-image-79\" alt=\"First go at the iPad LCD controller interface board.  It's smaller than it looks.\" src=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Button_Board_RevA-300x175.png\" width=\"300\" height=\"175\" srcset=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Button_Board_RevA-300x175.png 300w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Button_Board_RevA-624x364.png 624w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Button_Board_RevA.png 968w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-79\" class=\"wp-caption-text\">First go at the iPad LCD controller interface board. It&#8217;s smaller than it looks.<\/p><\/div>\n<p>You&#8217;ll notice a couple of things about the design.\u00a0 First, note that there are no traces or copper features on the left section of the top of the board.\u00a0 I plan to adhere this board directly to the back of the panel, so I made sure there was no copper (even under soldermask) that could be rubbed through and short on the back of the panel.\u00a0 Mind you, this circuit was designed with short circuits in mind, and nothing will be damaged, but if it shorts it won&#8217;t work right and I&#8217;ll be peeved.\u00a0 I think I will use contact cement to adhere this board rather than the foam tape of the other one, as it is designed for flat contact\u00a0 and has no components or pins like the other board does.<\/p>\n<p>You&#8217;ll also note that the bottom side traces extend straight for a quarter inch from where they are routed to the connector.\u00a0 I actually made this board larger than it had to be, because I didn&#8217;t think I could get good adhesion in only a quarter-inch of mating surface.\u00a0 I kept the traces straight in this area so I could easily make the board wider or narrower as needed.\u00a0 The total board dimensions are now 0.65 by 0.76 inches, driven in X by adhesion area and in Y by the components themselves.\u00a0 This board is 2-layer and should be very inexpensive (at $5 per square inch, my math works out to $2.47 per 3 &#8211; I wonder if OSH Park has a minimum order?), so I plan to order it and just see how it works without putting too much more thought into it.<\/p>\n<p>I spent a little bit of time deciding whether this will end up too small, and in doing so drew up a quick model of the boards in place on the LCD.\u00a0 Decide for yourself if I&#8217;m crazy.<\/p>\n<div id=\"attachment_81\" style=\"width: 310px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_top.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-81\" class=\"size-medium wp-image-81\" alt=\"Assembly concept 1, top\" src=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_top-300x225.png\" width=\"300\" height=\"225\" srcset=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_top-300x225.png 300w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_top-1024x768.png 1024w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_top-624x468.png 624w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_top.png 1600w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-81\" class=\"wp-caption-text\">Assembly concept 1, top<\/p><\/div>\n<div id=\"attachment_80\" style=\"width: 310px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_btm.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-80\" class=\"size-medium wp-image-80\" alt=\"Assembly concept 1, bottom\" src=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_btm-300x225.png\" width=\"300\" height=\"225\" srcset=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_btm-300x225.png 300w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_btm-1024x768.png 1024w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_btm-624x468.png 624w, http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/iPad_Assembly_Concept_1_btm.png 1600w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-80\" class=\"wp-caption-text\">Assembly concept 1, bottom<\/p><\/div>\n<p>I don&#8217;t have the FFC modeled in yet, but assume it would naturally plug into the connector in its current position.\u00a0 I also haven&#8217;t bothered to model any structural components, which I also haven&#8217;t mentioned yet.\u00a0 In lieu of a full case, I think I&#8217;ll do a minimal support structure out of 1\/8&#8243; aluminum bar stock &#8211; a strip down each side to catch the mount pads, one across the back and a hinge with a foot so it sits upright on a desk.\u00a0 I&#8217;ll talk more on that when I get that far.<\/p>\n<p>Documents for the button board are available for download:<\/p>\n<ul>\n<li><a href=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/PCB10003-REV-A-GERBERS.zip\">PCB10003 REV A GERBERS (ZIP 5.4K)<\/a><\/li>\n<li><a href=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/PCB10003-REV-A-LAYERS.pdf\">PCB10003 REV A LAYERS (PDF 7.86K)<\/a><\/li>\n<li><a href=\"http:\/\/mikesmods.com\/mm-wp\/wp-content\/uploads\/2013\/05\/SCH10003-REV-A.pdf\">SCH10003 REV A (PDF 52.5K)<\/a><\/li>\n<\/ul>\n<p>In the process of generating these prints I did a little more measurement and I think these will be way, way too small.\u00a0 But what the hell, they&#8217;re cheap, so I ordered them anyway.\u00a0 You may want to wait for Rev B.<\/p>\n<p><a title=\"Hacking the iPad 3 LCD, Part 3\" href=\"http:\/\/mikesmods.com\/mm-wp\/?p=69\">&lt;&lt; Previous post in this series<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Now that the main board has been put on order, my focus can shift to the ancillary parts of the project.\u00a0 In particular, it is time to consider the human-interaction part of this build.\u00a0 I think it is important to be able to control the brightness, as well as overall system power, of the panel.\u00a0 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"_links":{"self":[{"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=\/wp\/v2\/posts\/78"}],"collection":[{"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=78"}],"version-history":[{"count":13,"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=\/wp\/v2\/posts\/78\/revisions"}],"predecessor-version":[{"id":380,"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=\/wp\/v2\/posts\/78\/revisions\/380"}],"wp:attachment":[{"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=78"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=78"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/mikesmods.com\/mm-wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=78"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}