<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.baszerr.eu/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>BaSzErr - blog:2023:09:26</title>
        <description></description>
        <link>https://www.baszerr.eu/</link>
        <lastBuildDate>Wed, 06 May 2026 07:55:25 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>https://www.baszerr.eu/lib/exe/fetch.php?media=wiki:dokuwiki.svg</url>
            <title>BaSzErr</title>
            <link>https://www.baszerr.eu/</link>
        </image>
        <item>
            <title>2023-09-26_-_3d_printing_enclosures</title>
            <link>https://www.baszerr.eu/doku.php?id=blog:2023:09:26:2023-09-26_-_3d_printing_enclosures</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;d_printing_enclosures&quot;&gt;2023-09-26 - 3D printing enclosures&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://vay.io&quot; class=&quot;urlextern&quot; title=&quot;https://vay.io&quot; rel=&quot;ugc nofollow&quot;&gt;at work&lt;/a&gt; i recently did a short talk about designing enclosures for 3D printing. as usual &lt;a href=&quot;https://www.youtube.com/watch?v=JNMgx_casLI&quot; class=&quot;urlextern&quot; title=&quot;https://www.youtube.com/watch?v=JNMgx_casLI&quot; rel=&quot;ugc nofollow&quot;&gt;i use OpenSCAD&lt;/a&gt; for my designs. here are a couple of tricks that can be used to make it more efficient.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2023-09-26 - 3D printing enclosures&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;d_printing_enclosures&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-311&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;mock&quot;&gt;mock&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
