<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[atomic14]]></title><description><![CDATA[Welcome to the atomic14 newsletter - full of interesting posts for makers and electronics enthusiasts, sign up now - you won't be dissapointed!]]></description><link>https://atomic14.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!N97H!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Fba33f659-4333-4159-9cf5-2799c60d91ff_1439x1439.jpeg</url><title>atomic14</title><link>https://atomic14.substack.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 11 Apr 2026 09:28:22 GMT</lastBuildDate><atom:link href="https://atomic14.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Chris Greening]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[atomic14@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[atomic14@substack.com]]></itunes:email><itunes:name><![CDATA[Chris Greening]]></itunes:name></itunes:owner><itunes:author><![CDATA[Chris Greening]]></itunes:author><googleplay:owner><![CDATA[atomic14@substack.com]]></googleplay:owner><googleplay:email><![CDATA[atomic14@substack.com]]></googleplay:email><googleplay:author><![CDATA[Chris Greening]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Why Won't My Board Reset?]]></title><description><![CDATA[One board works - another board doesn't...]]></description><link>https://atomic14.substack.com/p/why-wont-my-board-reset</link><guid isPermaLink="false">https://atomic14.substack.com/p/why-wont-my-board-reset</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Sat, 04 Apr 2026 15:07:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/VdJXJQXXZoo" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-VdJXJQXXZoo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;VdJXJQXXZoo&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/VdJXJQXXZoo?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>A simple case of not enough alcohol&#8230; accompanying blog post <a href="https://www.atomic14.com/2026/04/04/why-no-reset">here</a>.</p>]]></content:encoded></item><item><title><![CDATA[I Thought SOT666 Was a Standard - It Isn’t.]]></title><description><![CDATA[Pretty interesting (well, I thought so anyway!) SOT666 - you'd think it's a standard footprint...]]></description><link>https://atomic14.substack.com/p/i-thought-sot666-was-a-standard-it</link><guid isPermaLink="false">https://atomic14.substack.com/p/i-thought-sot666-was-a-standard-it</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Sun, 22 Mar 2026 13:55:31 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/z3s550opeZ0" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Accompanying blog post <a href="https://www.atomic14.com/2026/03/15/is-sot666-standard">here</a>.</p><div id="youtube2-z3s550opeZ0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;z3s550opeZ0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/z3s550opeZ0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[MAX30102 + ESP32-C3 0.4 inch OLED]]></title><description><![CDATA[$3 dollar heart rate and oxygen sensor]]></description><link>https://atomic14.substack.com/p/max30102-esp32-c3-04-inch-oled</link><guid isPermaLink="false">https://atomic14.substack.com/p/max30102-esp32-c3-04-inch-oled</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Sun, 15 Mar 2026 10:59:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/0OV5aCOnXBA" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-0OV5aCOnXBA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;0OV5aCOnXBA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/0OV5aCOnXBA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Blog post <a href="https://www.atomic14.com/2026/03/15/cheap-heart-rate-monitor">here</a>.</p>]]></content:encoded></item><item><title><![CDATA[Size Does Matter: Why -Os Beat -O2 on My ESP32-S3]]></title><description><![CDATA[Turns out, size might matter more than you think...]]></description><link>https://atomic14.substack.com/p/size-does-matter-why-os-beat-o2-on</link><guid isPermaLink="false">https://atomic14.substack.com/p/size-does-matter-why-os-beat-o2-on</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Sat, 07 Mar 2026 14:37:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/cqHH2NXcf5E" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-cqHH2NXcf5E" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;cqHH2NXcf5E&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/cqHH2NXcf5E?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Accompanying blog post <a href="https://www.atomic14.com/2026/03/06/size-better-than-speed">here</a>. </p>]]></content:encoded></item><item><title><![CDATA[I Turned an ESP32 into a Thermal USB Webcam]]></title><description><![CDATA[It's a webcam - but it's Infrared!]]></description><link>https://atomic14.substack.com/p/i-turned-an-esp32-into-a-thermal</link><guid isPermaLink="false">https://atomic14.substack.com/p/i-turned-an-esp32-into-a-thermal</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Sun, 15 Feb 2026 08:38:11 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/jyhVxC0ipE8" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-jyhVxC0ipE8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;jyhVxC0ipE8&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/jyhVxC0ipE8?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>You can find an accompanying blog post <a href="https://www.atomic14.com/2026/02/15/diy-infrared-usb-camera">here</a>.</p>]]></content:encoded></item><item><title><![CDATA[Amazon Basics vs SanDisk: I Cut Them Open]]></title><description><![CDATA[We recently repaired a broken AmazonBasics microSD adapter, and a few people in the comments pointed out that these are &#8220;built to a price&#8221; and probably not the highest quality - let's take a look.]]></description><link>https://atomic14.substack.com/p/amazon-basics-vs-sandisk-i-cut-them</link><guid isPermaLink="false">https://atomic14.substack.com/p/amazon-basics-vs-sandisk-i-cut-them</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Mon, 09 Feb 2026 04:55:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/Wir1jBqvQEs" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-Wir1jBqvQEs" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Wir1jBqvQEs&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/Wir1jBqvQEs?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[I've no idea why I fixed this...]]></title><description><![CDATA[Not something I'd recommend doing!]]></description><link>https://atomic14.substack.com/p/ive-no-idea-why-i-fixed-this</link><guid isPermaLink="false">https://atomic14.substack.com/p/ive-no-idea-why-i-fixed-this</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Wed, 28 Jan 2026 18:16:11 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/WNOOJvelkcE" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-WNOOJvelkcE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;WNOOJvelkcE&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/WNOOJvelkcE?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[Drones and Lasers - what could possibly go wrong?]]></title><description><![CDATA[It's a big bag from AliExpress - I'd actually forgotten about half the stuff I'd ordered...]]></description><link>https://atomic14.substack.com/p/drones-and-lasers-what-could-possibly</link><guid isPermaLink="false">https://atomic14.substack.com/p/drones-and-lasers-what-could-possibly</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Thu, 22 Jan 2026 21:13:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/jfxzf5G0qgw" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-jfxzf5G0qgw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;jfxzf5G0qgw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/jfxzf5G0qgw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[Train Surgery]]></title><description><![CDATA[This is a fun little battery-powered Christmas tree train set&#8230; but out of the box it has two &#8220;features&#8221;:]]></description><link>https://atomic14.substack.com/p/train-surgery</link><guid isPermaLink="false">https://atomic14.substack.com/p/train-surgery</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Wed, 07 Jan 2026 17:58:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!GWgo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This is a fun little battery-powered Christmas tree train set&#8230;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://s.click.aliexpress.com/e/_c4BuZuJL" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GWgo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!GWgo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!GWgo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!GWgo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GWgo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:116274,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:&quot;https://s.click.aliexpress.com/e/_c4BuZuJL&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/183817849?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GWgo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!GWgo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!GWgo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!GWgo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c36bb9c-be5e-4966-bebe-da08735893e3_2560x1440.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Christmas Tree Train!</figcaption></figure></div><p>You can buy your own one <a href="https://s.click.aliexpress.com/e/_c4BuZuJL">here</a>.</p><p>But out of the box it has two &#8220;features&#8221;:</p><ul><li><p>It&#8217;s <strong>unbelievably loud</strong> (the kind of loud you don&#8217;t want in your living room for more than 30 seconds)</p></li><li><p>It eats the <strong>four AA batteries</strong> living in the coal car</p></li></ul><p>You can listen to the noise in all its glory at the start of this video:</p><div id="youtube2-RAQBaDWxRQ0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RAQBaDWxRQ0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RAQBaDWxRQ0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>So this was an excuse for a bit of <em>train surgery</em>: make it rechargeable, and give it a proper volume control.</p><h1>What we&#8217;re starting with</h1><p>The power pack lives in the coal car and holds <strong>4&#215;AA</strong>. Before changing anything, I wanted to know what voltage the train actually expects.</p><p>With the existing batteries already a bit tired, the output measured about <strong>5.1 V</strong>. With fresh alkalines you&#8217;d expect something closer to <strong>~6 V</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iLUO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iLUO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 424w, https://substackcdn.com/image/fetch/$s_!iLUO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 848w, https://substackcdn.com/image/fetch/$s_!iLUO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 1272w, https://substackcdn.com/image/fetch/$s_!iLUO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iLUO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Battery Voltage&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Battery Voltage" title="Battery Voltage" srcset="https://substackcdn.com/image/fetch/$s_!iLUO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 424w, https://substackcdn.com/image/fetch/$s_!iLUO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 848w, https://substackcdn.com/image/fetch/$s_!iLUO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 1272w, https://substackcdn.com/image/fetch/$s_!iLUO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0c4ba23-5c16-40d4-a62f-05fb84c9b372_1522x856.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Battery Voltage</em></figcaption></figure></div><h1>Quick teardown</h1><p>Opening the locomotive was pretty straightforward - we have the legendary <strong>visible screws</strong>.</p><p>Inside the engine is a small PCB with the usual blob IC, plus a whole bunch of wires:</p><ul><li><p>Two wires to the <strong>speaker</strong></p></li><li><p>Wires to the <strong>power switch</strong></p></li><li><p>Two wires to the <strong>motor</strong></p></li><li><p>Two wires to the <strong>front LED</strong></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5aZG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5aZG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 424w, https://substackcdn.com/image/fetch/$s_!5aZG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 848w, https://substackcdn.com/image/fetch/$s_!5aZG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 1272w, https://substackcdn.com/image/fetch/$s_!5aZG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5aZG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp" width="833" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:833,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Lots of wires&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lots of wires" title="Lots of wires" srcset="https://substackcdn.com/image/fetch/$s_!5aZG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 424w, https://substackcdn.com/image/fetch/$s_!5aZG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 848w, https://substackcdn.com/image/fetch/$s_!5aZG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 1272w, https://substackcdn.com/image/fetch/$s_!5aZG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8844435a-0115-44d5-ac7b-533dddf1b847_833x773.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Lots of wires</em></figcaption></figure></div><h1>Parts used</h1><p>This is very much a &#8220;what&#8217;s in the parts drawer?&#8221; mod. The final setup was:</p><ul><li><p><strong>18650 Li&#8209;ion cell</strong> (single cell, 3.7 V nominal, 2200mAh)</p></li><li><p><a href="https://s.click.aliexpress.com/e/_c400zH8J">A combined </a><strong><a href="https://s.click.aliexpress.com/e/_c400zH8J">charger + protection + boost</a></strong><a href="https://s.click.aliexpress.com/e/_c400zH8J"> module (with an adjustable output voltage)</a></p></li><li><p>A <strong>potentiometer</strong> used as a simple volume control in series with the speaker</p></li><li><p>Wire, solder, and a quantity of hot glue that we&#8217;ll call &#8220;structural&#8221;</p></li></ul><h1>Making it rechargeable</h1><p>The plan was simple:</p><ol><li><p>Put the 18650 cell in the coal car</p></li><li><p>Boost it up to roughly &#8220;4&#215;AA voltage&#8221;</p></li><li><p>Feed the train through the existing power connector</p></li></ol><p>Fitting it was the main challenge. The coal car has an internal red plastic compartment that needed to be&#8230; <em>re-engineered</em>&#8230; to make room for the cell.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o_2M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o_2M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 424w, https://substackcdn.com/image/fetch/$s_!o_2M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 848w, https://substackcdn.com/image/fetch/$s_!o_2M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 1272w, https://substackcdn.com/image/fetch/$s_!o_2M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o_2M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp" width="978" height="548" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:548,&quot;width&quot;:978,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;It fits!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="It fits!" title="It fits!" srcset="https://substackcdn.com/image/fetch/$s_!o_2M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 424w, https://substackcdn.com/image/fetch/$s_!o_2M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 848w, https://substackcdn.com/image/fetch/$s_!o_2M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 1272w, https://substackcdn.com/image/fetch/$s_!o_2M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde8ae8c5-3c31-43ae-ace8-cdd42c4dce28_978x548.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>It fits!</em></figcaption></figure></div><p>Once there was space, the wiring was straightforward:</p><ul><li><p>Battery &#8594; charge/protect/boost module input</p></li><li><p>Module output adjusted to around <strong>~5.5 V</strong></p></li><li><p>Module output &#8594; connected to the plug coming out of the coal cart</p></li></ul><p>I set the output to around <strong>5.5 V</strong> &#8212; nicely in the middle between &#8220;fresh AAs&#8221; and &#8220;nearly flat AAs&#8221;.</p><p>One surprisingly nice thing is they did include a PTC fuse inline with the batteries - a nice soft start/safety feature.</p><p>Before plugging anything in, I did a quick polarity sanity check because toy wiring colour conventions are often a work of fiction. In this case the connector was <strong>centre positive</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!i-IU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!i-IU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 424w, https://substackcdn.com/image/fetch/$s_!i-IU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 848w, https://substackcdn.com/image/fetch/$s_!i-IU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 1272w, https://substackcdn.com/image/fetch/$s_!i-IU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!i-IU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp" width="1449" height="734" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:734,&quot;width&quot;:1449,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;It fits!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="It fits!" title="It fits!" srcset="https://substackcdn.com/image/fetch/$s_!i-IU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 424w, https://substackcdn.com/image/fetch/$s_!i-IU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 848w, https://substackcdn.com/image/fetch/$s_!i-IU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 1272w, https://substackcdn.com/image/fetch/$s_!i-IU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa11a5166-e8d0-4359-8784-0f5828859469_1449x734.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>It fits!</em></figcaption></figure></div><p>With the speaker temporarily disconnected (to preserve my hearing), I plugged it in and&#8230; the wheels on the train went round and round. Success!</p><h1>Adding a volume knob</h1><p>Next problem: the speaker. The easy way to make something quieter is to disconnect it, but a volume control is much nicer.</p><p>The simplest approach here is to put a <strong>potentiometer in series with one speaker lead</strong>, using it as a variable resistor. With the pot turned up you get full volume; turned down it becomes civilised.</p><p>This worked immediately on the bench: at minimum it&#8217;s almost silent (you mainly hear the motor), and at maximum it&#8217;s back to the original &#8220;wow that&#8217;s a lot&#8221;.</p><h1>Please don&#8217;t judge my glue</h1><p>An internal pot is only useful if you can actually reach it. I wanted the knob accessible from the outside.</p><p>So I:</p><ul><li><p>Chopped the top off an existing plastic piece to use as a <strong>knob cap</strong></p></li><li><p>Stuck the top I chopped off onto the top of the potentiometer</p></li><li><p>Glued it all together</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BDcN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BDcN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 424w, https://substackcdn.com/image/fetch/$s_!BDcN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 848w, https://substackcdn.com/image/fetch/$s_!BDcN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 1272w, https://substackcdn.com/image/fetch/$s_!BDcN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BDcN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp" width="598" height="436" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:436,&quot;width&quot;:598,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Hot glue saves the day&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hot glue saves the day" title="Hot glue saves the day" srcset="https://substackcdn.com/image/fetch/$s_!BDcN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 424w, https://substackcdn.com/image/fetch/$s_!BDcN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 848w, https://substackcdn.com/image/fetch/$s_!BDcN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 1272w, https://substackcdn.com/image/fetch/$s_!BDcN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd607cb83-ba90-4990-97f9-5e1a9b87aad8_598x436.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Hot glue saves the day</em></figcaption></figure></div><p>In the end a combination of a lot of hot glue along with superglue and patience made it all work.</p><p>I did spend a lot of time with my fingers stuck together&#8230;</p><p>In the end it&#8217;s slightly wonky, but it works, it&#8217;s solid, and a bit of gold paint hides the terrible workmanship.</p><h1>Result (and one remaining annoyance)</h1><p>The end result is exactly what I wanted:</p><ul><li><p><strong>Rechargeable</strong> power (no more burning through AAs)</p></li><li><p><strong>Adjustable volume</strong> (from &#8220;barely there&#8221; to &#8220;festival headliner&#8221;)</p></li></ul><p>The only thing I didn&#8217;t solve is the drivetrain noise: it uses plastic gears and the mechanical clatter is now the loudest thing at low volume.</p><h1>Watch the full build</h1><p>If you want to see the teardown, the battery conversion, and the volume knob bodging in real time, the full video is here:</p><div id="youtube2-RAQBaDWxRQ0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RAQBaDWxRQ0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RAQBaDWxRQ0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[ESP32 Rainbow QA - A tale of three boards]]></title><description><![CDATA[We&#8217;ve now shipped a few hundred ESP32 Rainbow boards; most of the boards have worked perfectly - but there are always a few that don&#8217;t make it.]]></description><link>https://atomic14.substack.com/p/esp32-rainbow-qa-a-tale-of-three</link><guid isPermaLink="false">https://atomic14.substack.com/p/esp32-rainbow-qa-a-tale-of-three</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 02 Jan 2026 17:34:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!5yxi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We&#8217;ve now shipped a few hundred ESP32 Rainbow boards; <em>most</em> of the boards have worked perfectly - but there are always a few that don&#8217;t make it.</p><p>We&#8217;ve got three units that have failed QA in different ways:</p><ul><li><p>One had <strong>no sound</strong></p></li><li><p>One had a <strong>dodgy keyboard</strong></p></li><li><p>One had <strong>no USB connection</strong></p></li></ul><p>None of these were design issues. They were all the sort of subtle manufacturing or assembly faults you only discover once real boards are powered up and tested.</p><p>Let&#8217;s take a look at each failure, what caused it, and how it can (or should) be fixed.</p><h1>Manufacturing &amp; QA</h1><p>The ESP32 Rainbow PCBs are manufactured by <strong>PCBWay</strong>, who handle:</p><ul><li><p>PCB fabrication</p></li><li><p>UV silkscreen printing</p></li><li><p>Partial component assembly</p></li></ul><p>Final assembly, inspection, and full QA are done here in Scotland.</p><p>That QA step is important - it&#8217;s where issues like these show up <em>before</em> a board ever reaches a customer.</p><h1>Failure #1: No sound output</h1><p><strong>Symptom:</strong><br>The board has been flashed and everything runs correctly, but there is no audio from the speaker.</p><h2>Debugging</h2><p>Applying gentle pressure to the headphone jack caused sound to briefly return - which is a strong hint that this is a <strong>mechanical or soldering issue</strong>.</p><h2>Root cause</h2><p>Under the microscope, the problem was obvious:</p><ul><li><p>Multiple pads on the headphone jack had <strong>lifted</strong></p></li><li><p>Only one electrical connection remained intact</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5yxi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5yxi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!5yxi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!5yxi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!5yxi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5yxi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Lifted Pads&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lifted Pads" title="Lifted Pads" srcset="https://substackcdn.com/image/fetch/$s_!5yxi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!5yxi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!5yxi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!5yxi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd92c17c4-1e4a-4d00-b3d7-8edd7f0446d3_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Lifted Pads</em></figcaption></figure></div><p>This meant the speaker signal was effectively disconnected.</p><h2>Resolution</h2><p>This is a reasonably easy fix. We just need to reflow the solder joints, and there&#8217;s just about enough copper to reconnect the lifted pads to the ground plane. However, given the damage, this board can&#8217;t be sent out to a paying customer - we&#8217;ll use it for spare parts.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aKtt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aKtt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!aKtt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!aKtt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!aKtt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aKtt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Reconnected&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Reconnected" title="Reconnected" srcset="https://substackcdn.com/image/fetch/$s_!aKtt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!aKtt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!aKtt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!aKtt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F172dcbd4-7f5e-4d08-874c-7f7d13014aae_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Reconnected</em></figcaption></figure></div><h1>Failure #2: USB not enumerating</h1><p><strong>Symptom:</strong><br>The board powers up correctly (3.3 V present), but the ESP32 <strong>does not appear over USB</strong>.</p><h2>Debugging</h2><p>The USB path is fairly simple:</p><p>ESP32 &#8594; ESD protection IC &#8594; USB socket</p><p>Using a continuity test, I checked each stage:</p><ul><li><p>ESP32 USB pins &#8594; protection chip &#8594; OK</p></li><li><p>Protection chip &#8594; USB socket &#8594; OK (?)</p></li></ul><h2>Root cause</h2><p>One pin on the ESD protection IC was <strong>not properly seated on its footprint</strong>.</p><p>Visually it looked <em>almost</em> fine - but one of the pins was not actually connected.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!674E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!674E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!674E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!674E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!674E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!674E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Dodgy ESD Soldering&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Dodgy ESD Soldering" title="Dodgy ESD Soldering" srcset="https://substackcdn.com/image/fetch/$s_!674E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!674E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!674E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!674E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2327d30c-d966-4b2a-901a-4b98253f4434_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Dodgy ESD Soldering</em></figcaption></figure></div><h2>Fix</h2><p>Reflow the solder and nudge the IC into the correct position. With that done, we have continuity from the ESP32 USB pins &#8594; USB socket.</p><p>The board now appears over USB and can be flashed. Everything else works perfectly - we can ship this board to a paying customer.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FWcE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FWcE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 424w, https://substackcdn.com/image/fetch/$s_!FWcE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 848w, https://substackcdn.com/image/fetch/$s_!FWcE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 1272w, https://substackcdn.com/image/fetch/$s_!FWcE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FWcE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp" width="707" height="162" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:162,&quot;width&quot;:707,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;It's alive!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="It's alive!" title="It's alive!" srcset="https://substackcdn.com/image/fetch/$s_!FWcE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 424w, https://substackcdn.com/image/fetch/$s_!FWcE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 848w, https://substackcdn.com/image/fetch/$s_!FWcE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 1272w, https://substackcdn.com/image/fetch/$s_!FWcE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38710b9c-73c6-47d2-a26e-21469dab4848_707x162.webp 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><em>It&#8217;s alive!</em></figcaption></figure></div><h1>Failure #3: Dodgy keyboard (A&#8211;G not working; maybe other keys failing as well)</h1><p><strong>Symptom:</strong><br>Several keys on the touch keyboard - specifically A through G - did not register correctly. Other keys behave strangely. The ESP32 Rainbow keyboard uses analogue multiplexers connected to the ESP32 module.</p><h2>Root Cause</h2><ul><li><p>Several pins along the bottom of one ESP32 module had <strong>poor solder joints</strong></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tLEw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tLEw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 424w, https://substackcdn.com/image/fetch/$s_!tLEw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 848w, https://substackcdn.com/image/fetch/$s_!tLEw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 1272w, https://substackcdn.com/image/fetch/$s_!tLEw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tLEw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp" width="1456" height="676" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:676,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Dodgy ESP32 Soldering&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Dodgy ESP32 Soldering" title="Dodgy ESP32 Soldering" srcset="https://substackcdn.com/image/fetch/$s_!tLEw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 424w, https://substackcdn.com/image/fetch/$s_!tLEw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 848w, https://substackcdn.com/image/fetch/$s_!tLEw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 1272w, https://substackcdn.com/image/fetch/$s_!tLEw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68b1ee96-d2d5-4338-9a9e-3ff1de3a197c_2145x996.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Dodgy ESP32 Soldering</em></figcaption></figure></div><h2>Fix</h2><p>A straightforward rework:</p><ul><li><p>Retouch all the pins with fresh solder</p></li></ul><p>After this, everything works fine - all keys work and the board is fully functional. We can ship this out to a paying customer.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7oAN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7oAN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 424w, https://substackcdn.com/image/fetch/$s_!7oAN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 848w, https://substackcdn.com/image/fetch/$s_!7oAN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 1272w, https://substackcdn.com/image/fetch/$s_!7oAN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7oAN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp" width="1393" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1393,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Keyboard Working&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Keyboard Working" title="Keyboard Working" srcset="https://substackcdn.com/image/fetch/$s_!7oAN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 424w, https://substackcdn.com/image/fetch/$s_!7oAN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 848w, https://substackcdn.com/image/fetch/$s_!7oAN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 1272w, https://substackcdn.com/image/fetch/$s_!7oAN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe38d3f8c-5dcd-4e78-b98a-403c41a09129_1393x969.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Keyboard Working</em></figcaption></figure></div><h1>Watch the full debugging process</h1><p>If you want to see the full diagnosis and repair process - including microscope work, probing, and rework - the full video is here:</p><div id="youtube2-a6UyjNRPPLw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;a6UyjNRPPLw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/a6UyjNRPPLw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[That was 2025!]]></title><description><![CDATA[Another year, another collection of projects, mishaps, and late-night debugging sessions.]]></description><link>https://atomic14.substack.com/p/that-was-2025</link><guid isPermaLink="false">https://atomic14.substack.com/p/that-was-2025</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Wed, 31 Dec 2025 03:40:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!u8Oj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Another year, another collection of projects, mishaps, and late-night debugging sessions. But 2025 wasn&#8217;t just another year of tinkering - it was the year I shipped a real hardware product to paying customers around the world.</p><p><a href="https://www.atomic14.com/2025/12/31/and-that-was-2025">You can also read this post on the blog.</a></p><h1>The Big One: ESP32 Rainbow Goes Live</h1><p>If you&#8217;d asked me in early 2024 what my biggest achievement would be in 2025, &#8220;successfully completing a crowdfunding campaign&#8221; wouldn&#8217;t have been on the list. But here we are.</p><h2>What is the ESP32 Rainbow?</h2><p>It&#8217;s a recreation of the iconic Sinclair Spectrum, but with modern internals: an ESP32-S3 brain, full-color UV silk screen printing, capacitive touch keys, and a built-in display and speaker.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u8Oj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u8Oj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 424w, https://substackcdn.com/image/fetch/$s_!u8Oj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 848w, https://substackcdn.com/image/fetch/$s_!u8Oj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 1272w, https://substackcdn.com/image/fetch/$s_!u8Oj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u8Oj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;ESP32 Rainbow&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ESP32 Rainbow" title="ESP32 Rainbow" srcset="https://substackcdn.com/image/fetch/$s_!u8Oj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 424w, https://substackcdn.com/image/fetch/$s_!u8Oj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 848w, https://substackcdn.com/image/fetch/$s_!u8Oj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 1272w, https://substackcdn.com/image/fetch/$s_!u8Oj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fbe45db-3212-49a7-84b3-f20ffe2638ac_1456x819.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><a href="https://www.atomic14.com/2025/07/21/crowd-funding-retro">ESP32 Rainbow</a></em></figcaption></figure></div><h2>The Journey: 13 Months from Idea to Shipping</h2><ul><li><p><strong>June 2024</strong>: The idea sparked - what if we could do full-color silk screen on a PCB?</p></li><li><p><strong>November 2024</strong>: Campaign launched on <a href="https://www.crowdsupply.com/atomic14/esp32-rainbow">Crowd Supply</a></p></li><li><p><strong>December 2024</strong>: Hit 146% funding - 118 backers plus a crucial 118-unit house order</p></li><li><p><strong>January 2025</strong>: Funds received, production started</p></li><li><p><strong>July 2025</strong>: All orders shipped to backers worldwide</p></li><li><p><strong>Novemebr 2025</strong>: Follow-up order deliverd to Mouser deliverd (100 additional units)</p></li><li><p><strong>December 2025</strong>: Additional follow-up order sent to production (40 additional units)</p></li></ul><h2>The Numbers</h2><p>Let&#8217;s pull back the curtain on what a &#8220;successful&#8221; crowdfunding campaign actually looks like:</p><ul><li><p><strong>Total Revenue</strong>: &#163;12,839.57</p></li><li><p><strong>Cost of Goods Sold</strong>: &#163;8,565.66 (for 280 sellable units)</p></li><li><p><strong>Gross Profit</strong>: &#163;4,273.91</p></li><li><p><strong>Labor Hours</strong>: 436 hours (that&#8217;s 54 eight-hour days)</p></li><li><p><strong>True Profit After Labor</strong>: -&#163;1,049.65 (or +&#163;1,000.35 if remaining stock sells)</p></li></ul><p>Not exactly retirement money, but that was never the point.</p><h2>The Real Challenges</h2><p><strong>Pricing</strong>: Wanted to charge &#163;49.99 (very Clive Sinclair), but the economics forced &#163;99. Bottom-up pricing (&#163;30.60 COGS + margin) met top-down pricing (what people would pay) somewhere in the middle.</p><p><strong>Certification</strong>: &#163;506.05 for CE/UKCA certification. Turns out selling to consumers requires actual compliance, even if you&#8217;re using a pre-certified module. Thanks to <a href="https://early.smander.com/simple-start/">Smander&#8217;s Simple Start service</a> for making this painless.</p><p><strong>Tariffs</strong>: The specter of Trump&#8217;s tariff talk loomed large. Shipping everything to the US as DDP (Delivered Duty Paid) meant <em>I</em> paid import duties. Fortunately, I could argue UK Country of Origin, but that was pure luck.</p><p><strong>International Shipping</strong>: A month-long odyssey of mysterious tracking pages, support tickets, and boxes that wouldn&#8217;t move. If you&#8217;re shipping from the UK, get yourself an EORI number before you start.</p><p><strong>What did I learn?</strong></p><p>This project taught me:</p><ul><li><p>Crowd funded hardware prices aren&#8217;t a rip-off - there are real costs behind every product</p></li><li><p>Building an audience before launch is crucial (thanks YouTube/blog/newsletter)</p></li><li><p>AI tooling made the impossible possible (emscripten? no way without AI help)</p></li><li><p>Open source builds community - people love your terrible code</p></li><li><p>Working with a distributor (Crowd Supply/Mouser) handles complexity but eats margin</p></li></ul><p>Would I do it again? Maybe. With a very compelling idea and a large customer base. But for now, the ESP32 Rainbow is real, it&#8217;s shipping, and there&#8217;s a community forming around it. That&#8217;s the achievement.</p><ul><li><p>&#128250; <a href="https://www.youtube.com/watch?v=HgIxnpIiDv8">Watch the full crowdfunding retrospective video</a></p></li><li><p>&#128221; <a href="https://www.atomic14.com/2025/07/21/crowd-funding-retro">Read the detailed crowdfunding breakdown</a></p></li></ul><div id="youtube2-HgIxnpIiDv8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;HgIxnpIiDv8&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/HgIxnpIiDv8?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h1>Other 2025 Highlights</h1><p>While the ESP32 Rainbow dominated the year, there were plenty of other projects worth mentioning:</p><h2>&#128268; High Voltage Adventures</h2><p>What started with <a href="https://www.atomic14.com/2025/03/16/whats-wrong-with-my-lightbulbs">failed LED lightbulbs</a> turned into a series of high-voltage experiments. Salvaged LED filaments, 800V DC-DC converters with spectacular failures, and eventually a <a href="https://www.atomic14.com/2025/06/14/more-high-voltage">$2 board generating 787V</a>. The pinnacle was a <a href="https://www.atomic14.com/2025/09/26/high-voltage-coine-cell">27V Joule thief running from a CR2025 coin cell</a>, eventually becoming a <a href="https://www.atomic14.com/2025/11/07/27v-pcb">drop-in replacement for broken Bistable Choldesteric writing tablet</a>.</p><div id="youtube2-APdd-vGW-Jg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;APdd-vGW-Jg&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/APdd-vGW-Jg?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h2>&#127925; The 10&#162; Microcontroller Series</h2><p>The CH32V003 RISC-V chip costs ten cents. <strong>Ten. Cents.</strong> With 16K flash and 2K RAM, it shouldn&#8217;t be capable of much. But it turns out you can:</p><ul><li><p><a href="https://www.atomic14.com/2025/10/18/CH32V003-music">Play polyphonic music on a piezo buzzer</a> powered by a coin cell</p></li><li><p><a href="https://www.atomic14.com/2025/10/24/brain-surgery">Perform brain surgery on Halloween toys</a> to make them scream</p></li><li><p><a href="https://www.atomic14.com/2025/10/29/CH32V003-talking">Synthesize speech using 2-bit ADPCM and LPC</a></p></li></ul><div id="youtube2-RZvX95aXSdM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RZvX95aXSdM&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RZvX95aXSdM?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>All running on deep sleep drawing just 7&#181;A between beeps. The future is ridiculously cheap.</p><h2>&#128027; Escaping Printf Hell</h2><p>After years of <code>Serial.println("Here 1")</code> and blinking LEDs, I finally embraced proper debugging. The ESP32-S3&#8217;s built-in USB/JTAG support means you can set breakpoints, inspect variables, and use conditional debugging right in the Arduino IDE. The <a href="https://www.atomic14.com/2025/12/18/the-six-stages-of-debugging">Six Stages of Debugging</a> post captures the journey from &#8220;That can&#8217;t happen&#8221; to &#8220;How did this ever work?&#8221;</p><div id="youtube2-zyxAkQznIVM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;zyxAkQznIVM&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/zyxAkQznIVM?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Bonus discovery: <a href="https://www.atomic14.com/2025/08/12/this-number-does-nothing">That serial baud rate number does nothing</a> on ESP32-S3 with native USB. It&#8217;s actually running at 7MB/s, not 115200.</p><div id="youtube2-vTLCWy7jDfM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;vTLCWy7jDfM&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/vTLCWy7jDfM?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h2>&#128736;&#65039; Repairs, Teardowns, and Bodge Wires</h2><ul><li><p><strong><a href="https://www.atomic14.com/2025/08/01/oops-i-did-it-again">Oops I Did It Again</a></strong>: Mixed up common anode vs cathode LEDs, requiring creative <a href="https://www.atomic14.com/2025/08/07/nicer-repair">bodge wire repairs</a></p></li><li><p><strong><a href="https://www.atomic14.com/2025/09/14/red-arcade-thin-fixes">Red Arcade Thing</a></strong>: Diagnosed and fixed a dodgy AliExpress handheld with a failed voltage regulator</p></li><li><p><strong><a href="https://www.atomic14.com/2025/08/27/bistable-cholesteric-display">Bistable Cholesteric Display</a></strong>: Teardown of an LCD writing tablet, discovering it needs 27V to clear</p></li></ul><div id="youtube2-lc25sFKWhxE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;lc25sFKWhxE&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/lc25sFKWhxE?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h2>&#129302; AI-Assisted Hardware Development</h2><p>Two experiments with AI generating hardware:</p><ul><li><p><strong><a href="https://www.atomic14.com/2025/07/04/just-vibe-it">Vibe-coded one-button keyboard</a></strong>: ESP32-S3 mechanical keyboard with AI-assisted firmware</p></li><li><p><strong><a href="https://www.atomic14.com/2025/07/12/vibing-hardware">Atopile-generated dev board</a></strong>: Claude AI selected components and generated schematics</p></li></ul><div id="youtube2-SV0bM1FkdLY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;SV0bM1FkdLY&quot;,&quot;startTime&quot;:&quot;1s&quot;,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/SV0bM1FkdLY?start=1s&amp;rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Surprisingly not terrible.</p><h2>&#127760; Web Serial Plotter</h2><p>Forget the Arduino Serial Plotter - <a href="https://www.atomic14.com/2025/09/03/web-serial-plotter">this browser-based version</a> offers real-time graphing, zoom, export, and a signal generator. No installation required.</p><div id="youtube2-MEQCPBF99FQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;MEQCPBF99FQ&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/MEQCPBF99FQ?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h1>2025 By The Numbers</h1><ul><li><p><strong>26 blog posts</strong> (plus this one)</p></li><li><p><strong>32 YouTube videos</strong></p></li><li><p><strong>Busiest months</strong>: August, September, October</p></li><li><p><strong>Top topics</strong>: ESP32/ESP32-S3 (14), High Voltage (6), CH32V003 (4), Repairs (6), PCB Design (5)</p></li><li><p><strong>1 successful crowdfunding campaign</strong> &#9989;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!J8nC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J8nC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 424w, https://substackcdn.com/image/fetch/$s_!J8nC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 848w, https://substackcdn.com/image/fetch/$s_!J8nC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 1272w, https://substackcdn.com/image/fetch/$s_!J8nC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J8nC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp" width="1287" height="942" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:942,&quot;width&quot;:1287,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A lot of videos!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A lot of videos!" title="A lot of videos!" srcset="https://substackcdn.com/image/fetch/$s_!J8nC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 424w, https://substackcdn.com/image/fetch/$s_!J8nC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 848w, https://substackcdn.com/image/fetch/$s_!J8nC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 1272w, https://substackcdn.com/image/fetch/$s_!J8nC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c144eed-4e55-4ce9-80ec-4860360c2046_1287x942.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><a href="https://www.youtube.com/@atomic14">A lot of videos!</a></em></figcaption></figure></div><h1>Looking Forward to 2026</h1><p>2025 proved that one person can still build real hardware products and ship them worldwide. The economics are brutal, the challenges are real, but the satisfaction of seeing your creation in the wild makes it worthwhile.</p><p>For 2026? More ESP32 experiments, more ridiculous high-voltage projects, and probably more bodge wires than I&#8217;d like to admit. The ESP32 Rainbow continues to be available on <a href="https://www.crowdsupply.com/atomic14/esp32-rainbow">Crowd Supply</a> - I&#8217;ve had to do two follow up production runs - so keep on ordering!</p><p>But the biggest lesson from 2025 wasn&#8217;t about hardware or firmware or certification. It was this: <strong>build things that bring joy, share your process (even the failures), and don&#8217;t be afraid to show your terrible code</strong>. The community that forms around that honesty is worth more than any profit margin.</p><p>Here&#8217;s to 2026. Let&#8217;s see what catches fire next.</p>]]></content:encoded></item><item><title><![CDATA[Stop Using printf() - Debug ESP32 the Right Way]]></title><description><![CDATA[Printf and GPIO pin waggling - you might think that's the only option for debugging your ESP32 projects...]]></description><link>https://atomic14.substack.com/p/stop-using-printf-debug-esp32-the</link><guid isPermaLink="false">https://atomic14.substack.com/p/stop-using-printf-debug-esp32-the</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Thu, 18 Dec 2025 15:44:40 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/zyxAkQznIVM" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>You can watch the video here:</p><div id="youtube2-zyxAkQznIVM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;zyxAkQznIVM&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/zyxAkQznIVM?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>And read the short blog post <a href="https://www.atomic14.com/2025/11/13/the-six-stages-of-debugging">here</a>.</p>]]></content:encoded></item><item><title><![CDATA[ESP32-S3 Dev Board Assembly]]></title><description><![CDATA[And it blinks...]]></description><link>https://atomic14.substack.com/p/esp32-s3-dev-board-assembly</link><guid isPermaLink="false">https://atomic14.substack.com/p/esp32-s3-dev-board-assembly</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Thu, 13 Nov 2025 10:54:31 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/KziOUBjNtWw" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I finally got some time to assemble the ESP32-S3 dev boards we designed in this <a href="https://www.atomic14.com/2025/09/20/esp32-dev-board">post</a>.</p><div id="youtube2-KziOUBjNtWw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;KziOUBjNtWw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/KziOUBjNtWw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>You can read the full post <a href="https://www.atomic14.com/2025/11/13/dev-board-assemble">here</a>. Or just watch the video above ^^.</p>]]></content:encoded></item><item><title><![CDATA[I Built a 27V PCB to Fix This $3 Display...]]></title><description><![CDATA[Was it really worth it?]]></description><link>https://atomic14.substack.com/p/i-built-a-27v-pcb-to-fix-this-3-display</link><guid isPermaLink="false">https://atomic14.substack.com/p/i-built-a-27v-pcb-to-fix-this-3-display</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 07 Nov 2025 16:46:18 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/APdd-vGW-Jg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-APdd-vGW-Jg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;APdd-vGW-Jg&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/APdd-vGW-Jg?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>You can read the full details here: https://www.atomic14.com/2025/11/07/27v-pcb</p>]]></content:encoded></item><item><title><![CDATA[I made a 10¢ MCU Talk ]]></title><description><![CDATA[TLDR: Yes, you can fit about 7 seconds of audio into 16K of flash and still have room for code. And you can even play LPC encoded audio on a 10&#162; MCU.]]></description><link>https://atomic14.substack.com/p/i-made-a-10-mcu-talk</link><guid isPermaLink="false">https://atomic14.substack.com/p/i-made-a-10-mcu-talk</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Wed, 29 Oct 2025 14:12:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/RZvX95aXSdM" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-RZvX95aXSdM" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RZvX95aXSdM&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RZvX95aXSdM?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Full details on cramming audio data in to 16KB of flash and recreating the Speak and Spell experience <a href="https://www.atomic14.com/2025/10/29/CH32V003-talking">here</a>.</p>]]></content:encoded></item><item><title><![CDATA[Brain Surgery]]></title><description><![CDATA[I got one of these silly Halloween toys - they are kind of fun - but it feels like we can make them even more fun/annoying...]]></description><link>https://atomic14.substack.com/p/brain-surgery</link><guid isPermaLink="false">https://atomic14.substack.com/p/brain-surgery</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 24 Oct 2025 13:53:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/ytSEEcafPu4" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-ytSEEcafPu4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;ytSEEcafPu4&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/ytSEEcafPu4?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>You can view the full post with schematics <a href="https://www.atomic14.com/2025/10/24/brain-surgery">here</a>.</p>]]></content:encoded></item><item><title><![CDATA[10 Cent Music Machine]]></title><description><![CDATA[These super cheap MCUs have been around for a while - let's see if we can get some tunes out of the cheapest one!]]></description><link>https://atomic14.substack.com/p/10-cent-music-machine</link><guid isPermaLink="false">https://atomic14.substack.com/p/10-cent-music-machine</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 17 Oct 2025 13:10:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/RiiS4jjG6ME" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-RiiS4jjG6ME" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RiiS4jjG6ME&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RiiS4jjG6ME?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>We&#8217;re going to take a slightly different approach to the newsletter posts - generally the write up ends up being quite long, so we&#8217;re going to move the meat of the content over to the blog.</p><p>So, you can read all the details of this project here: <a href="https://www.atomic14.com/2025/10/12/CH32V003-music">https://www.atomic14.com/2025/10/12/CH32V003-music</a></p>]]></content:encoded></item><item><title><![CDATA[PDM Microphone Mystery]]></title><description><![CDATA[There's no LR pin in the code - what are we supposed to do with it?]]></description><link>https://atomic14.substack.com/p/pdm-microphone-mystery</link><guid isPermaLink="false">https://atomic14.substack.com/p/pdm-microphone-mystery</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 10 Oct 2025 10:26:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/gl7wBMRMbdA" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-gl7wBMRMbdA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;gl7wBMRMbdA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/gl7wBMRMbdA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>In the last post we were testing out the audio on my new board. There something in the code that piqued my interest.</p><p>We&#8217;re using a standard I2S PDM microphone - which has the normal pins you&#8217;d expect for I2S.</p><p>Here&#8217;s my schematic:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Z0os!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Z0os!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Z0os!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Z0os!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Z0os!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Z0os!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg" width="1837" height="843" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:843,&quot;width&quot;:1837,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:93712,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F29cc253d-b22d-425f-86a0-fd33cd69cdee_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Z0os!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Z0os!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Z0os!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Z0os!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d80288d-86cd-4646-b03f-46dcadf2f4f3_1837x843.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Schematic</figcaption></figure></div><p>And here&#8217;s the datasheet to confirm I haven&#8217;t made a silly error:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hDcq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hDcq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hDcq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hDcq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hDcq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hDcq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg" width="1270" height="1091" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1091,&quot;width&quot;:1270,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:168894,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f1139a3-0242-47c8-aa69-f872731105ab_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hDcq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hDcq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hDcq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hDcq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe54bdb24-5d8f-4145-b66c-93045cc7de97_1270x1091.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The data sheet</figcaption></figure></div><p>You&#8217;re probably thinking - yes yes, all very interesting, that&#8217;s the standard pins for I2S - CLK, Data, L/R and power.</p><p>Well, what confused me was the I2S code in the latest ESP-IDF version.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vosx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vosx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 424w, https://substackcdn.com/image/fetch/$s_!vosx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 848w, https://substackcdn.com/image/fetch/$s_!vosx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 1272w, https://substackcdn.com/image/fetch/$s_!vosx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vosx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png" width="1071" height="493" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:493,&quot;width&quot;:1071,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:119980,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vosx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 424w, https://substackcdn.com/image/fetch/$s_!vosx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 848w, https://substackcdn.com/image/fetch/$s_!vosx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 1272w, https://substackcdn.com/image/fetch/$s_!vosx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F744950a9-6ca6-41f6-97bf-b0c8778ab258_1071x493.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">What about the LR pin?</figcaption></figure></div><p>There is no way to specify the <strong>LR</strong> pin! The <strong>gpio_cfg</strong> structure for PDM microphones doesn&#8217;t have an entry for it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dXir!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dXir!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 424w, https://substackcdn.com/image/fetch/$s_!dXir!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 848w, https://substackcdn.com/image/fetch/$s_!dXir!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 1272w, https://substackcdn.com/image/fetch/$s_!dXir!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dXir!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png" width="944" height="359" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:359,&quot;width&quot;:944,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:67447,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dXir!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 424w, https://substackcdn.com/image/fetch/$s_!dXir!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 848w, https://substackcdn.com/image/fetch/$s_!dXir!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 1272w, https://substackcdn.com/image/fetch/$s_!dXir!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46a29f5d-e56a-4ee3-9900-bc44877c10e6_944x359.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">It&#8217;s not here!</figcaption></figure></div><p>For PCM microphones the <strong>LR</strong> clock is pretty important - particularly if you want to have a stereo signal.</p><p>Looking back at one of my ancient YouTube videos you can see the waveforms:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ytuR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ytuR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ytuR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ytuR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ytuR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ytuR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg" width="2368" height="745" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:745,&quot;width&quot;:2368,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141804,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6d2ab4d-27f6-4920-bfc5-8d971ada6ec9_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ytuR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ytuR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ytuR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ytuR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc847cf9-c277-4e81-8c77-a4b76be7a6d0_2368x745.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">PCM Signals</figcaption></figure></div><p>And if we look at the structure used to initialise I2S for PCM the pin is definitely there.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tbLx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tbLx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 424w, https://substackcdn.com/image/fetch/$s_!tbLx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 848w, https://substackcdn.com/image/fetch/$s_!tbLx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 1272w, https://substackcdn.com/image/fetch/$s_!tbLx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tbLx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png" width="1448" height="409" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:409,&quot;width&quot;:1448,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:110291,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tbLx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 424w, https://substackcdn.com/image/fetch/$s_!tbLx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 848w, https://substackcdn.com/image/fetch/$s_!tbLx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 1272w, https://substackcdn.com/image/fetch/$s_!tbLx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eeead36-47fa-42a4-8eb7-280c3de663cc_1448x409.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">There&#8217;s an LR pin here!</figcaption></figure></div><p>So, what&#8217;s going on with PDM microphones? What are we supposed to do with the LR pin?</p><p>A quick question to the <a href="https://esp32.com/viewtopic.php?t=46770">ESP32 forums</a> set me straight with a very friendly - look again at the data sheet for your microphone.</p><p>And looking a bit more closely we find these example IO timing diagrams:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oMtN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oMtN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oMtN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oMtN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oMtN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oMtN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg" width="1254" height="815" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:815,&quot;width&quot;:1254,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:97202,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd7d7a0f-188f-4a37-9f49-a27a20aea287_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oMtN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oMtN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oMtN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oMtN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14d14322-9194-480f-a2c2-ed984d1f62c1_1254x815.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Look at the data sheet properly&#8230;</figcaption></figure></div><p>If the LR pin is held high - the data is valid for the high to low transition of the clock and then the data pin goes high impedance.</p><p>If the LR pin is held low - the data is valid for the low to high transition of the clock and then the data pin goes low impedance.</p><p>This means that if you want to have two microphones (for stereo recording) you just need to tie one high and one low - and they will happily coexist on the same data line.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HGzG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HGzG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HGzG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HGzG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HGzG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HGzG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg" width="1894" height="1229" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1229,&quot;width&quot;:1894,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:99438,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff334572d-14ff-45d5-912f-30205721e078_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HGzG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HGzG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HGzG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HGzG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9767afc2-7853-4b1d-b679-253bce76063c_1894x1229.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Stereo PDM microphones</figcaption></figure></div><p>I&#8217;d recently purchased some fancy probes, so I decided to check this out.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XRx7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XRx7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XRx7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XRx7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XRx7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XRx7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:573274,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XRx7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XRx7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XRx7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XRx7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F839aee3e-e47f-40fe-b888-439d5a4dee3d_2560x1440.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Nice probes!</figcaption></figure></div><p>These are really nice - they have a pogo needle on the end so you can get into very small places on the PCB. They are also hands free. Pretty cool - you can pick up you own set <a href="https://amzn.to/46vHdFq">here (affiliate link!)</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VpVz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VpVz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VpVz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VpVz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VpVz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VpVz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg" width="2885" height="1509" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1509,&quot;width&quot;:2885,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:472971,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7565a77b-e504-461c-9e21-1741c12f295e_5120x3840.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VpVz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VpVz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VpVz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VpVz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce258705-1f6d-4a89-9eec-d86fb91a44fe_2885x1509.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Needle point</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hxNF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hxNF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hxNF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hxNF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hxNF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hxNF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg" width="2793" height="2122" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2122,&quot;width&quot;:2793,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1031950,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e72925-57d1-42c5-9f5d-50887154517d_5120x3840.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hxNF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hxNF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hxNF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hxNF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5a09736-70d2-4abc-a824-f0e8ab7f3d0a_2793x2122.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Probing the PCB</figcaption></figure></div><p>I monkeyed around with the code a bit and changed the data pin so that it had a pull down resistor and made it so I could toggle the LR pin between high and low.</p><p>Here&#8217;s what we see when the LR pin is held low:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!P6L1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!P6L1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 424w, https://substackcdn.com/image/fetch/$s_!P6L1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 848w, https://substackcdn.com/image/fetch/$s_!P6L1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!P6L1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!P6L1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg" width="1544" height="996" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:996,&quot;width&quot;:1544,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:299106,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bcdacfe-d85d-47cd-8019-7305fa258aed_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!P6L1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 424w, https://substackcdn.com/image/fetch/$s_!P6L1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 848w, https://substackcdn.com/image/fetch/$s_!P6L1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!P6L1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F79a90002-9168-4942-901e-a153d949f0b2_1544x996.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">LR = GND</figcaption></figure></div><p>And here&#8217;s what we see when the LR pin is held high:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AJ-c!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AJ-c!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 424w, https://substackcdn.com/image/fetch/$s_!AJ-c!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 848w, https://substackcdn.com/image/fetch/$s_!AJ-c!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!AJ-c!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AJ-c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg" width="1538" height="984" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:984,&quot;width&quot;:1538,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:295944,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://atomic14.substack.com/i/175210234?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c7f5c7a-8413-4b97-beb7-25dda94a40b7_2560x1440.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AJ-c!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 424w, https://substackcdn.com/image/fetch/$s_!AJ-c!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 848w, https://substackcdn.com/image/fetch/$s_!AJ-c!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!AJ-c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f9801c9-6747-4494-8b15-a20807bb4151_1538x984.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">LR = VDD</figcaption></figure></div><p>Hopefully you can see the difference. With the LR pin low, the signal starts to decay when the clock is high, and with the LR pin high, the signal starts to decay when the clock is low.</p><p>We&#8217;ve only got the internal pull down resistor pulling it down so it doesn&#8217;t go to zero that quickly. If there was another microphone driving the pin then it would fall straight to zero if needed.</p><p>So, all in all pretty interesting. One thing that is quite useful is that we don&#8217;t need to connect the LR pin to a GPIO - we can save a pin in our next design!</p>]]></content:encoded></item><item><title><![CDATA[ESP32-S3 as a USB Audio Device]]></title><description><![CDATA[Testing the ESP32-S3 board as a USB audio device. The microphone performs brilliantly over USB, but the speaker is still crackly. Here&#8217;s what worked, what didn&#8217;t, and how I tested it.]]></description><link>https://atomic14.substack.com/p/esp32-s3-as-a-usb-audio-device</link><guid isPermaLink="false">https://atomic14.substack.com/p/esp32-s3-as-a-usb-audio-device</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 03 Oct 2025 16:15:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/LhZ9pWwnn6s" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>That&#8217;s right, folks &#8211; it&#8217;s time for an <strong>audio project</strong>.</p><div id="youtube2-LhZ9pWwnn6s" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;LhZ9pWwnn6s&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/LhZ9pWwnn6s?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>I&#8217;ve been testing out my new boards - so far everything is going well.</p><h2>First Tests &#8211; LEDs, Sensors, and Battery Charging</h2><p>So far, so good:</p><ul><li><p>The <strong>RGB LED</strong> <a href="https://youtu.be/tjyXjcwjyMo">needed a small </a><em><a href="https://youtu.be/tjyXjcwjyMo">ninja fix</a></em>. I put in a common cathode LED when it should have been common anode (or was it the other way round? Either way&#8230; fixed!).</p></li><li><p>The <strong>accelerometer and gyroscope</strong> worked nicely, letting me build a <a href="https://youtu.be/6vpdAXEQaoQ">digital twin</a> of the board.</p></li><li><p>The <strong>battery charger</strong> worked perfectly &#8211; no wires required while moving the board around for testing.</p></li></ul><p>With that out of the way, it was time for the fun part: <strong>microphone and speaker tests</strong>.</p><h2>Testing the Microphone</h2><p>The board has:</p><ul><li><p>An <strong>I&#178;S PDM microphone</strong></p></li><li><p>An <strong>I&#178;S PCM amplifier</strong></p></li><li><p>A <strong>tiny speaker</strong></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GL2j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GL2j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 424w, https://substackcdn.com/image/fetch/$s_!GL2j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 848w, https://substackcdn.com/image/fetch/$s_!GL2j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 1272w, https://substackcdn.com/image/fetch/$s_!GL2j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GL2j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp" width="849" height="873" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:873,&quot;width&quot;:849,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Board with microphone and speaker&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Board with microphone and speaker" title="Board with microphone and speaker" srcset="https://substackcdn.com/image/fetch/$s_!GL2j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 424w, https://substackcdn.com/image/fetch/$s_!GL2j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 848w, https://substackcdn.com/image/fetch/$s_!GL2j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 1272w, https://substackcdn.com/image/fetch/$s_!GL2j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e08cd0d-82ea-47c1-87bf-7481a5ed684c_849x873.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Board with microphone and speaker</em></figcaption></figure></div><p>My first thought: make it into a <strong>Bluetooth audio device</strong>. Unfortunately, the ESP32-S3 only supports Bluetooth Low Energy, not Bluetooth Classic &#8211; and BLE doesn&#8217;t do audio streaming.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-RN0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-RN0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 424w, https://substackcdn.com/image/fetch/$s_!-RN0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 848w, https://substackcdn.com/image/fetch/$s_!-RN0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 1272w, https://substackcdn.com/image/fetch/$s_!-RN0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-RN0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp" width="1293" height="1037" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1037,&quot;width&quot;:1293,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;BLE Only&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="BLE Only" title="BLE Only" srcset="https://substackcdn.com/image/fetch/$s_!-RN0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 424w, https://substackcdn.com/image/fetch/$s_!-RN0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 848w, https://substackcdn.com/image/fetch/$s_!-RN0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 1272w, https://substackcdn.com/image/fetch/$s_!-RN0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F03637cbe-c1df-49c6-99ee-8a23a323c940_1293x1037.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>BLE Only</em></figcaption></figure></div><p>So instead, I pushed audio over <strong>USB serial</strong>. Turns out you can send a <em>lot</em> of data that way &#8211; around <a href="https://youtu.be/vTLCWy7jDfM">7 Mbps in previous tests</a>. For audio, I only needed ~32.2 KB/s (16 kHz, 16-bit samples).</p><p>And it worked beautifully.</p><p>I even had AI generate a little <strong>Web Serial Audio Studio</strong> for me:</p><ul><li><p>Oscilloscope</p></li><li><p>Gain control</p></li><li><p>Spectrogram (looks pretty, not sure it&#8217;s correct&#8230;)</p></li><li><p>A glorious <strong>1980s-style bar chart</strong></p></li><li><p>Pitch tuner</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NR-u!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NR-u!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!NR-u!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!NR-u!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!NR-u!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NR-u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Web Serial Audio Studio&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Web Serial Audio Studio" title="Web Serial Audio Studio" srcset="https://substackcdn.com/image/fetch/$s_!NR-u!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!NR-u!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!NR-u!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!NR-u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e45cd3-1194-4595-baab-df6f4a02bf39_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Web Serial Audio Studio</em></figcaption></figure></div><p>Hooking up a piano confirmed the pitch tuner was picking up notes correctly. Microphone test: &#9989;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l9Q6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l9Q6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 424w, https://substackcdn.com/image/fetch/$s_!l9Q6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 848w, https://substackcdn.com/image/fetch/$s_!l9Q6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 1272w, https://substackcdn.com/image/fetch/$s_!l9Q6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l9Q6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp" width="1456" height="488" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:488,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Pitch Detection&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Pitch Detection" title="Pitch Detection" srcset="https://substackcdn.com/image/fetch/$s_!l9Q6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 424w, https://substackcdn.com/image/fetch/$s_!l9Q6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 848w, https://substackcdn.com/image/fetch/$s_!l9Q6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 1272w, https://substackcdn.com/image/fetch/$s_!l9Q6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8dce2464-07c4-416d-9c62-7dc95e47ab56_2326x780.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Pitch Detection</em></figcaption></figure></div><h2>Moving to USB Audio (UAC)</h2><p>Sending audio over serial worked fine, but then I remembered &#8211; the <strong>ESP32-S3 has native USB</strong>.</p><p>So why not make it into a <strong>USB Audio Class (UAC) device</strong>, like a USB headset or speaker?</p><p>And yes, it turns out you <em><a href="https://docs.espressif.com/projects/esp-iot-solution/en/latest/usb/usb_device/usb_device_uac.html">can</a></em>.</p><p>The API gives you callbacks for:</p><ul><li><p>Output</p></li><li><p>Input</p></li><li><p>Mute</p></li><li><p>Volume</p></li></ul><p>The only catch: I couldn&#8217;t get the Arduino libraries to work. I had to switch over to <strong>ESP-IDF</strong>.</p><p>Thankfully, the <a href="https://github.com/espressif/vscode-esp-idf-extension">ESP-IDF VS Code plugin</a> makes that a lot easier with its explorer, build, and flash tools.</p><h2>Limitations: Mac vs Windows</h2><p>One big drawback:</p><ul><li><p>Tick &#8220;Support macOS&#8221; &#8594; Works on Mac, but not Windows.</p></li><li><p>Untick it &#8594; Works on Windows, but not Mac.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SG7v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SG7v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!SG7v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!SG7v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!SG7v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SG7v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Mac or Windows - take your pick!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Mac or Windows - take your pick!" title="Mac or Windows - take your pick!" srcset="https://substackcdn.com/image/fetch/$s_!SG7v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!SG7v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!SG7v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!SG7v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3890317-9ec7-4b4b-a8c6-c6a447fd150d_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Mac or Windows - take your pick!</em></figcaption></figure></div><p>Pretty annoying, but let&#8217;s see how it performs anyway.</p><h2>Microphone Over USB</h2><p>Switching back to my audio studio, the ESP32-S3 appeared as a new <strong>USB UAC device</strong>.</p><p>Connected up, the audio streamed in just fine:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!s5Ev!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!s5Ev!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 424w, https://substackcdn.com/image/fetch/$s_!s5Ev!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 848w, https://substackcdn.com/image/fetch/$s_!s5Ev!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 1272w, https://substackcdn.com/image/fetch/$s_!s5Ev!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!s5Ev!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp" width="784" height="362" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:362,&quot;width&quot;:784,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;USB UAC Microphone!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="USB UAC Microphone!" title="USB UAC Microphone!" srcset="https://substackcdn.com/image/fetch/$s_!s5Ev!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 424w, https://substackcdn.com/image/fetch/$s_!s5Ev!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 848w, https://substackcdn.com/image/fetch/$s_!s5Ev!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 1272w, https://substackcdn.com/image/fetch/$s_!s5Ev!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a397d03-5ff8-4863-bc89-196d059bdb8f_784x362.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>USB UAC Microphone!</em></figcaption></figure></div><p>I recorded a test, pulled it into <strong>Audacity</strong>, and amplified it a bit (these microphones are sensitive, so raw audio often looks quiet).</p><p>Result: very clean! &#127908;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jknI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jknI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!jknI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!jknI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!jknI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jknI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;USB UAC Audio&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="USB UAC Audio" title="USB UAC Audio" srcset="https://substackcdn.com/image/fetch/$s_!jknI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!jknI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!jknI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!jknI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06d09950-7f02-4c55-b2ee-03f370a58842_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>USB UAC Audio</em></figcaption></figure></div><h2>Speaker Over USB</h2><p>The speaker was a different story.</p><p>At first, it worked &#8211; but the sound was very <strong>crackly</strong> when streaming via USB UAC. After a lot of head scratching, I still couldn&#8217;t fix it.</p><p>So I went back to basics: playing a WAV file directly from SPIFFS over I&#178;S.</p><p>That sounded <strong>perfectly clean</strong>:</p><p>So clearly the hardware is fine &#8211; it&#8217;s the USB UAC speaker code that&#8217;s the problem. Microphone = great. Speaker = not quite there yet.</p><h2>Final Verdict</h2><p>So where are we?</p><ul><li><p>&#9989; LED fixed</p></li><li><p>&#9989; Sensors working</p></li><li><p>&#9989; Battery charging fine</p></li><li><p>&#9989; Microphone excellent (both serial + USB)</p></li><li><p>&#9888;&#65039; Speaker fine via I&#178;S, but problematic via USB UAC</p></li></ul><p>That&#8217;s good enough for me &#8211; this board has <strong>passed quality assurance</strong>.</p><p>There&#8217;s a full video here where you can listen to the audio: <a href="https://youtube.com/your-video-url">YouTube Link</a></p>]]></content:encoded></item><item><title><![CDATA[High Voltage Coin Cell]]></title><description><![CDATA[27 volts from a 3 volt coin cell? Are we breaking the laws of phyics?]]></description><link>https://atomic14.substack.com/p/high-voltage-coin-cell</link><guid isPermaLink="false">https://atomic14.substack.com/p/high-voltage-coin-cell</guid><dc:creator><![CDATA[Chris Greening]]></dc:creator><pubDate>Fri, 26 Sep 2025 19:27:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/sGmvbPi93Ys" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div id="youtube2-sGmvbPi93Ys" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;sGmvbPi93Ys&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/sGmvbPi93Ys?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>A while back, we tore down one of those fun bistable LCD displays&#8212;it was pretty interesting, but unfortunately, while experimenting, I blew up the PCB.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u80H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u80H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 424w, https://substackcdn.com/image/fetch/$s_!u80H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 848w, https://substackcdn.com/image/fetch/$s_!u80H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 1272w, https://substackcdn.com/image/fetch/$s_!u80H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u80H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp" width="1456" height="370" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:370,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;This PCB is dead&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="This PCB is dead" title="This PCB is dead" srcset="https://substackcdn.com/image/fetch/$s_!u80H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 424w, https://substackcdn.com/image/fetch/$s_!u80H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 848w, https://substackcdn.com/image/fetch/$s_!u80H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 1272w, https://substackcdn.com/image/fetch/$s_!u80H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F58107d16-720c-4d58-bed0-1540eaf11cec_4918x1249.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>This PCB is dead</em></figcaption></figure></div><p>The PCB generates around 27 volts from the coin cell. There&#8217;s a mystery IC used to achieve this.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!M250!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!M250!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 424w, https://substackcdn.com/image/fetch/$s_!M250!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 848w, https://substackcdn.com/image/fetch/$s_!M250!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 1272w, https://substackcdn.com/image/fetch/$s_!M250!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!M250!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp" width="1456" height="719" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:719,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;What&#8217;s the mystery IC?&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="What&#8217;s the mystery IC?" title="What&#8217;s the mystery IC?" srcset="https://substackcdn.com/image/fetch/$s_!M250!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 424w, https://substackcdn.com/image/fetch/$s_!M250!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 848w, https://substackcdn.com/image/fetch/$s_!M250!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 1272w, https://substackcdn.com/image/fetch/$s_!M250!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44d0519a-991b-4e2c-a8a5-1d5b8c4dcd60_1601x791.webp 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>What&#8217;s the mystery IC?</em></figcaption></figure></div><p>You can read all about it in this <a href="https://atomic14.substack.com/p/tearing-down-a-bistable-cholesteric">post</a>.</p><p>Since I broke it, I decided that I should try to fix it. I missed out on all the Joule thief excitement that seemed to be around on YouTube about 8 years ago, but I thought, why not give one a go - you can get quite high voltages out of them, and we don&#8217;t need much current to reset the display.</p><p>The actual Joule thief circuit is surprisingly simple&#8212;and there&#8217;s a great <a href="https://en.wikipedia.org/wiki/Joule_thief">Wikipedia page</a> that gives you a lot of details on how it works.</p><p>Here&#8217;s my initial circuit:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sUGv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sUGv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 424w, https://substackcdn.com/image/fetch/$s_!sUGv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 848w, https://substackcdn.com/image/fetch/$s_!sUGv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 1272w, https://substackcdn.com/image/fetch/$s_!sUGv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sUGv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp" width="1273" height="928" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:928,&quot;width&quot;:1273,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Simple Joule thief&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Simple Joule thief" title="Simple Joule thief" srcset="https://substackcdn.com/image/fetch/$s_!sUGv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 424w, https://substackcdn.com/image/fetch/$s_!sUGv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 848w, https://substackcdn.com/image/fetch/$s_!sUGv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 1272w, https://substackcdn.com/image/fetch/$s_!sUGv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48efdb3c-1ab3-474d-aaca-d20d5865e7ec_1273x928.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Simple Joule thief</em></figcaption></figure></div><p>I&#8217;m using quite a large base resistor of 10K - normally you&#8217;d use around 1K. I&#8217;ve also got a series resistor in line with the battery to limit how much current we draw.</p><p>Apart from that, it&#8217;s a pretty standard Joule thief circuit.</p><p>On the output side, we have a 27V Zener diode to cap the voltage, a small capacitor that gets charged up, and a 1M bleed resistor so the voltage goes down after power is removed.</p><p>For the coils, I used two 1mH inductors. I could have taken a choke and wound some wire around it, but I got good results just from using two inductors.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rhTY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rhTY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 424w, https://substackcdn.com/image/fetch/$s_!rhTY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 848w, https://substackcdn.com/image/fetch/$s_!rhTY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 1272w, https://substackcdn.com/image/fetch/$s_!rhTY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rhTY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp" width="1076" height="765" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:765,&quot;width&quot;:1076,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Breadboard Joule thief&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Breadboard Joule thief" title="Breadboard Joule thief" srcset="https://substackcdn.com/image/fetch/$s_!rhTY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 424w, https://substackcdn.com/image/fetch/$s_!rhTY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 848w, https://substackcdn.com/image/fetch/$s_!rhTY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 1272w, https://substackcdn.com/image/fetch/$s_!rhTY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70df8f23-5c90-40c1-9ed3-50a203c4d5a2_1076x765.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Breadboard Joule thief</em></figcaption></figure></div><p>The circuit works nicely&#8212;we get 27V out of it without any problems!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YFiJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YFiJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 424w, https://substackcdn.com/image/fetch/$s_!YFiJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 848w, https://substackcdn.com/image/fetch/$s_!YFiJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 1272w, https://substackcdn.com/image/fetch/$s_!YFiJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YFiJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp" width="1456" height="850" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:850,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;27 volts!&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="27 volts!" title="27 volts!" srcset="https://substackcdn.com/image/fetch/$s_!YFiJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 424w, https://substackcdn.com/image/fetch/$s_!YFiJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 848w, https://substackcdn.com/image/fetch/$s_!YFiJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 1272w, https://substackcdn.com/image/fetch/$s_!YFiJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8424200a-7bf5-499c-bc7b-dfa131c722a3_1718x1003.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>27 volts!</em></figcaption></figure></div><p>This is more than enough to clear the bistable display.</p><p>One thing I was interested in is how much current we are drawing from the coin cell, so I hooked up my Nordic power monitor and gave it a test.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WARX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WARX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!WARX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!WARX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!WARX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WARX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Joule thief current draw&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Joule thief current draw" title="Joule thief current draw" srcset="https://substackcdn.com/image/fetch/$s_!WARX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!WARX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!WARX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!WARX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8cc4fe74-a780-447c-b2bd-5a2422034fbf_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Joule thief current draw</em></figcaption></figure></div><p>When we hold the button down, we draw around 10mA&#8212;which is not too bad for a coin cell - provided you don&#8217;t draw that much current for too long.</p><p>In theory (according to ChatGPT) we should be able to get 40-50,000 button presses out of one coin cell&#8230;</p><p>You can go a bit further with the Joule thief and create a regulated version &#8212; you just need another transistor.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cJ10!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cJ10!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 424w, https://substackcdn.com/image/fetch/$s_!cJ10!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 848w, https://substackcdn.com/image/fetch/$s_!cJ10!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 1272w, https://substackcdn.com/image/fetch/$s_!cJ10!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cJ10!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp" width="1174" height="974" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:974,&quot;width&quot;:1174,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Regulated Joule thief&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Regulated Joule thief" title="Regulated Joule thief" srcset="https://substackcdn.com/image/fetch/$s_!cJ10!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 424w, https://substackcdn.com/image/fetch/$s_!cJ10!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 848w, https://substackcdn.com/image/fetch/$s_!cJ10!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 1272w, https://substackcdn.com/image/fetch/$s_!cJ10!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21fb3646-7607-4818-bdc1-1566cb0fad8a_1174x974.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Regulated Joule thief</em></figcaption></figure></div><p>This is a really efficient circuit&#8212;as soon as we hit 27V, we don&#8217;t need to provide power. This is perfect for our use case, where the output doesn&#8217;t really draw any current.</p><p>The power profile for this new circuit is really nice.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ONri!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ONri!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!ONri!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!ONri!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!ONri!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ONri!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Regulated Power Profile&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Regulated Power Profile" title="Regulated Power Profile" srcset="https://substackcdn.com/image/fetch/$s_!ONri!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 424w, https://substackcdn.com/image/fetch/$s_!ONri!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 848w, https://substackcdn.com/image/fetch/$s_!ONri!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 1272w, https://substackcdn.com/image/fetch/$s_!ONri!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bd7e729-53cd-4c58-bb31-dd5ac3e589fc_2560x1440.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Regulated Power Profile</em></figcaption></figure></div><p>We have the initial spike up to 10mA and then almost immediately drop down. The average current for this version is 1.53mA&#8212;that&#8217;s pretty impressive!</p><p>You can watch the full exploration in this video here:</p><div id="youtube2-sGmvbPi93Ys" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;sGmvbPi93Ys&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/sGmvbPi93Ys?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item></channel></rss>