{"id":3603,"date":"2024-10-29T20:55:00","date_gmt":"2024-10-30T03:55:00","guid":{"rendered":"https:\/\/digitalnigel.com\/wordpress\/?p=3603"},"modified":"2024-10-30T10:29:31","modified_gmt":"2024-10-30T17:29:31","slug":"flipdot-display","status":"publish","type":"post","link":"https:\/\/digitalnigel.com\/wordpress\/?p=3603","title":{"rendered":"FlipDot Display"},"content":{"rendered":"\n<p>FlipDots are a very cool electromechanical display mechanism, and can offer significant power advantages, as they only consume power when changing state. These have been commonly used in roadside construction signs because they&#8217;re reliable, and can be easily powered from battery for an extended time next to the road.<\/p>\n\n\n\n<p>I found a panel (which I believe came from a display on a transit bus) on eBay, for a reasonable price, and wasn&#8217;t immediately sure what project I wanted to use it for, but needed to grab it.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3606\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-1024x768.jpg\" alt=\"\" class=\"wp-image-3606\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1246-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3604\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-1024x768.jpg\" alt=\"\" class=\"wp-image-3604\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1243-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3605\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-1024x768.jpg\" alt=\"\" class=\"wp-image-3605\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1242-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>One disadvantage of these, is that they&#8217;re a bit more complex to drive electrically. To flip a dot, a couple millisecond pulse needs to be applied in either positive or negative polarity. Additionally, though short, we need to ensure the pulse can be of reasonably high current. This is much like driving a DC motor with an H-bridge driver, but we have hundreds of dots. Adding an H-bridge for every dot would be extremely impractical.<\/p>\n\n\n\n<p>With the use of diodes, we can arrange the control lines into groups of rows and columns, so we reduce the need for drivers down to a driver for each row, and for each column. For the full panel this reduces the number from 294 drivers for each dot, to 35 to cover each row and column.<\/p>\n\n\n\n<p>I found some high current shift registers, one part is a high current source and the other a sink, so they&#8217;ll need to work in pairs. However we need to ensure that both are never on at the same time or you&#8217;ll end up in a &#8216;shoot-through&#8217; condition where one driver is just feeding straight into the other and deliver potentially damaging current. Using some NAND logic, we can ensure that the enable control lines on the shift registers are never on at the same time.<\/p>\n\n\n\n<p>To test all this, I put together a small board to test a single row of dots.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3609\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-1024x768.jpg\" alt=\"\" class=\"wp-image-3609\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1298-2-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3608\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-1024x768.jpg\" alt=\"\" class=\"wp-image-3608\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1306-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>After a successful test platform, it was time to work on building up the full control board. Using the same building blocks we tested, with the high current shift registers, and the NAND protection logic, we set up the row and column groups.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3615\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-1024x768.jpg\" alt=\"\" class=\"wp-image-3615\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1559-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3610\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-1024x768.jpg\" alt=\"\" class=\"wp-image-3610\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1362-1536x1152.jpg 1536w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>Finally, we can mount everything on a nice wooden base, and program up a classic nokia-style snake game. I might also work on adding game modes for Pong, or Breakout.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" data-id=\"3614\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-768x1024.jpg\" alt=\"\" class=\"wp-image-3614\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-768x1024.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-225x300.jpg 225w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-113x150.jpg 113w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-1152x1536.jpg 1152w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-1536x2048.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1554-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3612\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-1024x768.jpg\" alt=\"\" class=\"wp-image-3612\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1556-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"3613\" src=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-1024x768.jpg\" alt=\"\" class=\"wp-image-3613\" srcset=\"https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-1024x768.jpg 1024w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-300x225.jpg 300w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-150x113.jpg 150w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-768x576.jpg 768w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-1536x1152.jpg 1536w, https:\/\/digitalnigel.com\/wordpress\/wp-content\/uploads\/2024\/10\/IMG_1558-2048x1536.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Flipdot Snake Demo\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/X75rchsv6vI?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>FlipDots are a very cool electromechanical display mechanism, and can offer significant power advantages, as they only consume power when changing state. These have been commonly used in roadside construction signs because they&#8217;re reliable, and can be easily powered from &hellip; <a href=\"https:\/\/digitalnigel.com\/wordpress\/?p=3603\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13,9,4],"tags":[],"class_list":["post-3603","post","type-post","status-publish","format-standard","hentry","category-electronics","category-games","category-random"],"_links":{"self":[{"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/3603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3603"}],"version-history":[{"count":4,"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/3603\/revisions"}],"predecessor-version":[{"id":3619,"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/3603\/revisions\/3619"}],"wp:attachment":[{"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3603"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3603"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digitalnigel.com\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}