first and foremost – make sure you have a mock/model of what you want to design around. just look at this example from &lt;a href=&quot;https://en.wikipedia.org/wiki/OpenSCAD&quot; class=&quot;interwiki iw_wp&quot; title=&quot;https://en.wikipedia.org/wiki/OpenSCAD&quot;&gt;OpenSCAD&lt;/a&gt; team:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:preview.jpg&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:preview.jpg&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=400&amp;amp;tok=8b3acf&amp;amp;media=blog:2023:09:26:preview.jpg&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;preview mode in grey&quot; alt=&quot;preview mode in grey&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
thanks to this u can use the mock, to make sure all the key dimensions do match between enclosure and thing u design.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;mock&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;mock&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;312-651&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;calipers&quot;&gt;calipers&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
typical theme around custom enclosures is that you do them for custom electronics. :) in it&amp;#039;s simplest form you can just measure a couple of key dimensions: PCB&amp;#039;s outer size, holes, board height, highest elements (eg. capacitors), etc… here&amp;#039;s an example mock i did last week for one such cases:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:custom_electronics.png&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:custom_electronics.png&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=400&amp;amp;tok=9c78c9&amp;amp;media=blog:2023:09:26:custom_electronics.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;custom electronics mock&quot; alt=&quot;custom electronics mock&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
while it visually looks nothing alike a real PCB, dimension-wise it totally does the job! enclosure built around it worked in the very 1st shot. job done!
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;calipers&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;calipers&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;652-1201&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;the_internet&quot;&gt;the internet&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
another common case is doing some special design around a common part. this is where the internet comes in. need a RasPi model? turns out there are &lt;a href=&quot;https://www.printables.com/model/252088-raspberry-pi-4b-models-and-template/files&quot; class=&quot;urlextern&quot; title=&quot;https://www.printables.com/model/252088-raspberry-pi-4b-models-and-template/files&quot; rel=&quot;ugc nofollow&quot;&gt;detailed models of RasPi boards&lt;/a&gt; out there. just grab one, put into OpenSCAD and you&amp;#039;re off to the races!
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:raspi.png&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:raspi.png&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=400&amp;amp;tok=095fc6&amp;amp;media=blog:2023:09:26:raspi.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;RasPi 4 model&quot; alt=&quot;RasPi 4 model&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
if you want, there even are models that put each hole and each resistor there. sky is the limit! :)
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;the internet&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;the_internet&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1202-1719&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit5&quot; id=&quot;d_scanning&quot;&gt;3D scanning&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=g41Kyl4Zp8w&quot; class=&quot;urlextern&quot; title=&quot;https://www.youtube.com/watch?v=g41Kyl4Zp8w&quot; rel=&quot;ugc nofollow&quot;&gt;3D scanner can also be used to scan template&lt;/a&gt; element, or environment design should match. provided that you have scanner that&amp;#039;s decent enough, of course. if you want PCB with holes +-1mm is not good enough, though.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;3D scanning&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;d_scanning&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:5,&amp;quot;range&amp;quot;:&amp;quot;1720-2009&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit6&quot; id=&quot;d_scanning1&quot;&gt;2D scanning&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
for things that are flat, you can also use flatbed 2D scanner, to digitize. case in point – &lt;a href=&quot;https://github.com/el-bart/mini/tree/master/sorting_box_fix&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/el-bart/mini/tree/master/sorting_box_fix&quot; rel=&quot;ugc nofollow&quot;&gt;sorting box fix&lt;/a&gt; for my son. broken surface plate needed replacement, but i did not want to go through the hassle of betting each and every dimension right. instead i&amp;#039;ve put together broken part on scanner, scanned it, cleaned up and binarized with &lt;a href=&quot;https://en.wikipedia.org/wiki/GIMP&quot; class=&quot;interwiki iw_wp&quot; title=&quot;https://en.wikipedia.org/wiki/GIMP&quot;&gt;GIMP&lt;/a&gt;, and vectorized with &lt;a href=&quot;https://en.wikipedia.org/wiki/Inkscape&quot; class=&quot;interwiki iw_wp&quot; title=&quot;https://en.wikipedia.org/wiki/Inkscape&quot;&gt;Inkscape&lt;/a&gt;. final product i was able to pull into OpenSCAD, scale and &lt;a href=&quot;https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Using_the_2D_Subsystem#linear_extrude&quot; class=&quot;urlextern&quot; title=&quot;https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Using_the_2D_Subsystem#linear_extrude&quot; rel=&quot;ugc nofollow&quot;&gt;linear_extrude()&lt;/a&gt; into a proper, 3D element. again - printed and worked fine in 1st shot.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:template.png&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:template.png&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=200&amp;amp;tok=2288a0&amp;amp;media=blog:2023:09:26:template.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;sorting box cover template&quot; alt=&quot;sorting box cover template&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;2D scanning&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;d_scanning1&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:6,&amp;quot;range&amp;quot;:&amp;quot;2010-2797&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit7&quot; id=&quot;kicad&quot;&gt;KiCad&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
now last but not least – if you design custom PCB with &lt;a href=&quot;https://en.wikipedia.org/wiki/KiCad&quot; class=&quot;interwiki iw_wp&quot; title=&quot;https://en.wikipedia.org/wiki/KiCad&quot;&gt;KiCad&lt;/a&gt;, there&amp;#039;s an option to visualize PCB in 3D.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:kicad_3d.png&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:kicad_3d.png&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=400&amp;amp;tok=8c9910&amp;amp;media=blog:2023:09:26:kicad_3d.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;KiCad 3D visualization of PCB&quot; alt=&quot;KiCad 3D visualization of PCB&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
and btw: if you see PCB but no elements on it, &lt;a href=&quot;https://forum.kicad.info/t/solved-kicad-6-0-all-the-3d-models-are-not-loaded/32664&quot; class=&quot;urlextern&quot; title=&quot;https://forum.kicad.info/t/solved-kicad-6-0-all-the-3d-models-are-not-loaded/32664&quot; rel=&quot;ugc nofollow&quot;&gt;make sure KISYS3DMOD path variable is set correctly&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
as an example i can use &lt;a href=&quot;https://www.baszerr.eu/doku.php?id=blog:2022:08:21:2022-08-21_-_toy_satellite_project&quot; class=&quot;wikilink1&quot; title=&quot;blog:2022:08:21:2022-08-21_-_toy_satellite_project&quot; data-wiki-id=&quot;blog:2022:08:21:2022-08-21_-_toy_satellite_project&quot;&gt;toy satellite project&lt;/a&gt; i made for my sons some time ago. using &lt;a href=&quot;https://github.com/el-bart/kicad_sdk&quot; class=&quot;urlextern&quot; title=&quot;https://github.com/el-bart/kicad_sdk&quot; rel=&quot;ugc nofollow&quot;&gt;dockerized KiCad SDK&lt;/a&gt; (&lt;a href=&quot;https://www.baszerr.eu/doku.php?id=blog:2022:08:27:2022-08-27_-_kicad_sdk&quot; class=&quot;wikilink1&quot; title=&quot;blog:2022:08:27:2022-08-27_-_kicad_sdk&quot; data-wiki-id=&quot;blog:2022:08:27:2022-08-27_-_kicad_sdk&quot;&gt;see blog post&lt;/a&gt;) STL can be exported automatically from a PCB design:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:pcb_stl.png&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:pcb_stl.png&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=400&amp;amp;tok=7d5ee5&amp;amp;media=blog:2023:09:26:pcb_stl.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;toy satellite PCB in STL format&quot; alt=&quot;toy satellite PCB in STL format&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
and then used as a mock directly, greatly simplifying things. :)
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://www.baszerr.eu/lib/exe/detail.php?id=blog%3A2023%3A09%3A26%3A2023-09-26_-_3d_printing_enclosures&amp;amp;media=blog:2023:09:26:toy_satellite_preview.png&quot; class=&quot;media&quot; title=&quot;blog:2023:09:26:toy_satellite_preview.png&quot;&gt;&lt;img src=&quot;https://www.baszerr.eu/lib/exe/fetch.php?w=400&amp;amp;tok=8b6cda&amp;amp;media=blog:2023:09:26:toy_satellite_preview.png&quot; class=&quot;media&quot; loading=&quot;lazy&quot; title=&quot;preview of enclosure with board inside&quot; alt=&quot;preview of enclosure with board inside&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;KiCad&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;kicad&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:7,&amp;quot;range&amp;quot;:&amp;quot;2798-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Tue, 26 Sep 2023 19:32:46 +0000</pubDate>
        </item>
    </channel>
</rss>
