<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>nocduro</title>
  <subtitle>Fibre networks, rust, electronics, film photography.</subtitle>
  <link href="https://nocduro.com/"/>
  <link rel="self" href="https://nocduro.com/feed.xml"/>
  <id>https://nocduro.com/</id>
  <updated>2026-05-01T00:00:00Z</updated>
  <entry>
    <title>First film roll</title>
    <link href="https://nocduro.com/post/first-film-roll/"/>
    <id>https://nocduro.com/post/first-film-roll/</id>
    <published>2026-05-01T00:00:00Z</published>
    <updated>2026-05-01T00:00:00Z</updated>
    <summary>My first time shooting with film</summary>
    <category term="film"/>
    <category term="photography"/>
    <content type="html" xml:base="https://nocduro.com/post/first-film-roll/">&lt;h2 id=&quot;the-setup&quot;&gt;The setup&lt;/h2&gt;
&lt;p&gt;Canon EOS Rebel 2000 with Kodak Ultramax 400 film.&lt;/p&gt;
&lt;p&gt;I started DSLR photography with a Canon T2i in 2010, and purchased the 50mm f/1.4 lens.&lt;/p&gt;
&lt;p&gt;Instead of buying a fancy new full-frame DSLR to take advantage of the EF lenses, I thought it would be fun to play around with a cheap film body.&lt;/p&gt;
&lt;p&gt;I bought the Rebel 2000 on eBay for $65 including shipping.&lt;/p&gt;
&lt;h2 id=&quot;photos&quot;&gt;Photos&lt;/h2&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-09.jpg&quot; data-width=&quot;3047&quot; data-height=&quot;4547&quot;&gt;
    &lt;img src=&quot;/post/first-film-roll/MH230426007210-09-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-09-480.jpg 480w, /post/first-film-roll/MH230426007210-09-900.jpg 900w, /post/first-film-roll/MH230426007210-09-1600.jpg 1600w, /post/first-film-roll/MH230426007210-09-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;3581&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-10.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
    &lt;img src=&quot;/post/first-film-roll/MH230426007210-10-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-10-480.jpg 480w, /post/first-film-roll/MH230426007210-10-900.jpg 900w, /post/first-film-roll/MH230426007210-10-1600.jpg 1600w, /post/first-film-roll/MH230426007210-10-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-12.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
    &lt;img src=&quot;/post/first-film-roll/MH230426007210-12-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-12-480.jpg 480w, /post/first-film-roll/MH230426007210-12-900.jpg 900w, /post/first-film-roll/MH230426007210-12-1600.jpg 1600w, /post/first-film-roll/MH230426007210-12-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-13.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-13-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-13-480.jpg 480w, /post/first-film-roll/MH230426007210-13-900.jpg 900w, /post/first-film-roll/MH230426007210-13-1600.jpg 1600w, /post/first-film-roll/MH230426007210-13-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-14.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-14-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-14-480.jpg 480w, /post/first-film-roll/MH230426007210-14-900.jpg 900w, /post/first-film-roll/MH230426007210-14-1600.jpg 1600w, /post/first-film-roll/MH230426007210-14-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-18.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-18-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-18-480.jpg 480w, /post/first-film-roll/MH230426007210-18-900.jpg 900w, /post/first-film-roll/MH230426007210-18-1600.jpg 1600w, /post/first-film-roll/MH230426007210-18-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-19.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-19-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-19-480.jpg 480w, /post/first-film-roll/MH230426007210-19-900.jpg 900w, /post/first-film-roll/MH230426007210-19-1600.jpg 1600w, /post/first-film-roll/MH230426007210-19-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-25.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
    &lt;img src=&quot;/post/first-film-roll/MH230426007210-25-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-25-480.jpg 480w, /post/first-film-roll/MH230426007210-25-900.jpg 900w, /post/first-film-roll/MH230426007210-25-1600.jpg 1600w, /post/first-film-roll/MH230426007210-25-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;messed up the first flash photo being in Av mode&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-27.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-27-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-27-480.jpg 480w, /post/first-film-roll/MH230426007210-27-900.jpg 900w, /post/first-film-roll/MH230426007210-27-1600.jpg 1600w, /post/first-film-roll/MH230426007210-27-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-29.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-29-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-29-480.jpg 480w, /post/first-film-roll/MH230426007210-29-900.jpg 900w, /post/first-film-roll/MH230426007210-29-1600.jpg 1600w, /post/first-film-roll/MH230426007210-29-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/first-film-roll/MH230426007210-35.jpg&quot; data-width=&quot;4547&quot; data-height=&quot;3047&quot;&gt;
      &lt;img src=&quot;/post/first-film-roll/MH230426007210-35-2400.jpg&quot; srcset=&quot;/post/first-film-roll/MH230426007210-35-480.jpg 480w, /post/first-film-roll/MH230426007210-35-900.jpg 900w, /post/first-film-roll/MH230426007210-35-1600.jpg 1600w, /post/first-film-roll/MH230426007210-35-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1608&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;</content>
  </entry>
  <entry>
    <title>Running an Exported Processing 3 Sketch on a Raspberry Pi</title>
    <link href="https://nocduro.com/post/headless-processing3/"/>
    <id>https://nocduro.com/post/headless-processing3/</id>
    <published>2016-01-06T00:00:00Z</published>
    <updated>2016-08-08T00:00:00Z</updated>
    <summary>Getting an exported Processing sketch to run on a Pi with no screen attached.</summary>
    <category term="programming"/>
    <category term="raspberry-pi"/>
    <content type="html" xml:base="https://nocduro.com/post/headless-processing3/">&lt;p&gt;I had a lot of trouble searching and trying to find out how this could be done so I thought I’d make a post about how I finally got it to work.&lt;/p&gt;
