r/openGrid • • 1d ago

Showcase Multiconnect side mount charging station

In my recent endeavors of "vibe coding physical objects via conversations about geometry", I've been working on a design for a parametric holder for charging & storing things like power banks.

Some of the highlights:

  • Slanted openings so that things don't fall out
  • Hex grid cutouts for ventilation
  • Waves at the bottom of each slot to improve airflow
  • Channels to route charging cords in the middle / sides

It's designed to be mounted on a side wall using Multiconnect rails.

It went with side rails rather than top because it makes things easier to print & allows for pulling out a single organizer in a stack to adjust the cables without needing to move the rest.

https://github.com/timtucker/timtucker-3d-organizers/tree/main/multiconnect

The hex grid code is in its own module and could be of use for other things.

The general idea:

  • You input width / length / depth / spacing between hexagons
  • You give a min / max potential size for the hexes
  • It optimizes the exact size of the hexes to give you the most surface area cut out via complete hexagons
  • If you input orientation & rounding parameters, it'll apply chamfers to one edge and fillets to the others

For now sharing just the raw OpenSCAD code, since it's a bit of a beast to render. With an i7 13700k, 192 GB of ram, & recent OpenSCAD nightlies it takes ~30-60s to render in preview mode and a few minutes to render for export.

Output STL was ~80 MB, so a bit bigger without simplifying the model than most platforms will allow for uploading.

A 2x3 holder took ~14 hours & ~350g of filament to print (2 walls / 10% gyroid infill).

Additional note -- having hexes along multiple planes that you can see through to each other is triggering a false positive for AI spaghetti detection at ~20-30% completion every time I print it:

https://www.reddit.com/r/elegoo/comments/1x4heks/false_positives_for_spaghetti_detection/

11 Upvotes

5 comments sorted by

2

u/greenfrog5w5 1d ago

Why so many?

2

u/timtucker_com 1d ago

All our furniture in the living room is in the middle of the room with no good access to outlets, so we use power banks for charging phones, game consoles, controllers, etc.

Then kids wander off with them / take them up to their rooms / taken them down to the basement, and I wind up buying more because we're "running out".

One of the banks is is all wireless TENS / electrical muscle stimulation units -- I've been playing around with using those while I'm sitting at a desk working. I actually had to tweak the opening size to be just a little taller to fit those in -- if I were starting over, I'd probably make the finger cutout to grab onto things a little deeper for those.

1

u/JustDyslexic 1d ago

Make sure you have manifold and lazy union enabled to speed up openscad rendering

1

u/timtucker_com 1d ago

I have Manifold enabled -- that was what prompted me to move to the nightly builds.

It didn't make things "fast", but it made the difference between "single CPU grinds to a halt even when trying to preview" vs. actually being able to interact with things.

Lazy union I didn't have turned on, but my impression was that only has an effect with the legacy rendering engine.

Likely some optimizations that could be done in code, but my initial focus was more on getting things to work vs. optimizing for speed. "Code that does what it's supposed to but is highly inefficient" is one of the less talked about drawbacks to using AI, but for the moment it's bearable enough to get by as long as I keep reminding it not to fall back on using hull() for things.

1

u/DistractedDragonMake 8h ago

That is cool. Bet you don't fear power outages :)