{"id":6565,"date":"2022-01-01T15:00:00","date_gmt":"2022-01-01T14:00:00","guid":{"rendered":"https:\/\/willem.aandewiel.nl\/?p=6565"},"modified":"2023-12-04T10:39:39","modified_gmt":"2023-12-04T09:39:39","slug":"nog-een-geparameteriseerde-projectbox-generator","status":"publish","type":"post","link":"https:\/\/willem.aandewiel.nl\/index.php\/2022\/01\/01\/nog-een-geparameteriseerde-projectbox-generator\/","title":{"rendered":"Nog een geparametriseerde projectbox generator"},"content":{"rendered":"\n<p>[ 11,753 keer bekeken \/ views ] <strong>Yet Another Parametric Projectbox generator<\/strong><\/p>\n\n\n\n<p><a href=\"https:\/\/willem.aandewiel.nl\/index.php\/2022\/01\/02\/yet-another-parametric-projectbox-generator\/\">Here<\/a> you can find an English version of this post.<\/p>\n\n\n\n<p>Bij iedere elektronische schakeling die ik maak komt er een moment dat het project \u201caf\u201d is \u2026. bijna!<\/p>\n\n\n\n<p>De laatste stap is altijd om een geschikte projectbox te vinden en dan nog is het lastig om een (vaak plastic) project box van gaten te voorzien met de juiste grootte en op de juiste plek.&nbsp;<\/p>\n\n\n\n<p>Gelukkig heb ik een 3D printer en kan ik in theorie zelf een projectbox maken maar er gaat altijd erg veel tijd in zitten. Voor standaard processor bordjes kun je op internet wel 3D STL files vinden maar als je zelf een printplaat hebt \u201cbedacht\u201d is de enige manier een \u201cparameter gestuurde\u201d oplossing die je in Fusion 360 of in openSCAD kunt inlezen. Daarna kun je via parameters de grootte van de box opgeven en soms nog wat meer maar het \u201cpast\u201d nooit echt goed of het is zo complex dat je eerst moet afstuderen voordat je er iets moois mee kunt maken.<\/p>\n\n\n\n<p>Daarom ben ik er maar eens voor gaan zitten en ik denk dat ik een oplossing heb gevonden waarmee vrijwel iedere printplaat van een mooie projectbox kan worden voorzien.<\/p>\n\n\n\n<p class=\"has-blue-color has-text-color has-background has-medium-font-size\" style=\"background-color:#faa2a2\">4 December 2023: <strong>Rev. 3.0 gereleased<\/strong><br><br>Deze release breekt met de vrijwel alle API&#8217;s!<br><br><a rel=\"noreferrer noopener\" href=\"https:\/\/mrwheel-docs.gitbook.io\/yappgenerator_en\/\" target=\"_blank\">Hier<\/a> vind je de offici\u00eble documentatie (Engels)<\/p>\n\n\n\n<p>In deze post leg ik uit wat de uitgangspunten van deze YAPP generator zijn en hoe je hem kunt gebruiken om mooie projectboxen te 3D-printen!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Benodigdheden<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>openSCAD<br>Een recente versie van \u201copenSCAD\u201d kun je <a rel=\"noreferrer noopener\" href=\"https:\/\/openscad.org\/downloads.html\" target=\"_blank\">hier<\/a> downloaden.<\/li>\n\n\n\n<li>de YAPP generator<br>Deze kun je als \u201c<code>.zip<\/code>\u201d bestand van <a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/mrWheel\/YAPP_Box\" target=\"_blank\">github downloaden<\/a>. Pak het \u201c<code>YAPP_Box-main.zip<\/code>\u201d bestand uit in je openSCAD projecten map. Je hebt nu een nieuwe map \u201c<code>YAPP_Box-main<\/code>\u201d waarin verschillende voorbeeld bestanden staan. In \u201c<code>YAPP_Box-main<\/code>\u201d staat ook een map \u201c<code>library<\/code>\u201d waarin de YAPP generator zit (gooi deze dus niet weg!). Het is verstandig om de map structuur zo te laten en nieuwe box-ontwerpen in deze \u201c<code>YAPP_Box-main<\/code>\u201d map te bewaren.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_map.png\" alt=\"\" class=\"wp-image-6662\" width=\"250\" height=\"188\"\/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">Design filosofie<\/h2>\n\n\n\n<p>De meeste box generatoren die je op internet kunt vinden geven je de mogelijkheid om de grootte van de box op te geven. Soms moet je binnen-maten opgeven en soms buiten-maten.&nbsp;<\/p>\n\n\n\n<p>YAPP doet dat anders en gaat uit van de printplaat waar je een projectbox voor nodig hebt. De belangrijkste maten zijn dan ook de lengte, breedte en de dikte van de printplaat. Vervolgens geef je op waar de gaten zitten waarmee de printplaat moet worden vastgezet. De gaten kunnen gebruikt worden om de printplaat met schroefjes vast te zetten of je kunt de printplaat vastklemmen tussen de standoff\u2019s in de onder- en bovenkant van de projectbox. Daarna kun je voor alle vlakken (boven, onder, voor, achter, links en rechts) van de projectbox opgeven waar rechthoekige en of ronde gaten moeten komen.<\/p>\n\n\n\n<p>Als laatste kunnen teksten worden opgegeven die aan de bovenkant van de projectbox geprint worden.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/08\/ESPotifyEcho_Design-1.gif\" alt=\"\" class=\"wp-image-6965\" width=\"450\" height=\"254\"\/><figcaption class=\"wp-element-caption\">Met de YAPPgenerator als basis kunnen complexe project boxen gemaakt worden.<\/figcaption><\/figure>\n<\/div>\n\n\n<p><\/p>\n\n\n\n<p><strong>Co\u00f6rdinatie Systeem<\/strong><\/p>\n\n\n\n<p>Voordat we verder gaan is het noodzakelijk om te begrijpen wat de ori\u00ebntatie van de projectbox is. Het mag duidelijk zijn dat de projectbox zes \u201cvlakken\u201d heeft.<\/p>\n\n\n\n<p>De bovenkant heet \u201clid\u201d de onderkant \u201cbase\u201d. Het vlak dat het dichtst bij de Y-as ligt is de \u201cback\u201d. \u201cleft\u201d ligt het dichtst bij de X-as. Het vlak tegenover \u201cback\u201d (die dus het verst van de Y-as af ligt) heet \u201cfront\u201d en het vlak dat tegenover \u201cleft\u201d ligt heet \u201cright\u201d<\/p>\n\n\n\n<p>Het \u201cnulpunt\u201d (<code>[x=0, y=0, z=0]<\/code>) is altijd links-achter aan de bovenkant van de printplaat.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_0-0-0.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_0-0-0.png\" alt=\"\" class=\"wp-image-6576\" width=\"496\" height=\"318\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_0-0-0.png 991w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_0-0-0-300x193.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_0-0-0-768x493.png 768w\" sizes=\"auto, (max-width: 496px) 100vw, 496px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Voor ieder vlak is er een array waarin kan worden opgegeven waar de uitsparingen in dat vlak moeten komen. Deze uitsparingen hebben allemaal <code>[0,0,0]<\/code> van de printplaat als beginpunt. Als dus op enig moment besloten wordt om de randen rondom de printplaat te vergroten (<code>padding<\/code>) of om de \u201cpcbStandoffs\u201d hoger te maken, dan verplaatsen de uitsparingen netjes mee met de positie van de printplaat.&nbsp;<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_padding.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_padding.png\" alt=\"\" class=\"wp-image-6577\" width=\"461\" height=\"575\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_padding.png 615w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_padding-241x300.png 241w\" sizes=\"auto, (max-width: 461px) 100vw, 461px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">Uitsparingen<\/h2>\n\n\n\n<p>Er zijn twee soorten uitsparingen: \u201crechthoeken\u201d en \u201ccirkels\u201d.<\/p>\n\n\n\n<p>Rechthoeken kunnen op twee manieren worden gemaakt en wel met de oorsprong op co\u00f6rdinaten of met het centrum van de rechthoek op de co\u00f6rdinaten.<\/p>\n\n\n\n<p>Voor \u201ccirkels\u201d zijn de co\u00f6rdinaten altijd het middelpunt.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_holes.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_holes.png\" alt=\"\" class=\"wp-image-6578\" width=\"561\" height=\"566\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_holes.png 748w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_holes-297x300.png 297w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_holes-150x150.png 150w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_holes-50x50.png 50w\" sizes=\"auto, (max-width: 561px) 100vw, 561px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">pcb Standoffs<\/h2>\n\n\n\n<p>Met de \u201cpcbStandoffs\u201d wordt de afstand tussen de bovenkant van de \u201cbase\u201d en de onderkant van de printplaat vastgelegd. Tegenover de \u201cstandoff\u2019s\u201d worden automatisch \u201cpushdown\u2019s\u201d op het \u201clid\u201d gemaakt die precies zo lang zijn dat de printplaat daar netjes door wordt ingeklemd.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_stands.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_stands-1024x646.png\" alt=\"\" class=\"wp-image-6579\" width=\"512\" height=\"323\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_stands-1024x646.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_stands-300x189.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_stands-768x484.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPP_stands.png 1086w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>De standoff\u2019s kunnen worden voorzien van \u201cpennen\u201d zodat de printplaat ook op de X- en Y-assen gefixeerd wordt. Hoeveel \u201cpcb standoff\u2019s\u201d er moeten komen en waar deze moeten komen wordt opgegeven in het array \u201cpcbStands\u201d. Iedere pcbStand wordt opgegeven in \u00e9\u00e9n regel en per regel worden de eigenschappen van een pcbStand gedefinieerd. <br>Je gebruikt het pcbStands array als volgt:<\/p>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_pcbStands.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_pcbStands-1024x501.png\" alt=\"\" class=\"wp-image-6786\" width=\"512\" height=\"251\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_pcbStands-1024x501.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_pcbStands-300x147.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_pcbStands-768x376.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_pcbStands.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Ieder regel in de array zorgt voor \u00e9\u00e9n standoff. <\/p>\n\n\n\n<p>Het derde element (2) heeft de volgende betekenis:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">yappBoth:      plaats zowel onder een pcbStand alsook boven een pcbStand\nyappLidOnly:   de pcbStand wordt alleen boven (lidHalf) geprint\nyappBaseOnly:  de pcbStand wordt alleen beneden (baseHalf) geprint\n<\/pre>\n\n\n\n<p>De betekenis van het vierde element (3) is:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">yappHole:     de pcbStand wordt van een \u201cgat\u201d (hole) voorzien\nyappPin:      de pcbStand wordt van een \u201cpen\u201d voorzien\n<\/pre>\n\n\n\n<p>Als het derde element \u201c<code>yappBoth<\/code>\u201d is en als vierde element wordt \u201c<code>yappPin<\/code>\u201d opgegeven dan zal de pen op de baseHalf worden geprint en een gat op de lidHalf.<\/p>\n\n\n\n<p>Het is mogelijk om zowel onder alsook boven een gat (hole) te printen door als vierde (3) element &#8220;<code>yappHole<\/code>&#8221; op te geven:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">   [3,  12, yappBoth, yappHole] \n<\/pre>\n\n\n\n<p class=\"has-background has-medium-font-size\" style=\"background-color:#f7f40a\">Als je mij wil helpen om meer van dit soort posts te kunnen schrijven, overweeg dan om een kleine donatie te geven door op onderstaande knop te klikken.<br><!-- Begin PayPal Donations by https:\/\/www.tipsandtricks-hq.com\/paypal-donations-widgets-plugin -->\n\n<form action=\"https:\/\/www.paypal.com\/cgi-bin\/webscr\" method=\"post\" target=\"_blank\">\n    <div class=\"paypal-donations\">\n        <input type=\"hidden\" name=\"cmd\" value=\"_donations\" \/>\n        <input type=\"hidden\" name=\"bn\" value=\"TipsandTricks_SP\" \/>\n        <input type=\"hidden\" name=\"business\" value=\"Willem@Aandewiel.nl\" \/>\n        <input type=\"hidden\" name=\"return\" value=\"https:\/\/willem.aandewiel.nl\/index.php\/thank-you-for-your-donation\/\" \/>\n        <input type=\"hidden\" name=\"item_number\" value=\"YAPPgenerator\" \/>\n        <input type=\"hidden\" name=\"rm\" value=\"0\" \/>\n        <input type=\"hidden\" name=\"currency_code\" value=\"EUR\" \/>\n        <input type=\"image\" style=\"cursor: pointer;\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/09\/bmc-button-75.png\" name=\"submit\" alt=\"PayPal - The safer, easier way to pay online.\" \/>\n        <img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/www.paypalobjects.com\/en_US\/i\/scr\/pixel.gif\" width=\"1\" height=\"1\" \/>\n    <\/div>\n<\/form>\n<!-- End PayPal Donations -->\n<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Uitsparingen in de zes andere vlakken<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Let op!<\/p>\n<cite>Alle voorbeelden zijn gemaakt met versie 1.3 van de YAPPgenerator.<br>Vanaf versie 1.4 hebben de rijen in de cutouts array&#8217;s een extra parameter &#8220;angle&#8221;. Voor bestaande ontwerpen kan worden volstaan deze toe te voegen met de waarde &#8220;<strong>0<\/strong>&#8221; (nul) direct voor <em><strong>yappRectangle<\/strong><\/em> of <strong>yappCircle<\/strong>.<\/cite><\/blockquote>\n\n\n\n<p>Voor ieder vlak is er een array waarin per regel kan worden opgegeven waar uitsparingen moeten komen, wat de oorspring van zo\u2019n uitsparing is (voor rechthoeken) en wat voor vorm de uitsparing moet krijgen (rechthoek of cirkel).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Uitsparingen in het Front Plane<\/h3>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsFront.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsFront.png\" alt=\"\" class=\"wp-image-6783\" width=\"488\" height=\"211\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsFront.png 976w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsFront-300x129.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsFront-768x331.png 768w\" sizes=\"auto, (max-width: 488px) 100vw, 488px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Uitsparingen in het Back Plane<\/h3>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBack.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBack-1024x341.png\" alt=\"\" class=\"wp-image-6782\" width=\"512\" height=\"171\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBack-1024x341.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBack-300x100.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBack-768x256.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBack.png 1080w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Uitsparingen in het Lid Plane<\/h3>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLid.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLid-1024x508.png\" alt=\"\" class=\"wp-image-6785\" width=\"512\" height=\"254\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLid-1024x508.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLid-300x149.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLid-768x381.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLid.png 1108w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Uitsparingen in het Base Plane<\/h3>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBase.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBase-1024x526.png\" alt=\"\" class=\"wp-image-6784\" width=\"512\" height=\"263\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBase-1024x526.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBase-300x154.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBase-768x395.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsBase.png 1136w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Uitsparingen in het Left Plane<\/h3>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLeft.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLeft-1024x497.png\" alt=\"\" class=\"wp-image-6781\" width=\"512\" height=\"249\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLeft-1024x497.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLeft-300x146.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLeft-768x373.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsLeft.png 1085w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Uitsparingen in het Right Plane<\/h3>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsRight.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsRight-1024x362.png\" alt=\"\" class=\"wp-image-6780\" width=\"512\" height=\"181\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsRight-1024x362.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsRight-300x106.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsRight-768x271.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_cutoutsRight.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Rechthoekige uitsparing onder een hoek<\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangle40dgrs.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangle40dgrs-1024x513.png\" alt=\"\" class=\"wp-image-6890\" width=\"512\" height=\"257\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangle40dgrs-1024x513.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangle40dgrs-300x150.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangle40dgrs-768x385.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangle40dgrs.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><figcaption class=\"wp-element-caption\">Rechthoek gedraaid om de hoek x\/y<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangleCenter20dgrs-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangleCenter20dgrs-1-1024x532.png\" alt=\"\" class=\"wp-image-6892\" width=\"512\" height=\"266\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangleCenter20dgrs-1-1024x532.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangleCenter20dgrs-1-300x156.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangleCenter20dgrs-1-768x399.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/03\/yappRectangleCenter20dgrs-1.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><figcaption class=\"wp-element-caption\">Rechthoek gedraaid rond het midden (x\/y) [yappCenter]<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\"><br>Projectbox bevestigingen <\/h3>\n\n\n\n<p>Om je projectbox eenvoudig ergens op vast te kunnen zetten kun je zgn. &#8220;baseMounts&#8221; defini\u00ebren.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand.png\"><img loading=\"lazy\" decoding=\"async\" width=\"532\" height=\"212\" data-id=\"6827\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand.png\" alt=\"\" class=\"wp-image-6827\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand.png 532w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand-300x120.png 300w\" sizes=\"auto, (max-width: 532px) 100vw, 532px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand3D.png\"><img loading=\"lazy\" decoding=\"async\" width=\"638\" height=\"230\" data-id=\"6828\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand3D.png\" alt=\"\" class=\"wp-image-6828\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand3D.png 638w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/yappBaseStand3D-300x108.png 300w\" sizes=\"auto, (max-width: 638px) 100vw, 638px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><br><br>Connectoren om de twee helften te verbinden<\/h3>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-2 wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-thumbnail\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connectors.png\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" data-id=\"6779\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connectors-150x150.png\" alt=\"\" class=\"wp-image-6779\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connectors-150x150.png 150w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connectors-50x50.png 50w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-thumbnail\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connector_D.png\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" data-id=\"6778\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connector_D-150x150.png\" alt=\"\" class=\"wp-image-6778\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connector_D-150x150.png 150w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_connector_D-50x50.png 50w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-thumbnail\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-a.png\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" data-id=\"6791\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-a-150x150.png\" alt=\"\" class=\"wp-image-6791\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-a-150x150.png 150w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-a-50x50.png 50w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-thumbnail\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-b.png\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" data-id=\"6792\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-b-150x150.png\" alt=\"\" class=\"wp-image-6792\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-b-150x150.png 150w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/Ruthex-insert-b-50x50.png 50w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>De connectoren zijn ideaal om de twee helften met zgn. &#8220;inserts&#8221; met elkaar te verbinden.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Snap Joins<\/h3>\n\n\n\n<p>Met zgn. &#8220;snapJoins&#8221; klikken de Base en Lid helften in elkaar zonder dat daar schroefjes of andere dingen voor nodig zijn.<\/p>\n\n\n\n<figure class=\"wp-block-gallery aligncenter has-nested-images columns-1 is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJounsOnTOP.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"357\" data-id=\"6872\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJounsOnTOP-1024x357.png\" alt=\"\" class=\"wp-image-6872\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJounsOnTOP-1024x357.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJounsOnTOP-300x105.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJounsOnTOP-768x268.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJounsOnTOP.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSBS.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"370\" data-id=\"6871\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSBS-1024x370.png\" alt=\"\" class=\"wp-image-6871\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSBS-1024x370.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSBS-300x109.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSBS-768x278.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSBS.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p class=\"has-background has-medium-font-size\" style=\"background-color:#f7f40a\">Als je mij wil helpen om meer van dit soort posts te kunnen schrijven, overweeg dan om een kleine donatie te geven door op onderstaande knop te klikken.<br><!-- Begin PayPal Donations by https:\/\/www.tipsandtricks-hq.com\/paypal-donations-widgets-plugin -->\n\n<form action=\"https:\/\/www.paypal.com\/cgi-bin\/webscr\" method=\"post\" target=\"_blank\">\n    <div class=\"paypal-donations\">\n        <input type=\"hidden\" name=\"cmd\" value=\"_donations\" \/>\n        <input type=\"hidden\" name=\"bn\" value=\"TipsandTricks_SP\" \/>\n        <input type=\"hidden\" name=\"business\" value=\"Willem@Aandewiel.nl\" \/>\n        <input type=\"hidden\" name=\"return\" value=\"https:\/\/willem.aandewiel.nl\/index.php\/thank-you-for-your-donation\/\" \/>\n        <input type=\"hidden\" name=\"item_number\" value=\"YAPPgenerator\" \/>\n        <input type=\"hidden\" name=\"rm\" value=\"0\" \/>\n        <input type=\"hidden\" name=\"currency_code\" value=\"EUR\" \/>\n        <input type=\"image\" style=\"cursor: pointer;\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/09\/bmc-button-75.png\" name=\"submit\" alt=\"PayPal - The safer, easier way to pay online.\" \/>\n        <img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/www.paypalobjects.com\/en_US\/i\/scr\/pixel.gif\" width=\"1\" height=\"1\" \/>\n    <\/div>\n<\/form>\n<!-- End PayPal Donations -->\n<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Een echt voorbeeld<\/h1>\n\n\n\n<p>In dit voorbeeld gaan we een projectbox voor een Arduino UNO maken.<\/p>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/ArduinoUno.jpg\" alt=\"\" class=\"wp-image-6569\" width=\"480\" height=\"360\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/ArduinoUno.jpg 640w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/ArduinoUno-300x225.jpg 300w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/figure>\n<\/div>\n\n\n<p>We beginnen in openSCAD het bestand \u201c<code>YACC_template.scad<\/code>\u201d te openen en deze direct weer weg te schrijven (\u201c[Save as]&#8221;) met de naam \u201c<code>ArduinoUNO<\/code>\u201d. Controleer wel of het nieuwe bestand in de map \u201c<code>YAPP_Box-main<\/code>\u201d wordt weggeschreven.<\/p>\n\n\n\n<p>Pas nu commentaar regels boven in het bestand aan zodat duidelijk is dat met dit bestand een projectbox voor een Arduino UNO kan worden gegenereerd.<\/p>\n\n\n\n<p>Met de eerste echte code-regel wordt de YACC generator ingevoegd waarna de <code>YAPPgenerate()<\/code> module uit deze library gebruikt kan worden.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">include &lt;.\/library\/YAPPgenerator_v10.scad><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Buitenmaten en standoff&#8217;s<\/h2>\n\n\n\n<p>Nu moeten \u00e9\u00e9n voor \u00e9\u00e9n alle variabelen die de uiteindelijke projectbox bepalen opgemeten en in het &#8220;<code>ArduinoUNO.scad<\/code>&#8221; bestand worden ingevoerd.<\/p>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_holes.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_holes-1024x721.png\" alt=\"\" class=\"wp-image-6607\" width=\"512\" height=\"361\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_holes-1024x721.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_holes-300x211.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_holes-768x541.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_holes.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">pcbLength      = 68.5;\npcbWidth       = 53.3;\npcbThickness   =  1.5;\n                            \npcbStands =   [\n                  [14.0,  2.5, yappBoth,       yappPin]  \/\/ back-left\n                , [15.3, 50.7, yappBaseOnly,   yappPin]  \/\/ back-right\n                , [66.1,  7.6, yappBoth,       yappPin]  \/\/ front-left\n                , [66.1, 35.5, yappBoth,       yappPin]  \/\/ front-right\n              ];\n\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Connectoren<\/h2>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_connectors.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_connectors-730x1024.png\" alt=\"\" class=\"wp-image-6608\" width=\"365\" height=\"512\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_connectors-730x1024.png 730w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_connectors-214x300.png 214w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_connectors-768x1077.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_connectors.png 856w\" sizes=\"auto, (max-width: 365px) 100vw, 365px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>De hoogte van zowel de USB plug als de powerJack is 11mm.<br>Om wat speling in te bouwen laten we de USB plug en de powerJack 1mm dichter bij de X-as beginnen en maken we de breedte van de uitsparing voor de USB plug 2mm groter en die voor de powerJack 3mm. Ook de lengte van beide uitsparingen maken we iets groter.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cutoutsLid =  [  [0, 31.5-1, 12.2+2, 11.0, yappRectOrg]   \/\/ USB\n               , [0,  3.5-1, 12.0,   13.5, yappRectOrg]   \/\/ Power Jack\n              ];\n\ncutoutsBack = [\n                 [31.5-1, -1, 12.2+2, 12, yappRectOrg]    \/\/ USB\n               , [ 3.5-1,  0, 12.0,   11, yappRectOrg]    \/\/ Power Jack\n              ];\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Headers en ATmega<\/h2>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_headers.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_headers-1024x800.png\" alt=\"\" class=\"wp-image-6612\" width=\"512\" height=\"400\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_headers-1024x800.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_headers-300x234.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_headers-768x600.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_ArduinoUNO_headers.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cutoutsLid =  [\n                 [0,      31.5-1, 12.2+2, 11.0,   yappRectOrg]  \/\/ USB\n               , [0,       3.5-1, 12.0,   13.5,   yappRectOrg]  \/\/ Power Jack\n               , [29-1,   12.5-1, 8.5+2,  35.0+2, yappRectOrg]  \/\/ ATmega328\n               , [17.2-1, 49.5-1, 5.0,    47.4+2, yappRectOrg]  \/\/ right headers\n               , [26.5-1,  1.0-1, 5.0,    38.0+2, yappRectOrg]  \/\/ left headers\n              ]\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Overige uitsparingen<\/h2>\n\n\n\n<p>Tenslotte moeten de posities en grootte van de ICSP connectoren, reset button en LEDjes worden opgemeten.<\/p>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPPdesign.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2021\/12\/YAPPdesign.gif\" alt=\"\" class=\"wp-image-6632\" width=\"360\" height=\"203\"\/><\/a><\/figure>\n<\/div>\n\n\n<p>De totale definitie van de <em>cutoutsLid<\/em> array ziet er dan zo uit:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">cutoutsLid =  [\n                 [0,      31.5-1, 12.2+2, 11.0,   yappRectOrg]    \/\/ USB \n               , [0,       3.5-1, 12.0,   13.5,   yappRectOrg]    \/\/ Power Jack\n               , [29.0-1, 12.5-1, 8.5+2,  35+2,   yappRectOrg]    \/\/ ATmega328\n               , [17.2-1, 49.5-1, 5.0,    47.4+2, yappRectOrg]    \/\/ right headers\n               , [26.5-1,  1.0-1, 5.0,    38.0+2, yappRectOrg]    \/\/ left headers\n               , [65.5,   28.5,   8.0,     5.5,   yappRectCenter] \/\/ ICSP1\n               , [18.0,   45.5,   6.5,     8.0,   yappRectCenter] \/\/ ICSP2\n               , [6.0,    49.0,   8.0,     0.0,   yappCircle]     \/\/ reset button\n\/\/-- if space between pcb and lidPlane > 5.5 we don't need holes for the elco's --\n\/\/             , [18.0,    8.6,   7.2,     0.0,   yappCircle]     \/\/ elco1\n\/\/             , [26.0,    8.6,   7.2,     0.0,   yappCircle]     \/\/ elco2\n\/\/             , [21.5,    8.6,   7.2,     7.0,   yappRectCenter] \/\/ connect elco's\n               , [28.2,   35.2,   5.0,     3.5,   yappRectCenter] \/\/ TX\/RX leds\n               , [28.2,   42.5,   3.0,     3.5,   yappRectCenter] \/\/ led13\n               , [58.5,   37.0,   3.0,     3.5,   yappRectCenter] \/\/ ON led\n              ];\n<\/pre>\n\n\n\n<figure class=\"wp-block-gallery alignright has-nested-images columns-default is-cropped wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"6640\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box-1024x768.jpg\" alt=\"\" class=\"wp-image-6640\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box-1024x768.jpg 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box-300x225.jpg 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box-768x576.jpg 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-5 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box_2-rotated.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" data-id=\"6639\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box_2-768x1024.jpg\" alt=\"\" class=\"wp-image-6639\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box_2-768x1024.jpg 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box_2-225x300.jpg 225w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_Arduino_box_2-rotated.jpg 900w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>Om nu de projectbox ook daadwerkelijk te genereren moet onderaan het programma deze module-aanroep worden gezet:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">    \/\/--- this is where the magic happens ---\n    YAPPgenerate();<\/pre>\n\n\n\n<p>Klik vervolgens op [F5] of [F6] om het resultaat van je werkt te zien.<br><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Tweede voorbeeld (Wemos bordje)<\/h1>\n\n\n\n<p>In dit voorbeeld maken we een projectbox voor een Wemos D1 mini (V3.0.0).<br>Uitganspunt is weer het <code>YAPP_template.scad<\/code> bestand wat we inlezen en direct weer wegschrijven als &#8220;<code>WemosD1Mini.scad<\/code>&#8220;.<\/p>\n\n\n\n<p>Eerst moeten we weer alle maten opmeten.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-6 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_v3_top.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"6665\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_v3_top-1024x768.jpg\" alt=\"\" class=\"wp-image-6665\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_v3_top-1024x768.jpg 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_v3_top-300x225.jpg 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_v3_top-768x576.jpg 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_v3_top.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Minit_v3_front.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" data-id=\"6664\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Minit_v3_front-1024x768.jpg\" alt=\"\" class=\"wp-image-6664\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Minit_v3_front-1024x768.jpg 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Minit_v3_front-300x225.jpg 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Minit_v3_front-768x576.jpg 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Minit_v3_front.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<p>De &#8220;<em>buitenmaten<\/em>&#8221; worden boven in het script gezet.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">wallThickness        = 1.5;\nbasePlaneThickness   = 1.0;\nlidPlaneThickness    = 1.0;\n\nbaseWallHeight       = 4;\nlidWallHeight        = 4;\n\npcbLength            = 35.0;\npcbWidth             = 26.0;\npcbThickness         = 1.0;\n                            \n\/\/ padding between pcb and inside wall\npaddingFront         = 1;\npaddingBack          = 1;\npaddingRight         = 1.5;\npaddingLeft          = 1.5;\n\n\/\/ ridge where base and lid off box can overlap\n\/\/ Make sure this isn't less than lidWallHeight\nridgeHeight          = 3;\nridgeSlack           = 0.1;   \/\/ afhankelijk van de Nozzle diameter\n\n\/\/ How much the PCB needs to be raised from the base\n\/\/ to leave room for solderings and whatnot\nstandoffHeight       = 2.0;\npinDiameter          = 1.8;\npinHoleSlack         = 0.2;\nstandoffDiameter     = 4;\n<\/pre>\n\n\n\n<p>De posities en grootte van de uitsparingen worden opgenomen in de <code>cutoutsLid<\/code>, <code>cutoutsBase<\/code>, <code>cutoutsFront<\/code> en <code>cutoutsRight<\/code> array&#8217;s.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/-- pcbStandoffs  -- origin is pcb-0,0\npcbStands =     [\n                    [3.4,  3.0,                yappBoth, yappPin]  \/\/ back-left\n                  , [3.4,  pcbWidth-3,         yappBoth, yappHole] \/\/ back-right\n                  , [pcbLength-3, 7.5,         yappBoth, yappHole] \/\/ front-left\n                  , [pcbLength-3, pcbWidth-3,  yappBoth, yappPin]  \/\/ front-right\n                ];\n\n\/\/-- front plane  -- origin is pcb-0,0 (red)\ncutoutsFront =  [\n                    [14.0, 1.0, 12.0, 10.0, yappRectCenter]  \/\/ microUSB\n                ];\n\n\/\/-- top plane    -- origin is pcb-0,0\ncutoutsLid =    [\n                    [6.0,  -1.0,        6.0, (pcbLength-12), yappRectOrg]   \/\/ left-header\n                  , [6.0,  pcbWidth-4,  6.0, pcbLength-12,   yappRectOrg]   \/\/ right-header\n                  , [18.7, 8.8,         2.0, 0.0,            yappCircle]    \/\/ blue led\n                ];\n\n\/\/-- bottom plane -- origin is pcb-0,0\ncutoutsBase =   [\n                    [6.0, -1.0,       6.0, pcbLength-12, yappRectOrg]      \/\/ left-header\n                  , [6.0, pcbWidth-4, 6.0, pcbLength-12, yappRectOrg]      \/\/ right-header\n                ];\n\n\/\/-- left plane   -- origin is pcb-0,0\ncutoutsLeft =   [\n                    [31.0, 0.5, 4.5, 3, yappRectCenter]      \/\/ reset button\n                ];\n<\/pre>\n\n\n\n<p>Merk op dat er maar twee gaten in de printplaat zitten. Om de printplaat toch op zijn plaats te houden worden en wel vier pcbStand gemaakt maar twee daarvan hebben geen pennen. Omdat in de linker-voorhoek een reset switch zit moet de pcbStand in deze hoek ook op een iets verschoven plek komen.<\/p>\n\n\n\n<p>Als laatste moet de YAPPgenerate() module worden aangeroepen:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  \/\/--- this is where the magic happens ---\n  YAPPgenerate();\n<\/pre>\n\n\n\n<p>Druk vervolgens op [F5] of [F6] om te controleren of de projectbox er uitziet zoals je bedacht hebt.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-2 is-cropped wp-block-gallery-7 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_box_F5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"792\" data-id=\"6670\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_box_F5-1024x792.png\" alt=\"\" class=\"wp-image-6670\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_box_F5-1024x792.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_box_F5-300x232.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_box_F5-768x594.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_box_F5.png 1038w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/WemosD1mini.png\"><img loading=\"lazy\" decoding=\"async\" width=\"986\" height=\"777\" data-id=\"6868\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/WemosD1mini.png\" alt=\"\" class=\"wp-image-6868\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/WemosD1mini.png 986w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/WemosD1mini-300x236.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/WemosD1mini-768x605.png 768w\" sizes=\"auto, (max-width: 986px) 100vw, 986px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"712\" data-id=\"6672\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox2-1024x712.png\" alt=\"\" class=\"wp-image-6672\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox2-1024x712.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox2-300x209.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox2-768x534.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox2.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"619\" data-id=\"6673\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox1-1024x619.png\" alt=\"\" class=\"wp-image-6673\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox1-1024x619.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox1-300x181.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox1-768x464.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/WemosD1Mini_inBox1.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h1 class=\"wp-block-heading\"><br>Debug opties<\/h1>\n\n\n\n<p>Er zijn verschillende mogelijkheden om extra informatie over de gegenereerde projectbox te bekijken zodat al tijdens de ontwerp fase gecontroleerd kan worden of het script doet wat het moet doen.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">printLidShell         = true;\nprintBaseShell        = true;\n\n\/\/-- D E B U G -------------------- default\nshowSideBySide      = false;       \/\/-> true\nonLidGap            = 1;\nshiftLid            = 0;\nhideLidWalls        = true;       \/\/-> false\ncolorLid            = \"yellow\";   \nhideBaseWalls       = true;       \/\/-> false\ncolorBase           = \"white\";\nshowPCB             = false;      \/\/-> false\nshowPCBmarkers      = false;      \/\/-> false\ninspectX            = 0;  \/\/-> 0=none (>0 from front, &lt;0 from back)\ninspectY            = 0;\n\/\/-- D E B U G -------------------\n\n<\/pre>\n\n\n\n<p>De eerste twee variabelen (<code>printLid<\/code> en <code>printBase<\/code>) geven aan of de bovenste helft van de projectbox of de onderste helft geprint moeten worden. Dit kan handig zijn als je 3D printer niet groot genoeg is om beide helften naast elkaar te printen of als je alleen in \u00e9\u00e9n van de twee aanpassingen hebt aangebracht en (dus) alleen die helft opnieuw wilt 3D printen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><br>showSideBySide<\/h2>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-8 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_true.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"671\" data-id=\"6674\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_true-1024x671.png\" alt=\"\" class=\"wp-image-6674\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_true-1024x671.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_true-300x197.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_true-768x504.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_true.png 1063w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_false.png\"><img loading=\"lazy\" decoding=\"async\" width=\"748\" height=\"465\" data-id=\"6675\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_false.png\" alt=\"\" class=\"wp-image-6675\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_false.png 748w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_side_by_side_false-300x186.png 300w\" sizes=\"auto, (max-width: 748px) 100vw, 748px\" \/><\/a><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">showSidebySide=true          |           showSideBySide=false<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><br>hideLidShell \/ hideBaseShell<\/h2>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-9 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_TB_false.png\"><img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"340\" data-id=\"6676\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_TB_false.png\" alt=\"\" class=\"wp-image-6676\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_TB_false.png 720w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_TB_false-300x142.png 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_T_false.png\"><img loading=\"lazy\" decoding=\"async\" width=\"794\" height=\"425\" data-id=\"6677\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_T_false.png\" alt=\"\" class=\"wp-image-6677\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_T_false.png 794w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_T_false-300x161.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_show_T_false-768x411.png 768w\" sizes=\"auto, (max-width: 794px) 100vw, 794px\" \/><\/a><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">hideLidShell=true, hideBaseShell=true           |            hideLidShell=true, hideBaseShell=false<\/figcaption><\/figure>\n\n\n\n<p>Deze instelling geeft inzicht in de &#8220;binnenkant&#8221; van de projectbox.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><br>showPCB<\/h2>\n\n\n\n<p>Deze optie is vooral handig in de side-by-side presentatie of als showLid en\/of showBase &#8220;false&#8221; zijn.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-10 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB_SideBySide.png\"><img loading=\"lazy\" decoding=\"async\" width=\"940\" height=\"458\" data-id=\"6678\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB_SideBySide.png\" alt=\"\" class=\"wp-image-6678\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB_SideBySide.png 940w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB_SideBySide-300x146.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB_SideBySide-768x374.png 768w\" sizes=\"auto, (max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1010\" height=\"512\" data-id=\"6679\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB.png\" alt=\"\" class=\"wp-image-6679\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB.png 1010w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB-300x152.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showPCB-768x389.png 768w\" sizes=\"auto, (max-width: 1010px) 100vw, 1010px\" \/><\/a><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">showPCB=true, showSideBySide=true          |         showPCB=true, showSideBySide=false<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><br>showPCBmarkers<\/h2>\n\n\n\n<p>Markers worden weergegeven op de vier hoeken van de printplaat en op de linker-achterhoek van de box.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-11 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkers.png\"><img loading=\"lazy\" decoding=\"async\" width=\"663\" height=\"509\" data-id=\"6680\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkers.png\" alt=\"\" class=\"wp-image-6680\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkers.png 663w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkers-300x230.png 300w\" sizes=\"auto, (max-width: 663px) 100vw, 663px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkersSbyS.png\"><img loading=\"lazy\" decoding=\"async\" width=\"938\" height=\"430\" data-id=\"6681\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkersSbyS.png\" alt=\"\" class=\"wp-image-6681\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkersSbyS.png 938w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkersSbyS-300x138.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_showMarkersSbyS-768x352.png 768w\" sizes=\"auto, (max-width: 938px) 100vw, 938px\" \/><\/a><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">showMarkers=true<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><br>inspectX \/ inspectY<\/h2>\n\n\n\n<p>Met een waarde van +1 t\/m +pcbLength of -1 t\/m -pcbLength wordt een doorsnede van de projectbox getoond.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-12 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect_17.png\"><img loading=\"lazy\" decoding=\"async\" width=\"978\" height=\"598\" data-id=\"6683\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect_17.png\" alt=\"\" class=\"wp-image-6683\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect_17.png 978w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect_17-300x183.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect_17-768x470.png 768w\" sizes=\"auto, (max-width: 978px) 100vw, 978px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"855\" height=\"530\" data-id=\"6682\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect-6.png\" alt=\"\" class=\"wp-image-6682\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect-6.png 855w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect-6-300x186.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/01\/YAPP_intersect-6-768x476.png 768w\" sizes=\"auto, (max-width: 855px) 100vw, 855px\" \/><\/a><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">inspectX positief             |             inspectX negatief<\/figcaption><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Andere voorbeelden<\/h1>\n\n\n\n<p>In speciale gevallen wil je de mogelijkheid hebben om objecten te maken die niet met de standaard array&#8217;s kunnen worden gemaakt. Daarvoor zijn er vier zgn. &#8220;hooks&#8221; die het mogelijk maken om deze speciale objecten in de projectbox of buiten de projectbox te defini\u00ebren. Deze hooks heten:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>lidHookInside()<\/li>\n\n\n\n<li>lidHookOutside()<\/li>\n\n\n\n<li>baseHookInside()<\/li>\n\n\n\n<li>baseHookOutside<\/li>\n<\/ul>\n\n\n\n<p>Stel je hebt, op het PCB twee drukknopjes die je uiteraard wilt kunnen bedienen als het PCB in de projectbox zit. Hiervoor moeten drie zaken geregeld worden.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In het lid moeten twee ronde gaten komen;<\/li>\n\n\n\n<li>Aan de binnenkant van het lid moeten twee ronde geleiders komen voor de &#8220;switchExtenders&#8221;;<\/li>\n\n\n\n<li>De switchExtenders moeten geprint worden. Omdat deze niet in verbinding met de projectbox staan kunnen deze in een apart scad bestand worden opgenomen of gewoon &#8220;naast de projectbox&#8221; worden geprint.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-2 wp-block-gallery-13 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"564\" height=\"274\" data-id=\"6814\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside2.png\" alt=\"\" class=\"wp-image-6814\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside2.png 564w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside2-300x146.png 300w\" sizes=\"auto, (max-width: 564px) 100vw, 564px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Db.png\"><img loading=\"lazy\" decoding=\"async\" width=\"431\" height=\"188\" data-id=\"6819\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Db.png\" alt=\"\" class=\"wp-image-6819\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Db.png 431w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Db-300x131.png 300w\" sizes=\"auto, (max-width: 431px) 100vw, 431px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"491\" height=\"403\" data-id=\"6818\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside1.png\" alt=\"\" class=\"wp-image-6818\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside1.png 491w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside1-300x246.png 300w\" sizes=\"auto, (max-width: 491px) 100vw, 491px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Da.png\"><img loading=\"lazy\" decoding=\"async\" width=\"545\" height=\"406\" data-id=\"6815\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Da.png\" alt=\"\" class=\"wp-image-6815\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Da.png 545w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/lidHooksInside3Da-300x223.png 300w\" sizes=\"auto, (max-width: 545px) 100vw, 545px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/SwitchExtenders3D.png\"><img loading=\"lazy\" decoding=\"async\" width=\"364\" height=\"318\" data-id=\"6817\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/SwitchExtenders3D.png\" alt=\"\" class=\"wp-image-6817\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/SwitchExtenders3D.png 364w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/SwitchExtenders3D-300x262.png 300w\" sizes=\"auto, (max-width: 364px) 100vw, 364px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/SwitchExtenders.png\"><img loading=\"lazy\" decoding=\"async\" width=\"241\" height=\"191\" data-id=\"6816\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/SwitchExtenders.png\" alt=\"\" class=\"wp-image-6816\"\/><\/a><\/figure>\n<\/figure>\n\n\n\n<p><br>Voor een ESP-CAM wil je een mogelijkheid maken om deze &#8220;tiltbaar&#8221; op een voet te zetten. Hiervoor kun je de &#8220;lid- of baseHookOutside&#8221; modules gebruiken.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-2 wp-block-gallery-14 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"525\" height=\"524\" data-id=\"6840\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside-1.png\" alt=\"\" class=\"wp-image-6840\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside-1.png 525w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside-1-300x300.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside-1-150x150.png 150w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside-1-50x50.png 50w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside3D.png\"><img loading=\"lazy\" decoding=\"async\" width=\"448\" height=\"454\" data-id=\"6824\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside3D.png\" alt=\"\" class=\"wp-image-6824\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside3D.png 448w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside3D-296x300.png 296w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/baseHookOutside3D-50x50.png 50w\" sizes=\"auto, (max-width: 448px) 100vw, 448px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/ESP-CAM-Stand3D.png\"><img loading=\"lazy\" decoding=\"async\" width=\"698\" height=\"538\" data-id=\"6822\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/ESP-CAM-Stand3D.png\" alt=\"\" class=\"wp-image-6822\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/ESP-CAM-Stand3D.png 698w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/ESP-CAM-Stand3D-300x231.png 300w\" sizes=\"auto, (max-width: 698px) 100vw, 698px\" \/><\/a><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">Het scad bestand voor de stand staat op github<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><br>Snap Joins<\/h2>\n\n\n\n<p>Een &#8220;snapJoin&#8221; is een gat in het Lid waar een uitstulping in de Base precies in past. Hiermee klik je het Lid vast aan de Base zonder schroefjes of iets anders.<\/p>\n\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins1-1024x384.png\" alt=\"\" class=\"wp-image-6848\" width=\"512\" height=\"192\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins1-1024x384.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins1-300x113.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins1-768x288.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins1.png 1200w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/a><\/figure>\n<\/div>\n\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins2-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins2-1.png\" alt=\"\" class=\"wp-image-6852\" width=\"403\" height=\"275\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins2-1.png 806w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins2-1-300x205.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoins2-1-768x524.png 768w\" sizes=\"auto, (max-width: 403px) 100vw, 403px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Vaak wil je aan \u00e9\u00e9n of twee kanten dat de snapJoins symmetrisch worden aangebracht. Dit kan door in een snapJoin-rij als laatste argument &#8220;yappSymmetric&#8221; op te geven.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"247\" src=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSymetric-2-1024x247.png\" alt=\"\" class=\"wp-image-6853\" srcset=\"https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSymetric-2-1024x247.png 1024w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSymetric-2-300x73.png 300w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSymetric-2-768x186.png 768w, https:\/\/willem.aandewiel.nl\/wp-content\/uploads\/2022\/02\/snapJoinsSymetric-2.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">yappSymmetric<\/figcaption><\/figure>\n\n\n\n<p>Let op: snapJoins kunnen alleen worden aangemaakt als de ridgeHeight niet kleiner is dan 3mm!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ ] Yet Another Parametric Projectbox generator Here you can find an English version of this post. Bij iedere elektronische schakeling die ik maak komt er een moment dat het project \u201caf\u201d is \u2026. bijna! De laatste stap is altijd &hellip; <a href=\"https:\/\/willem.aandewiel.nl\/index.php\/2022\/01\/01\/nog-een-geparameteriseerde-projectbox-generator\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[153,2,3,6,10,15],"tags":[149,152,80,150,151],"class_list":["post-6565","post","type-post","status-publish","format-standard","hentry","category-3d-printing","category-arduino","category-computer","category-esp8266","category-hardware","category-scripts","tag-3d","tag-generator","tag-pcb","tag-yapp","tag-yet-anaother-parametric-projectbox-generator"],"views":11753,"_links":{"self":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts\/6565","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/comments?post=6565"}],"version-history":[{"count":88,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts\/6565\/revisions"}],"predecessor-version":[{"id":7935,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/posts\/6565\/revisions\/7935"}],"wp:attachment":[{"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/media?parent=6565"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/categories?post=6565"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/willem.aandewiel.nl\/index.php\/wp-json\/wp\/v2\/tags?post=6565"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}