&lt;p&gt;Aug 8, 2016 EDIT: I recently reinstalled Raspbian and used Jessie instead of Wheezie so this guide is now slightly out of date for Jessie installs. I plan to get around to making an updated post soon, but if it’s not up just leave a comment and I’ll finish it and put it up.&lt;/p&gt;
&lt;p&gt;The question though is why I would ever want to run Processing headless since it is usually used to generate graphics and display them on a screen! The answer is that I want to use Processing to control several FadeCandy’s which I’m using to drive a rgb led matrix.&lt;/p&gt;
&lt;h2 id=&quot;update-software&quot;&gt;Update Software&lt;/h2&gt;
&lt;p&gt;Recently Processing added support for the Raspberry Pi and arm processors, so we have to be up to date on Processing 3.0.1 (or higher) to get it to export the files to run on the Pi.&lt;/p&gt;
&lt;p&gt;Quick side note: I wasn’t able to get surface.setResizable(true) or surface.setSize() to work on the Pi when I ran the sketch, so something to be aware of if you’re getting a weird error that you don’t get on Windows.&lt;/p&gt;
&lt;p&gt;I also updated the Pi by running:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;hl-source hl-shell hl-bash&quot;&gt;&lt;span class=&quot;hl-meta hl-function-call hl-shell&quot;&gt;&lt;span class=&quot;hl-variable hl-function hl-shell&quot;&gt;sudo&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;hl-meta hl-function-call hl-arguments hl-shell&quot;&gt; apt-get update&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;hl-source hl-shell hl-bash&quot;&gt;&lt;span class=&quot;hl-meta hl-function-call hl-shell&quot;&gt;&lt;span class=&quot;hl-variable hl-function hl-shell&quot;&gt;sudo&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;hl-meta hl-function-call hl-arguments hl-shell&quot;&gt; apt-get upgrade&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;create-virtual-display-for-the-pi&quot;&gt;Create Virtual Display for the Pi&lt;/h2&gt;
&lt;p&gt;I followed the directions from Processing available here:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/processing/processing/wiki/Running-without-a-Display&quot;&gt;https://github.com/processing/processing/wiki/Running-without-a-Display&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;install-the-correct-java-version&quot;&gt;Install the correct Java version&lt;/h2&gt;
&lt;p&gt;Processing 3 seems to require Java version 8, I don’t recall how/when I installed it so you’re on your own for that 😛&lt;/p&gt;
&lt;p&gt;Set the version of Java by running:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;hl-source hl-shell hl-bash&quot;&gt;&lt;span class=&quot;hl-meta hl-function-call hl-shell&quot;&gt;&lt;span class=&quot;hl-variable hl-function hl-shell&quot;&gt;sudo&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;hl-meta hl-function-call hl-arguments hl-shell&quot;&gt; update-alternatives&lt;span class=&quot;hl-variable hl-parameter hl-option hl-shell&quot;&gt;&lt;span class=&quot;hl-punctuation hl-definition hl-parameter hl-shell&quot;&gt; --&lt;/span&gt;config&lt;/span&gt; java&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/headless-processing3/java-version.png&quot; data-width=&quot;746&quot; data-height=&quot;193&quot;&gt;
    &lt;img src=&quot;/post/headless-processing3/java-version.png&quot; srcset=&quot;/post/headless-processing3/java-version-480.png 480w, /post/headless-processing3/java-version.png 746w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;746&quot; height=&quot;193&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;h2 id=&quot;export-and-copy-to-pi&quot;&gt;Export and copy to Pi&lt;/h2&gt;
&lt;p&gt;Export your sketch by going to: &lt;code&gt;File -&amp;gt; Export Application&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Then check the Linux box and click export. Processing will generate a folder called &lt;code&gt;application.linux-armv6hf&lt;/code&gt; which contains the files we need on the Pi. Copy this folder over to the Pi (I used ftp). Now set the file to executable by running: &lt;code&gt;chmod +x [filename]&lt;/code&gt;&lt;/p&gt;
&lt;h2 id=&quot;run-your-sketch&quot;&gt;Run your sketch!&lt;/h2&gt;
&lt;p&gt;You can now run your sketch by using:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;hl-source hl-shell hl-bash&quot;&gt;&lt;span class=&quot;hl-meta hl-function-call hl-shell&quot;&gt;&lt;span class=&quot;hl-variable hl-function hl-shell&quot;&gt;xinit&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;hl-meta hl-function-call hl-arguments hl-shell&quot;&gt; ./filename&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;One last thing to mention is that I’m not sure if the virtual display setup needs to be done every boot, if it does it should be fairly easy to set it up to do so in /etc/rc.local&lt;/p&gt;
&lt;p&gt;Edit: Turns out you do need to add this line in your /etc/rc.local file:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;hl-source hl-shell hl-bash&quot;&gt;&lt;span class=&quot;hl-meta hl-function-call hl-shell&quot;&gt;&lt;span class=&quot;hl-storage hl-modifier hl-shell&quot;&gt;export&lt;/span&gt; &lt;span class=&quot;hl-variable hl-other hl-readwrite hl-assignment hl-shell&quot;&gt;DISPLAY&lt;/span&gt;&lt;span class=&quot;hl-keyword hl-operator hl-assignment hl-shell&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;hl-string hl-unquoted hl-shell&quot;&gt;&lt;span class=&quot;hl-string hl-quoted hl-double hl-shell&quot;&gt;&lt;span class=&quot;hl-punctuation hl-definition hl-string hl-begin hl-shell&quot;&gt;&amp;quot;&lt;/span&gt;:1&lt;span class=&quot;hl-punctuation hl-definition hl-string hl-end hl-shell&quot;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Sources:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://learn.adafruit.com/1500-neopixel-led-curtain-with-raspberry-pi-fadecandy/fadecandy-server-setup&quot;&gt;https://learn.adafruit.com/1500-neopixel-led-curtain-with-raspberry-pi-fadecandy/fadecandy-server-setup&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/processing/processing/wiki/Running-without-a-Display&quot;&gt;https://github.com/processing/processing/wiki/Running-without-a-Display&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.raspberrypi.org/forums/viewtopic.php?f=28&amp;amp;t=86352&quot;&gt;https://www.raspberrypi.org/forums/viewtopic.php?f=28&amp;amp;t=86352&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>100W LED Flashlight</title>
    <link href="https://nocduro.com/post/100w-led-flashlight/"/>
    <id>https://nocduro.com/post/100w-led-flashlight/</id>
    <published>2015-08-21T00:00:00Z</published>
    <updated>2015-08-21T00:00:00Z</updated>
    <summary>A 3D-printed case around a $4 LED, an R/C battery, and a boost converter.</summary>
    <category term="electronics"/>
    <category term="3d-printing"/>
    <content type="html" xml:base="https://nocduro.com/post/100w-led-flashlight/">&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;I thought it would be fun to make a 100W led flashlight like DIYPerks or CNlohr have made previously. I figured this would be a good opportunity to practice making 3D models as well as practice on making multi part prints on my 3D printer (Printrbot Simple Metal). This versions electronics is largely (if not entirely copied) from the DIYPerks video which you should check out for more of a step by step tutorial. One of the main focuses of this was to make a nice 3D printed case around his design.&lt;/p&gt;
