OpenUPS2 Case (parametric)
A two-part snap-fit enclosure for the OpenUPS2 board (PCB 115.2 x 69.85 mm). The lid clips onto the base with printed snap latches and is secured by 4x M3 screws that go into the board's own threaded standoffs. Optional cross-shaped honeycomb vents (applied as a slicer modifier) and optional printed screw feet are included.
WHAT'S IN THE BOX
- openups2_base.stl - base shell (with screw countersinks). Print 1x.
- openups2_lid.stl - lid shell (snap latches, 11 mm hole). Print 1x.
- openups2_screw_feet.stl - 4 optional cylindrical screw feet (cylindrical head pocket, NOT countersunk).
- openups2_vent_base.stl - cross-shaped vent volume for the base, used as a slicer modifier (see Ventilation).
- openups2_vent_lid.stl - cross-shaped vent volume for the lid, used as a slicer modifier.
- openups2_all_in_one.stl - everything in one file (base + lid + 4 feet + both vent crosses) in their correct relative positions; Split to Objects in the slicer (see All-in-one file).
- openups2_case.scad - full parametric source, edit and re-render to fit your own needs.
The two vent STLs are optional. If you don't want ventilation, just print the base and the lid and ignore them.
REQUIRED HARDWARE (not 3D-printed)
This is just the enclosure - you provide the electronics and the fasteners:
- OpenUPS2 board - Mini-Box.com OpenUPS2 intelligent DC-DC UPS:
https://www.mini-box.com/OpenUPS2
- Panel-mount USB-C cable - round snap-in USB-C female pigtail that clips into the 11 mm hole in the lid. IMPORTANT: choose the 4-pin cable version.
https://aliexpress.ru/item/1005006256311650.html?sku_id=12000036491630926
- Push button PBS33B - small momentary push button (power/control):
https://aliexpress.ru/item/1005005843833260.html?sku_id=12000034548462837
- Board connector (2 mm pitch) - the OpenUPS2 uses Mini-Box MU-2F / MU-5F style connectors. A matching 2 mm-pitch connector:
https://aliexpress.ru/item/1005004599055260.html
Note: you will need a crimping tool for this connector. It is probably easier to buy a 2 mm-pitch connector that already comes with wires (a ready-made pigtail).
No-crimp alternative: with a hobby/utility knife you can release the wires from the connector housing of the bundled USB-C cable and insert into it the pins from a purchased USB connector - i.e. re-pin the existing housing instead of crimping new terminals:
https://aliexpress.ru/item/1_75422970.html
- 4x M3 screws - flat-head (DIN 965) for the base countersinks, or pan/socket-head if you use the printed screw feet.
Optional - power input & external-device connectors (they fit the two rectangular openings on the back wall):
https://aliexpress.ru/item/1005010167875223.html?sku_id=12000051386573709
https://aliexpress.ru/item/1005003062513640.html
PRINTING
- Material: PC-ABS, or another flame-retardant (UL94 V-0) filament - e.g. flame-retardant ABS / PC / PA, or PC-ABS FR.
- Layer height: 0.2 mm
- Walls / perimeters: 3
- Top/bottom layers: 4 / 4 (but see the vent modifier below)
- Infill: 15-20 %
- Supports: none needed
MATERIAL MATTERS HERE. This enclosure houses an OpenUPS2 with LiFePO4 cells, so it can get warm and, in a fault, hot. Use a flame-retardant, heat-resistant material - PC-ABS or any UL94 V-0 rated filament - and AVOID PLA (low glass-transition temperature, not self-extinguishing). PC-ABS typically needs about 260-280 C nozzle, 100-110 C bed and an enclosed printer; follow your filament's datasheet.
Orientation (as exported):
- Base: outer bottom on the plate, walls up.
- Lid: already flipped so its outer (top) face is on the plate, walls up.
- Screw feet: stand on the plate; the cylindrical head pocket opens upward, so they print without supports. Flip them in use so the pocket faces the screw head.
The snap fit is tuned with ridgeSlack = 0.15. If the lid is too tight or too loose after printing, re-render the .scad with a larger/smaller ridgeSlack.
ALL-IN-ONE FILE
openups2_all_in_one.stl contains every solid in one mesh, each in its correct relative position: the base, the lid, the 4 screw feet, and the two vent crosses (floating just above the base and lid planes). Use it if you'd rather load one file instead of five.
1. Import openups2_all_in_one.stl.
2. Right-click, then Split, then To Objects. You get 8 separate objects: base, lid, 4 feet, base vent cross, lid vent cross.
3. Decide what you need and delete the rest:
- No ventilation? Delete both vent crosses.
- Not using printed feet? Delete the 4 feet.
4. Arrange / auto-arrange the parts you keep on the plate. The base and lid are already flipped/oriented for printing; the feet stand upright.
5. If you keep a vent cross, pair it with its part and follow Ventilation below (the cross and its part are already aligned in X/Y, so you only need to drop the cross to the plate and turn it into a Modifier).
The separate per-part STLs (openups2_base.stl, etc.) are the simpler route if you don't want to split objects - use whichever you prefer.
VENTILATION VIA A HONEYCOMB MODIFIER (OrcaSlicer)
The vent STL files are not holes - they are cross-shaped volumes you attach to the base/lid as a modifier, then give that volume a honeycomb infill with no top/bottom skins. The plane under the cross then prints as an open honeycomb mesh = ventilation.
Do this once for the base and once for the lid:
1. Import the part and its vent file together, e.g. openups2_base.stl + openups2_vent_base.stl. They are pre-aligned in X/Y. (If they arrive as a single object, right-click, Split, To Objects so the cross becomes its own object.)
2. Land the cross on the plate: select the cross and use Place on bed / drop it to Z=0, so its bottom touches the plate and it overlaps the part's bottom layers.
3. Combine the cross with the part: in the object list, drag the cross onto the part (base + cross, and lid + cross), so the cross becomes a sub-volume of the part.
4. Make the cross a Modifier: set the combined sub-volume's type to Modifier (not a normal/solid part).
5. Enable honeycomb for that modifier only:
- Sparse infill pattern: Honeycomb
- Sparse infill density: e.g. 20 % (tune to taste)
- Top shell layers: 0, Bottom shell layers: 0
6. Slice. Only the cross region of the plane becomes a honeycomb grille; the rest of the part keeps your normal settings.
Repeat for the lid with openups2_lid.stl + openups2_vent_lid.stl.
Tip: increase the density or reduce wall/skin to taste. If you want fully open slots instead of a mesh, set the modifier's sparse density low and top/bottom layers to 0.
ASSEMBLY
1. Drop the board onto the base; fasten it with 4x M3 screws into the board's threaded standoffs. The base has conical countersinks for flat-head (DIN 965) M3 screws.
2. (Optional) If you prefer pan/socket-head screws and want to raise the case, print the screw feet and put one foot under each screw - the head sits in a straight cylindrical pocket instead of a countersink.
3. Press the lid onto the base - the snap latches on the long sides hold it closed.
CUSTOMIZING THE CASE
The case is generated with YAPPgenerator (Yet Another Parametric Projectbox generator) by Willem Aandewiel - https://github.com/mrWheel/YAPP_Box - version v3.3.8, MIT licensed. openups2_case.scad is only the configuration; the generator does the heavy lifting.
To re-render or modify:
1. Install OpenSCAD: https://openscad.org
2. Download YAPPgenerator_v3.scad (v3.3.8) from the YAPP repo above and place it next to openups2_case.scad (the file starts with: include <./YAPPgenerator_v3.scad>).
3. Open openups2_case.scad and edit the parameters, then Render (F6) and export STL.
Useful parameters (clearly sectioned in the file):
- Board / box size: pcbLength, pcbWidth, padding, wallThickness, baseWallHeight, lidWallHeight.
- Lid fit: ridgeSlack (smaller = tighter snap grip), snapJoins (latch positions/width).
- Vents (cross shape): baseVent* and lidVent* blocks - each arm's start/end is given as [start, end] relative to the PCB sides, so the cross can be off-center; Corner rounds the arm ends and the inner armpits, Height / *Lift set the modifier thickness.
- Screw feet: footDia, footHeight, footHeadDia, footHeadDepth, footScrewDia.
- What to render/export: printBaseShell, printLidShell, renderScrewFeet, renderVentModifierBase, renderVentModifierLid.
LICENSE & A POSTCARD WISH
Released under CC0 1.0 (public domain) - copy, modify, sell, remix freely, no attribution required.
This is also postcardware: you owe nothing, but if you print this case and it was useful to you, I'd be delighted to receive a postcard from wherever you are. It's entirely optional. If you'd like to send one, just message me through private messages (PM) on my Printables profile and I'll share the address.
CREDITS
- Enclosure generated with YAPPgenerator v3.3.8 by Willem Aandewiel (MIT License): https://github.com/mrWheel/YAPP_Box
- Case configuration, vents, feet and modifier workflow by the author of this model.
Tags
Source du modèle
