Skip to content

Yet Another Parametric Projectbox Box

License

Notifications You must be signed in to change notification settings

id10tapproved/YAPP_Box

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YAPP_Box

Yet Another Parametric Projectbox generator

Rev. 1.4 is the latest version.

This release breaks with previous releases in the extra parm "angle" in all the cutouts array's!!!

All plane array's now have this syntax:

//-- plane    -- origin is pcb[0,0,0]
// (0) = posx
// (1) = posy
// (2) = width
// (3) = length
// (4) = angle
// (5) = { yappRectangle | yappCircle }
// (6) = { yappCenter }

For your box to work with this release you have to add this extra parm (as "0") to all your cutOut-array-row's

THIS IS WORK IN PROGRESS!!

See: This Post (English) or This Post (in Dutch)


I have done my best but it can probably be done simpler. So, if you think you can help please contact me or make a Pull request.

TO DO

  • I want rounded corners! Do you have an idear howto do that?? (done)
  • modules (Hooks) that can be (re)defined by the user (almost there ;-)) (done)
  • screw connector between the top- and bottomPlanes (for bigger boxes) (done)
  • snap-ons in the ridges (done)
  • Rotate rectangular cutOuts (orientation) v1.4
  • anything else? Anyone?

How to program your Project Box

It all starts with some dimensions of the pcb you want your Project Box for and some other dimensions:

printBaseShell      = true;
printLidShell       = true;

// Edit these parameters for your own board dimensions
wallThickness       = 1.0;
basePlaneThickness  = 1.0;
lidPlaneThickness   = 1.0;

// Total height of box = basePlaneThickness + lidPlaneThickness 
//                     + baseWallHeight + lidWallHeight

baseWallHeight      = 7;
lidWallHeight       = 4;

pcbLength           = 88;
pcbWidth            = 49;
pcbThickness        = 1.5;
                            
// padding between pcb and inside wall
paddingFront        = 4;
paddingBack         = 1;
paddingRight        = 1;
paddingLeft         = 1;

// ridge where Base- and Lid- off the box can overlap
// Make sure this isn't less than lidWallHeight
ridgeHeight         = 3;
ridgeSlack          = 0.2;
roundRadius         = 2.0;  // don't make this to big..

//-- How much the PCB needs to be raised from the base
//-- to leave room for solderings and whatnot
standoffHeight      = 5.0;
pinDiameter         = 1.0;
pinHoleSlack        = 0.5;
standoffDiameter    = 4;

You probably want some cutouts in your box for connectors and stuff. For every plane (side) of the Project Box there is an array that holds the cutouts for that plane.

These examples are made with Rev. 1.3!

For Rev. 1.4 to work you need to add the extra parm angle in all cutouts array's!!

A picture is worth a thousand words ...

cutouts in the Right Plane:

YAPP_cutoutsRight

cutouts in the Left Plane:

YAPP_cutoutsLeft

cutouts in the Back Plane:

YAPP_cutoutsBack

cutouts in the Front Plane:

YAPP_cutoutsFront

cutouts in the Base:

YAPP_cutoutsBase

cutouts in the Lid:

YAPP_cutoutsLid

Using the (new) angle parm (rotate around the x/y corner):

yappRectangle40dgrs

With yappCenter the rectangle will rotate around it's center point:

yappRectangleCenter10dgrs

Base mounts:

Screenshot 2022-01-25 at 11 25 46

pcbStands:

pcbStands fixate the PCB between the base and the lid. YAPP_pcbStands

Connectors between Base and Lid:

YAPP_connectors

YAPP_connector_D

Inserts are great for making a screw connection between the base and the lid. Ruthex-insert-a

Thats it! Press F5 or F6 to see the results of your work!

Snap Joins:

snapJoins1

snapJoins2

Snap Joins Symmetrical:

snapJoinsSymetric

(more) Base Mounts:

yappBaseStand

yappBaseStand3D

Hooks:

There are two type of "hooks"; at the inside of the box or at the outside of the box

baseHookOutside():

baseHookOutside

baseHookOutside3D

lidHookInside():

lidHooksInside1

lidHooksInside3Db

lidHooksInside3Da

About

Yet Another Parametric Projectbox Box

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • OpenSCAD 100.0%