&lt;p&gt;For those not familiar, there are 100W LEDs on ebay and Aliexpress that are about $3-4 a piece which makes this project a (supposedly) cheap and super bright flashlight. Now this thing won’t be waterproof or rugged like commercially available high brightness LED flashlights, but it is a fun project to do! Here’s the overview of what I will be using:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;3D printed case&lt;/li&gt;
&lt;li&gt;Large R/C LiPo battery for power&lt;/li&gt;
&lt;li&gt;Constant current boost converter&lt;/li&gt;
&lt;li&gt;100W LED&lt;/li&gt;
&lt;li&gt;Stock Intel CPU heatsink to keep things cool&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;case-design-and-construction&quot;&gt;Case design and construction&lt;/h2&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/iso-shaded.png&quot; data-width=&quot;1920&quot; data-height=&quot;1080&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/iso-shaded.png&quot; srcset=&quot;/post/100w-led-flashlight/iso-shaded-480.png 480w, /post/100w-led-flashlight/iso-shaded-900.png 900w, /post/100w-led-flashlight/iso-shaded-1600.png 1600w, /post/100w-led-flashlight/iso-shaded.png 1920w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;1920&quot; height=&quot;1080&quot;
      alt=&quot;Iso view of the case&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;p&gt;This is the most advanced thing I have ever 3D modeled and during the process I got frustrated with a few things trying to get it to look how I wanted, but eventually everything got done.&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/drawing.png&quot; data-width=&quot;2500&quot; data-height=&quot;1949&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/drawing-2400.png&quot; srcset=&quot;/post/100w-led-flashlight/drawing-480.png 480w, /post/100w-led-flashlight/drawing-900.png 900w, /post/100w-led-flashlight/drawing-1600.png 1600w, /post/100w-led-flashlight/drawing-2400.png 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1871&quot;
      alt=&quot;Dimensioned drawing&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;p&gt;The design of the case is based around three things: the Intel heatsink, the R/C battery, and the boost converter. The front plate was designed so that it was the same as a motherboard so that the heatsink would mount with its original method. The plate is around 1.6mm thick for the pegs of the heatsink to engage. If you don’t have access to a 3D printer then some 1/16″ aluminum should be the correct thickness. The front panel is currently just press fit into the main (bell?) housing so that I can open it up and take the electronics out if need be. Glue could be added to make it stronger but right now if fits snugly. The wider part of the ‘bell’ is how far the heatsink is recessed into it with the gradual slope allowing the battery to slide up into the bell a little bit to shorten the length of the flashlight and give it a nice flashlight look. Also in the bell is the cutout for the battery voltage alarm, and the mount for the potentiometer that controls the brightness.&lt;/p&gt;
&lt;p&gt;The next part I call the battery compartment since the battery takes up most of its space. Most of the electronics are also mounted in this piece. Again this part is press fit, albeit a little too tightly so I had to do a lot of sanding to get it to insert into the bell. The inside lip of this piece sticks out a bit inside the bell giving a nice sort of lip for me to put glue in. This piece was glued in to make it stronger with a little bit of super glue. The battery compartment houses the carrying handle, on switch, and screw mounts for the back cover. All of the holes in the final print had to be enlarged slightly so things fit correctly, so I need to adjust my tolerances I use when designing for my printer (currently 0.2mm).&lt;/p&gt;
&lt;p&gt;And finally we have the back cover which is mounted in place with 10-32 nuts and bolts with the bolts being recessed into their holders and glued in with super glue.&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/iso-cut.png&quot; data-width=&quot;1191&quot; data-height=&quot;798&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/iso-cut.png&quot; srcset=&quot;/post/100w-led-flashlight/iso-cut-480.png 480w, /post/100w-led-flashlight/iso-cut-900.png 900w, /post/100w-led-flashlight/iso-cut.png 1191w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;1191&quot; height=&quot;798&quot;
      alt=&quot;Cut view&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;Cut view – You can see the red bar that stops the battery sliding into the fan, the large grey piece is the battery, the smaller grey piece the boost converter. Also a nice view on how the parts connect to one another.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/side-cut.png&quot; data-width=&quot;853&quot; data-height=&quot;391&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/side-cut.png&quot; srcset=&quot;/post/100w-led-flashlight/side-cut-480.png 480w, /post/100w-led-flashlight/side-cut.png 853w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;853&quot; height=&quot;391&quot;
        alt=&quot;Side cut view&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/top-shaded.png&quot; data-width=&quot;1920&quot; data-height=&quot;1080&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/top-shaded.png&quot; srcset=&quot;/post/100w-led-flashlight/top-shaded-480.png 480w, /post/100w-led-flashlight/top-shaded-900.png 900w, /post/100w-led-flashlight/top-shaded-1600.png 1600w, /post/100w-led-flashlight/top-shaded.png 1920w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;1920&quot; height=&quot;1080&quot;
        alt=&quot;Top view&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/side-view-shaded.png&quot; data-width=&quot;1920&quot; data-height=&quot;1080&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/side-view-shaded.png&quot; srcset=&quot;/post/100w-led-flashlight/side-view-shaded-480.png 480w, /post/100w-led-flashlight/side-view-shaded-900.png 900w, /post/100w-led-flashlight/side-view-shaded-1600.png 1600w, /post/100w-led-flashlight/side-view-shaded.png 1920w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;1920&quot; height=&quot;1080&quot;
        alt=&quot;Side view&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/back-shaded.png&quot; data-width=&quot;1920&quot; data-height=&quot;1080&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/back-shaded.png&quot; srcset=&quot;/post/100w-led-flashlight/back-shaded-480.png 480w, /post/100w-led-flashlight/back-shaded-900.png 900w, /post/100w-led-flashlight/back-shaded-1600.png 1600w, /post/100w-led-flashlight/back-shaded.png 1920w&quot; sizes=&quot;(min-width: 1040px) 225px, (min-width: 900px) 150px, 50vw&quot; width=&quot;1920&quot; height=&quot;1080&quot;
        alt=&quot;Back view&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/print1.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/print1-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/print1-480.jpg 480w, /post/100w-led-flashlight/print1-900.jpg 900w, /post/100w-led-flashlight/print1-1600.jpg 1600w, /post/100w-led-flashlight/print1-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;Print, part 1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/print2.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/print2-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/print2-480.jpg 480w, /post/100w-led-flashlight/print2-900.jpg 900w, /post/100w-led-flashlight/print2-1600.jpg 1600w, /post/100w-led-flashlight/print2-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;Print, part 2&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/print3.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/print3-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/print3-480.jpg 480w, /post/100w-led-flashlight/print3-900.jpg 900w, /post/100w-led-flashlight/print3-1600.jpg 1600w, /post/100w-led-flashlight/print3-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;Print, part 3&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  &lt;figcaption&gt;Total print time was somewhere in the neighbourhood of 13 hours for all 4 parts.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4186.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4186-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4186-480.jpg 480w, /post/100w-led-flashlight/img_4186-900.jpg 900w, /post/100w-led-flashlight/img_4186-1600.jpg 1600w, /post/100w-led-flashlight/img_4186-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4199.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4199-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4199-480.jpg 480w, /post/100w-led-flashlight/img_4199-900.jpg 900w, /post/100w-led-flashlight/img_4199-1600.jpg 1600w, /post/100w-led-flashlight/img_4199-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4197.jpg&quot; data-width=&quot;3456&quot; data-height=&quot;5184&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4197-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4197-480.jpg 480w, /post/100w-led-flashlight/img_4197-900.jpg 900w, /post/100w-led-flashlight/img_4197-1600.jpg 1600w, /post/100w-led-flashlight/img_4197-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;3600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4196.jpg&quot; data-width=&quot;3456&quot; data-height=&quot;5184&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/img_4196-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4196-480.jpg 480w, /post/100w-led-flashlight/img_4196-900.jpg 900w, /post/100w-led-flashlight/img_4196-1600.jpg 1600w, /post/100w-led-flashlight/img_4196-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;3600&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;Needed to drill holes to get a screw driver in to screw in the handle. The screws for the handle were too long so they were cut with a hacksaw.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4189.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4189-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4189-480.jpg 480w, /post/100w-led-flashlight/img_4189-900.jpg 900w, /post/100w-led-flashlight/img_4189-1600.jpg 1600w, /post/100w-led-flashlight/img_4189-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4059.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4059-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4059-480.jpg 480w, /post/100w-led-flashlight/img_4059-900.jpg 900w, /post/100w-led-flashlight/img_4059-1600.jpg 1600w, /post/100w-led-flashlight/img_4059-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4191.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4191-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4191-480.jpg 480w, /post/100w-led-flashlight/img_4191-900.jpg 900w, /post/100w-led-flashlight/img_4191-1600.jpg 1600w, /post/100w-led-flashlight/img_4191-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4192.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4192-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4192-480.jpg 480w, /post/100w-led-flashlight/img_4192-900.jpg 900w, /post/100w-led-flashlight/img_4192-1600.jpg 1600w, /post/100w-led-flashlight/img_4192-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4210.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4210-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4210-480.jpg 480w, /post/100w-led-flashlight/img_4210-900.jpg 900w, /post/100w-led-flashlight/img_4210-1600.jpg 1600w, /post/100w-led-flashlight/img_4210-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/wp_20150624_17_22_25_pro.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/wp_20150624_17_22_25_pro-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/wp_20150624_17_22_25_pro-480.jpg 480w, /post/100w-led-flashlight/wp_20150624_17_22_25_pro-900.jpg 900w, /post/100w-led-flashlight/wp_20150624_17_22_25_pro-1600.jpg 1600w, /post/100w-led-flashlight/wp_20150624_17_22_25_pro-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  &lt;figcaption&gt;Made a drilling template then proceeded to break several drill bits and just bend the aluminum. As a last resort I just started threading the machine screws in and they bit! Only got 3 of them in though.&lt;/figcaption&gt;
&lt;/figure&gt;&lt;h2 id=&quot;electronics&quot;&gt;Electronics&lt;/h2&gt;
&lt;p&gt;Most of the electronics are off the shelf parts I ordered from China, either through eBay or Aliexpress.&lt;/p&gt;
&lt;h3 id=&quot;the-led&quot;&gt;The LED&lt;/h3&gt;
&lt;p&gt;The main attraction: a 100W LED mounted with some CPU thermal compound behind it.&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4211.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/img_4211-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4211-480.jpg 480w, /post/100w-led-flashlight/img_4211-900.jpg 900w, /post/100w-led-flashlight/img_4211-1600.jpg 1600w, /post/100w-led-flashlight/img_4211-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
      alt=&quot;100W LED on the heatsink&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;p&gt;This is a 100W (~30ish Volts, 3-3.3A) LED. It has 10 individual LEDs in series which is then put in parallel with 9 other strings to give us a total of 100 dies. From what I’ve seen online it is usually a bad idea to run LEDs in parallel like this due to the fact that if one of the strings gets blown or fails then more current will flow through the other strings causing a cascading failure. Also the fact that LEDs forward voltage can vary from part to part it could cause an imbalance. I believe the way the manufactures of these LEDs get around this is to ‘match’ the LEDs so that each string carries the same current minimizing the risk. I mentioned earlier that these chips are very cheap from China, around $4, when some from Digikey cost about $30. I think this is probably because these are the chips that are rejected due to poor performance during QC. &lt;a href=&quot;https://www.youtube.com/watch?v=NjKgPLeJ79Q&quot;&gt;Here is a video by bigclive talking about this&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I got fairly lucky with this chip I used for the light with probably something like 85+% of the LEDs working fine. I also ordered a warm white version from the same seller which was a bit worse unfortunately. Can’t really complain though for $4 with free shipping!&lt;/p&gt;
&lt;h3 id=&quot;driving-the-led&quot;&gt;Driving the LED&lt;/h3&gt;
&lt;p&gt;The LED needs about 30V and 3A to operate which is easy to get if you use an AC adapter from someone like Meanwell. Since we are trying to make this portable though we will copy DIYPerks and just use a large RC battery. This battery is fed through a 150W constant current boost converter which is also from China. The boost converter had a similar modification as in the DIYPerks video where I removed the constant current potentiometer and soldered another one on that I could mount to the side of the case. I went for the more expensive constant current boost converter because I was worried about the thermal runaway if the LED got too hot and started drawing more current. The LED is connected with 18 gauge wire.&lt;/p&gt;
&lt;h3 id=&quot;driving-the-fan&quot;&gt;Driving the fan&lt;/h3&gt;
&lt;p&gt;The fan circuit again takes inspiration from DIYPerks using a small DC/DC buck converter to step down the battery voltage to 12V. This board is glued to the heatsink of the boost converter and insulated from it with some electrical tape. This buck converter also drives a transistor that toggles the ground pin of the battery voltage alarm board to turn it on when the main switch is flipped.&lt;/p&gt;
&lt;p&gt;The switch is connected to the positive terminal of the battery, hence the need for the transistor.&lt;/p&gt;
&lt;h3 id=&quot;battery-voltage-alarm&quot;&gt;Battery voltage alarm&lt;/h3&gt;
&lt;p&gt;Also the same part as DIYPerks. It is just a simple board with a couple buzzers, warning LED, and 7 segment display. The balance lead from the battery is connected to an extension cable which is then connected to the alarm board. When any of the cells in the battery gets below 3.2V an audible alarm sounds letting me know the battery is getting low.&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4201.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/img_4201-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4201-480.jpg 480w, /post/100w-led-flashlight/img_4201-900.jpg 900w, /post/100w-led-flashlight/img_4201-1600.jpg 1600w, /post/100w-led-flashlight/img_4201-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
      alt=&quot;Electronics inside the enclosure&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;How the electronics sit inside the enclosure.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4202.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/img_4202-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4202-480.jpg 480w, /post/100w-led-flashlight/img_4202-900.jpg 900w, /post/100w-led-flashlight/img_4202-1600.jpg 1600w, /post/100w-led-flashlight/img_4202-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
      alt=&quot;Boost converter board&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;Top view of the boost converter board. On the right I tapped the battery voltage with the small red and black wires for the 12V buck converter. The buck board is mounted on the top left. On the left yellow is 12V.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4204.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4204-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4204-480.jpg 480w, /post/100w-led-flashlight/img_4204-900.jpg 900w, /post/100w-led-flashlight/img_4204-1600.jpg 1600w, /post/100w-led-flashlight/img_4204-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;Buck board&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4206.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4206-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4206-480.jpg 480w, /post/100w-led-flashlight/img_4206-900.jpg 900w, /post/100w-led-flashlight/img_4206-1600.jpg 1600w, /post/100w-led-flashlight/img_4206-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4207.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4207-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4207-480.jpg 480w, /post/100w-led-flashlight/img_4207-900.jpg 900w, /post/100w-led-flashlight/img_4207-1600.jpg 1600w, /post/100w-led-flashlight/img_4207-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  &lt;figcaption&gt;Closeup of the buck board.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4185.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/img_4185-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4185-480.jpg 480w, /post/100w-led-flashlight/img_4185-900.jpg 900w, /post/100w-led-flashlight/img_4185-1600.jpg 1600w, /post/100w-led-flashlight/img_4185-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;Making the extension cable for the balance leads.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4214.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/img_4214-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4214-480.jpg 480w, /post/100w-led-flashlight/img_4214-900.jpg 900w, /post/100w-led-flashlight/img_4214-1600.jpg 1600w, /post/100w-led-flashlight/img_4214-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  &lt;figcaption&gt;Everything laid out.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-2&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4046.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4046-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4046-480.jpg 480w, /post/100w-led-flashlight/img_4046-900.jpg 900w, /post/100w-led-flashlight/img_4046-1600.jpg 1600w, /post/100w-led-flashlight/img_4046-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4213.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4213-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4213-480.jpg 480w, /post/100w-led-flashlight/img_4213-900.jpg 900w, /post/100w-led-flashlight/img_4213-1600.jpg 1600w, /post/100w-led-flashlight/img_4213-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  &lt;figcaption&gt;Testing…&lt;/figcaption&gt;
&lt;/figure&gt;&lt;h2 id=&quot;finished&quot;&gt;Finished!&lt;/h2&gt;

&lt;figure class=&quot;figure gallery cols-3&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4221.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4221-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4221-480.jpg 480w, /post/100w-led-flashlight/img_4221-900.jpg 900w, /post/100w-led-flashlight/img_4221-1600.jpg 1600w, /post/100w-led-flashlight/img_4221-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4217.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4217-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4217-480.jpg 480w, /post/100w-led-flashlight/img_4217-900.jpg 900w, /post/100w-led-flashlight/img_4217-1600.jpg 1600w, /post/100w-led-flashlight/img_4217-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4223.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4223-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4223-480.jpg 480w, /post/100w-led-flashlight/img_4223-900.jpg 900w, /post/100w-led-flashlight/img_4223-1600.jpg 1600w, /post/100w-led-flashlight/img_4223-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 300px, (min-width: 900px) 200px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure gallery cols-2&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4224.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4224-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4224-480.jpg 480w, /post/100w-led-flashlight/img_4224-900.jpg 900w, /post/100w-led-flashlight/img_4224-1600.jpg 1600w, /post/100w-led-flashlight/img_4224-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/img_4225.jpg&quot; data-width=&quot;3456&quot; data-height=&quot;5184&quot;&gt;
      &lt;img src=&quot;/post/100w-led-flashlight/img_4225-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/img_4225-480.jpg 480w, /post/100w-led-flashlight/img_4225-900.jpg 900w, /post/100w-led-flashlight/img_4225-1600.jpg 1600w, /post/100w-led-flashlight/img_4225-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;3600&quot;
        alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/100w-led-flashlight/header.jpg&quot; data-width=&quot;5184&quot; data-height=&quot;3456&quot;&gt;
    &lt;img src=&quot;/post/100w-led-flashlight/header-2400.jpg&quot; srcset=&quot;/post/100w-led-flashlight/header-480.jpg 480w, /post/100w-led-flashlight/header-900.jpg 900w, /post/100w-led-flashlight/header-1600.jpg 1600w, /post/100w-led-flashlight/header-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1600&quot;
      alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure embed&quot;&gt;
  &lt;div class=&quot;embed-frame&quot;&gt;
  
    &lt;iframe src=&quot;https://www.youtube-nocookie.com/embed/gYYbhb42Nlw&quot; title=&quot;YouTube video&quot; loading=&quot;lazy&quot;
      allow=&quot;accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture&quot; allowfullscreen&gt;&lt;/iframe&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;A fun project but turned out to be a little more expensive than I was hoping. It’s actually really useful to use as a floodlight, I used it a bit when we were working on our retaining wall at night and it lit everything up nicely. I did get some lenses but haven’t figured out how to mount them yet or if I will even use them since the main advantage this has over a normal flashlight is it being a flood that lights everything up nice and bright.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <title>IR reflective sensor breakout board (GP2S60B)</title>
    <link href="https://nocduro.com/post/gp2s60b-breakout/"/>
    <id>https://nocduro.com/post/gp2s60b-breakout/</id>
    <published>2015-05-02T00:00:00Z</published>
    <updated>2015-05-02T00:00:00Z</updated>
    <summary>A tiny breakout for Sharp's GP2S60B reflective IR sensor, for a beer pong table.</summary>
    <category term="electronics"/>
    <content type="html" xml:base="https://nocduro.com/post/gp2s60b-breakout/">&lt;p&gt;I’m currently in the middle of building a replica of Chexal technologies beer pong table, and in order to sense if a cup is over the acrylic I needed some sensors!&lt;br /&gt;
In the original table they use some sensors that are through hole but I thought I would try and get these surface mount ones working as they are a bit cheaper and compact.&lt;/p&gt;
&lt;p&gt;The sensor is the Sharp Microelectronics GP2S60B which is a reflective IR sensor with emitter and sensor in one package.
It’s ideal sense range is 0.7mm but I will be trying to get it to work through 2mm thick acrylic.
Since there are 20 required for the table I am also going to use a mux to read all the outputs like Chexal has done.&lt;/p&gt;
&lt;p&gt;I made a breakout in eagle with all the pins broken out as well as a solder jumper to let you connect the input voltage as the input to the detector.
There are also two spots for the resistors needed.&lt;/p&gt;
&lt;p&gt;I already ordered the board, but next time I am going to use 0805 resistors since they are easier to solder than the 0603 I used and I already have booklet with a bunch of 0805 resistors.
I’ve been using 0603 in a different project and just automatically used them. Oops.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://oshpark.com/shared_projects/kkRQAGD4&quot;&gt;Oshpark page&lt;/a&gt;&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/gp2s60b-breakout/schematic.png&quot; data-width=&quot;921&quot; data-height=&quot;429&quot;&gt;
    &lt;img src=&quot;/post/gp2s60b-breakout/schematic.png&quot; srcset=&quot;/post/gp2s60b-breakout/schematic-480.png 480w, /post/gp2s60b-breakout/schematic-900.png 900w, /post/gp2s60b-breakout/schematic.png 921w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;921&quot; height=&quot;429&quot;
      alt=&quot;Breakout schematic&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;</content>
  </entry>
  <entry>
    <title>Arc reactor made with 3D printing and RGB LEDs</title>
    <link href="https://nocduro.com/post/arc-reactor/"/>
    <id>https://nocduro.com/post/arc-reactor/</id>
    <published>2014-10-31T00:00:00Z</published>
    <updated>2014-10-31T00:00:00Z</updated>
    <summary>A 3D-printed ring of NeoPixels that reacts to sound, built for Halloween.</summary>
    <category term="electronics"/>
    <category term="3d-printing"/>
    <content type="html" xml:base="https://nocduro.com/post/arc-reactor/">&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The inspiration for this project came from the &lt;a href=&quot;https://www.youtube.com/watch?v=5yR6ekf0bgU&quot;&gt;Adafruit video on their arc reactor&lt;/a&gt; that was posted the halloween before I made mine.
When I first saw the video I didn’t have a laser cutter or 3D printer so I wasn’t able to build one.
Last June however I got a Printrbot Simple Metal which I used to 3d print a housing for some leds, a microphone, micro controller, and a microphone to react to the music.&lt;/p&gt;
&lt;h2 id=&quot;3d-printing&quot;&gt;3D Printing&lt;/h2&gt;
&lt;p&gt;I originally printed an arc reactor I found on thingiverse but I can’t seem to find it now.
I printed that model out but I wanted to modify it a bit, so I remade it in Inventor with straighter edges, and most importantly a 1mm wide channel to place a neopixel strip around the inside of the ring (see picture below).
The final version was printed in 100% infill because I was originally wanting to diffuse the light through the translucent plastic, but later changed my mind.
Using an opaque filament would be better because right now the light bleeds through even though it is painted.&lt;/p&gt;

&lt;figure class=&quot;figure gallery cols-2&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/design_comparison.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
      &lt;img src=&quot;/post/arc-reactor/design_comparison-2400.jpg&quot; srcset=&quot;/post/arc-reactor/design_comparison-480.jpg 480w, /post/arc-reactor/design_comparison-900.jpg 900w, /post/arc-reactor/design_comparison-1600.jpg 1600w, /post/arc-reactor/design_comparison-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
        alt=&quot;Original and remade design side by side&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/channel.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
      &lt;img src=&quot;/post/arc-reactor/channel-2400.jpg&quot; srcset=&quot;/post/arc-reactor/channel-480.jpg 480w, /post/arc-reactor/channel-900.jpg 900w, /post/arc-reactor/channel-1600.jpg 1600w, /post/arc-reactor/channel-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
        alt=&quot;The 1mm channel for the NeoPixel strip&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;&lt;p&gt;To get the neopixel strip to fit better I cut along the edge so it wasn’t as wide and would fit in the channel more nicely.&lt;/p&gt;
&lt;p&gt;To diffuse the leds I printed a diffuser with natural PLA from toybuilderlabs.com.  I think it was 2 or 3 layers thick at 0.2mm layer height and then I sanded it to make it smoother and thinner.&lt;/p&gt;

&lt;figure class=&quot;figure gallery cols-2&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/diffuser.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
      &lt;img src=&quot;/post/arc-reactor/diffuser-2400.jpg&quot; srcset=&quot;/post/arc-reactor/diffuser-480.jpg 480w, /post/arc-reactor/diffuser-900.jpg 900w, /post/arc-reactor/diffuser-1600.jpg 1600w, /post/arc-reactor/diffuser-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
        alt=&quot;Printed diffuser&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/diffuser_installed.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
      &lt;img src=&quot;/post/arc-reactor/diffuser_installed-2400.jpg&quot; srcset=&quot;/post/arc-reactor/diffuser_installed-480.jpg 480w, /post/arc-reactor/diffuser_installed-900.jpg 900w, /post/arc-reactor/diffuser_installed-1600.jpg 1600w, /post/arc-reactor/diffuser_installed-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
        alt=&quot;Diffuser installed&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;&lt;p&gt;Unfortunately when I was building it I didn’t take any pictures of the leds in place, but they go around the edge and face towards the center of the reactor.  I did this in hopes that the light would be more even instead of seeing the lights head on.&lt;/p&gt;
&lt;h2 id=&quot;painting&quot;&gt;Painting&lt;/h2&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/primer.jpg&quot; data-width=&quot;2000&quot; data-height=&quot;2000&quot;&gt;
    &lt;img src=&quot;/post/arc-reactor/primer.jpg&quot; srcset=&quot;/post/arc-reactor/primer-480.jpg 480w, /post/arc-reactor/primer-900.jpg 900w, /post/arc-reactor/primer-1600.jpg 1600w, /post/arc-reactor/primer.jpg 2000w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2000&quot; height=&quot;2000&quot;
      alt=&quot;Primed&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;p&gt;I ended up doing a lot of primer coats and sanding to try and fill in some of the divets that were there from the 3d printing.&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/paint.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
    &lt;img src=&quot;/post/arc-reactor/paint-2400.jpg&quot; srcset=&quot;/post/arc-reactor/paint-480.jpg 480w, /post/arc-reactor/paint-900.jpg 900w, /post/arc-reactor/paint-1600.jpg 1600w, /post/arc-reactor/paint-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
      alt=&quot;Painted&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;h2 id=&quot;electronics&quot;&gt;Electronics&lt;/h2&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/electronics1.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
    &lt;img src=&quot;/post/arc-reactor/electronics1-2400.jpg&quot; srcset=&quot;/post/arc-reactor/electronics1-480.jpg 480w, /post/arc-reactor/electronics1-900.jpg 900w, /post/arc-reactor/electronics1-1600.jpg 1600w, /post/arc-reactor/electronics1-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
      alt=&quot;Electronics, front&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;p&gt;The cardboard is from a cereal box with the other side painted white to reflect more of the light from the leds.  If you look closely you can see the cardboard sitting on top of the leds (the actual leds, not the flex pcb).&lt;/p&gt;
&lt;p&gt;I used a dremel to cut out spots for the switches and the strap.&lt;/p&gt;

&lt;figure class=&quot;figure&quot;&gt;
  &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/electronics2.jpg&quot; data-width=&quot;2000&quot; data-height=&quot;2000&quot;&gt;
    &lt;img src=&quot;/post/arc-reactor/electronics2.jpg&quot; srcset=&quot;/post/arc-reactor/electronics2-480.jpg 480w, /post/arc-reactor/electronics2-900.jpg 900w, /post/arc-reactor/electronics2-1600.jpg 1600w, /post/arc-reactor/electronics2.jpg 2000w&quot; sizes=&quot;(min-width: 1040px) 900px, (min-width: 900px) 600px, 100vw&quot; width=&quot;2000&quot; height=&quot;2000&quot;
      alt=&quot;Electronics, back&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;&lt;p&gt;Using an 850mAh battery, Adafruit’s auto gain microphone, and Adafruit’s Pro Trinket.  The left switch is the power switch, middle switch is to switch the microphone board between being fed right into the mcu or going through a low pass filter.  I should have used a lower frequency on the low pass filter as it was constantly on when subjected to very loud music.  Everything was tacked down with a little bit of superglue to hold it in place.  I was originally going to use a non pro version of the Trinket, but used the pro version in case I wanted to add a bluetooth low energy module in the future to control the various led modes.&lt;/p&gt;
&lt;h2 id=&quot;finished&quot;&gt;Finished!&lt;/h2&gt;

&lt;figure class=&quot;figure gallery cols-2&quot;&gt;
  &lt;div class=&quot;gallery-grid&quot;&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/header.jpg&quot; data-width=&quot;3552&quot; data-height=&quot;2000&quot;&gt;
      &lt;img src=&quot;/post/arc-reactor/header-2400.jpg&quot; srcset=&quot;/post/arc-reactor/header-480.jpg 480w, /post/arc-reactor/header-900.jpg 900w, /post/arc-reactor/header-1600.jpg 1600w, /post/arc-reactor/header-2400.jpg 2400w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;2400&quot; height=&quot;1351&quot;
        alt=&quot;Finished reactor&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
    &lt;a class=&quot;lb&quot; href=&quot;/post/arc-reactor/wearing.jpg&quot; data-width=&quot;500&quot; data-height=&quot;768&quot;&gt;
      &lt;img src=&quot;/post/arc-reactor/wearing.jpg&quot; srcset=&quot;/post/arc-reactor/wearing-480.jpg 480w, /post/arc-reactor/wearing.jpg 500w&quot; sizes=&quot;(min-width: 1040px) 450px, (min-width: 900px) 300px, 50vw&quot; width=&quot;500&quot; height=&quot;768&quot;
        alt=&quot;Wearing it&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot;&gt;
    &lt;/a&gt;
  
  &lt;/div&gt;
  
&lt;/figure&gt;
&lt;figure class=&quot;figure embed&quot;&gt;
  &lt;div class=&quot;embed-frame&quot;&gt;
  
    &lt;iframe src=&quot;https://www.youtube-nocookie.com/embed/NjE4TTrLlLc&quot; title=&quot;YouTube video&quot; loading=&quot;lazy&quot;
      allow=&quot;accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture&quot; allowfullscreen&gt;&lt;/iframe&gt;
  
  &lt;/div&gt;
  &lt;figcaption&gt;One of the sound reactive modes.&lt;/figcaption&gt;
&lt;/figure&gt;&lt;h2 id=&quot;bill-of-materials&quot;&gt;Bill of Materials&lt;/h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th style=&quot;text-align: left&quot;&gt;Part&lt;/th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Description&lt;/th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Price (USD)&lt;/th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Link&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;3D printed shell&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;http://www.thingiverse.com/thing:805521&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;3D printed diffuser&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;http://www.thingiverse.com/thing:805521&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Neopixels&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;60 LEDs per meter, (15 leds needed)&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$24.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.adafruit.com/products/1138&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Battery&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;850mAh LIPO&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$9.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.sparkfun.com/products/341&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Microphone&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Automatic gain&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$7.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.adafruit.com/product/1713&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Micro controller&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Adafruit Pro Trinket (3V)&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$9.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.adafruit.com/product/2010&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;JST connector&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;To connect the battery&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$0.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.sparkfun.com/products/8613&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Silicone wire&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Wire used to connect everything&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$0.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.adafruit.com/products/1970&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Power switch&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$0.13&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;http://www.taydaelectronics.com/slide-switch-1p2t-solder-lug-0-5a-50vdc.html&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Low pass filter switch&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Could get from taydaelectronics cheaper&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$0.95&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;https://www.adafruit.com/products/805&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Toggle button&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Momentary push button&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;http://taydaelectronics.com&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;Strap&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Total&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;$55.78&lt;/td&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;The code isn’t the best, but here it is if you want to look at it:
&lt;a href=&quot;https://github.com/nocduro/arc-reactor&quot;&gt;https://github.com/nocduro/arc-reactor&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
</feed>
