Outdoor Project Case

Outdoor Project Case v.81

As a follow up to my previous entries for designing and 3D printing ‘Indoor Project Cases’ for Particle installations, I’d like to share my experiences in making an outdoor enclosure for my Flood Dog project.

Flood Dog (flooddog.ca) is a three year program to monitor ground, surface and lake water levels around the Toronto Islands. After several years of work on the idea I’ve been granted some funding to deploy 42 Flood Dog devices in the field (Mini-grant Awardees Announced - Great Lakes Observing System). In one configuration, I am using a Boron with a Carrier Board and a custom daughter card that connects to a ‘homemade’ capacitance sensor wand’ that measures ground water levels. At the moment the data is being sent to adafruit.io for storage and basic data visualization but the Flood Dog pilot project is also tasked with designing and creating a Water Level API for storing and retrieving readings from any source of monitoring.

The ideal Flood Dog enclosure would have some basic requirements. It should, in no particular order, be:

  • Water Resistant. I’m not dropping these units into the ocean but they will be outdoors for several years and perhaps semi-submerged at times as I am measuring water levels.

  • 100% 3D printed and locally sourced. This is an ambitious goal but quite doable with some design work. The current three part case (top, mount and bottom) is 3D printed and ready to wear right off the print bed. At the moment the wire glands and the gaskets are externally sourced but I will attempt to ‘design in’ these features making this a case that can be produced entirely in-house as needed.

  • An efficiently designed enclosure. Most commercial cases I found are either too big or too small for my needs; it’s just wasted space! And I am somewhat obsessed with reducing the material in the design to reduce cost and production time while maintaining the strength of the unit.

  • It should be easy to service in the field. I have no where near the field experience of an expert like Chip but the hours I’ve spent tinkering in the tall grasses installing and maintaining the first test devices tells me the fewer tools and techniques needed to service the unit the better. It only took a few times of getting to a site and needing a Philips screwdriver which I didn’t have with me to figure out there must be a better way!

  • Aesthetically pleasing. Most project boxes I’ve researched are just a baby step above industrial design. I ask myself why can’t an IoT Project Enclosure look cool and almost beautiful as well as functional? 3D printing offers me the ability to customize and style a project cases to any shape; I’ve even toyed with the idea of molding the case to look like a rock so it would be ‘invisible’ to passers-by.

And so with these modest goals I set off to design my perfect enclosure!

Design Features
The model is made of three parts: the Top, the Carrier Board Mount and the Bottom Cap. The top has built-in strap mount holes, threaded wire gland openings, and an optional PIR Sensor threaded opening. The mount provides a solid holder for the Carrier Board and the LiPo battery and moves up and down on a track built into the top part and spins independently of the bottom cap. The bottom screw-on cap and built-in gasket make this an acceptably watertight unit. Anecdotally, I have subjected test enclosures through Canadian winters and wet springs and they are totally dry so far!

But this is an iterative process indeed. The current design is version 81 if that is any indication; it is a cylindrical shape with a screw-on cap that allows easy access to the internal components. A cylinder design is an efficient use of space and is functionally very strong. The model is optimized to reduce print time, material and the inherent limitations of 3D printing.

I also happen to think it looks nice, dare I say elegant! It feels solid in your hands, it’s lightweight yet strong. I even designed the Flood Dog logo into the top of the case.

The design weapon of choice for me is Fusion360. I have worked with an unimaginable number of software applications over the years and I’m convinced this is amongst the best programs ever written. It is so elegant and yet so powerful. I have only scratched the surface of what I can do with it but even that is astounding.

There are two features that stand out for me: the timeline and setting parameters or variables.

The timeline is like a step by step graph of the project. You can roll forward and backward through the individual steps that make the model, you can edit or suppress steps or features, delete steps or features or insert new steps or features anywhere along the timeline. With this ability I was able to design two versions of the model. From one design file I can output (.stl) the basic smaller case and a version which has an opening for the custom screw-in PIR sensor capsule.

Fusion360 allows you to setup variables for use in defining measurements of objects. The project case height, width, wall thickness, mounting sizes etc. are all defined as variables. I can make the entire model taller or shorter, thinner or thicker with often no modifications beyond making a numeric change.

There is a large fan base and many YouTube tutorials for Fusion360. Which of the dozens you choose from is a matter of personal choice. Suffice it say a few hours on YouTube will teach you enough to be dangerous!
Here are some useful YouTube links on 3D Printing & Fusion360
CNC Kitchen
Fusion Essentials
Makers Muse
Product Design Online

3D Printing
After considerable research, I chose a Prusa MK3S+ for 3D printing the cases. These printers are workhorses that also produce excellent quality prints. They require a minimum of servicing - not zero but not bad - and since I built them from a kit the level of product understanding is enormous which adds to the confidence level over time.

There will be primarily two materials used: ASA (80%) or a Polycarbonate Blend (15%). Both offer UV protection and are stable to high temperatures such as a hot sunny day. For installations in harsh environments the Prusament PC Blend filament, though somewhat expensive, is a fantastic material to print with and produces a Flood Dog case that is pretty much as strong as steel - this stuff is seriously tough! For indoor or sheltered installations PETG will be the filament of choice due to its ease of printing and its thermal range. I am also experimenting with flexible material to 3D print the gaskets. This would be amazing from a customization standpoint but flexible materials are not for the faint of heart - I suspect some experience is required; I will update this post with the results.

To efficiently print in ASA or PC one needs an enclosure and an air filtration system. The enclosure will keep the thermal envelope free of drafts which can cause layer splitting. The air filtration system is needed to remove smells and toxic fumes! Neither of these require expensive solutions. The most popular setup, and the one I chose, uses IKEA LAK tables which run $10 each - I needed three. Most of the parts are 3D printed and it’s easy to build. Any decent air filter can be fitted - there are a hundred 3D solutions on Thingiverse. It helps to monitor the temperature inside the enclosure so I use an Argon with the Grove sensors. And please make sure you install a smoke detector in the very very unlikely event of a meltdown.

The Reality
3D printing a project case of this magnitude does have some challenges. It does take considerable time to print a single case; perhaps as much as 22 hours in high quality. Print time can be reduced greatly by reducing layer height or using a larger nozzle. Both will also impact the quality of the print in positive and negative ways so you have to balance your speed vs. quality. Keeping in mind I’m only making <150 of these cases, I maintain that if I ordered custom cases from China and modified them further to suit my exact needs it would take on average far longer than 22 hours each.

It does some skill level to make these cases. I’ve tried to create a design that’s easy to produce but 3D printing can often feel like part science part voodoo and the unexpected is bound to ruin a few runs -it happens!

The good news is that with a Raspberry Pi, Octoprint and small camera one can keep an eye on the print process from anywhere. The vast majority of the time 3D printing just runs and all that’s needed is quick look see when possible.

If I was ordering 50,000 cases I would engage a manufacturer directly but with a production run in the hundreds that’s not possible and since I am iterating all the time it’s not practical. There are online services that will allow you to create a unique design which you can print yourself but this doesn’t seem fully satisfying. I have invested a stupid amount of time learning how to make my own designs but having done so I find it very rewarding and empowering.

PIR Sensor Capsule
Still slightly under development is an optional timeline path for a PIR sensor with a threaded opening to accept a threaded detector capsule.

A 3D printing trick for testing is too slice the model into sections in Fusion360 and output only bits of the model. To only print the PIR corner of the top saves so much test time.

The Finished Product
The current working version is available on the Flood Dog GitHub site. You are welcome to download tinker and print your own versions under MIT License stuffs. Enjoy!



Thank you for sharing this enclosure with the community. I have enjoyed “going along for the ride” as you worked through the iterations (81!) to get this right. I wanted share my build photos and confirm that this case is an outstanding choice for outdoor applications. I printed my first case in ASA and plant to try one using PETG to see how well it stands up to the sun.

Thank you again for sharing your great work here!


1 Like

@phillycheeseman - First congrats on the mini grant. Very cool! Great to see projects like this especially open sourcing the data collected to the community!

  • Yeah I do all my design work in Fusion 360 as well. Took a little bit to learn but certainly worth taking the time to learn it. I also love the parameters and timeline. I recently used python scripting to iterate through a csv file of parameters to quickly generate a bunch of STLs. Lots of fun to be had with Fusion and 3D Printing!

I also print many things via a Prusa MK3S. I currently have 4 of them to print various things both IoT and otherwise. I always prototype the enclosures, brackets and other parts of my IoT projects by 3D printing. I’ve been very happy with Prusa.

150 cases * 22 hours per case / 1 printer = ~150 days? If you are ever in a crunch and need some assistance in cranking out the cases send me a PM. I’m happy to help out especially another member of the Particle Community! My Prusa’s are normally setup with 0.6 mm Nozzle and I normally print PETG but if needed can swap it back to 0.4mm. 1 of the 4 are in a Lack enclosure for other filament types. My printers normally have some whitespace these days.

Keep us posted on the longevity/waterproofness of the enclosure over the course of this project. I haven’t been brave enough yet to deploy a 3D printed enclosure for a long term duration fully exposed outside with electronics on the inside. I’ve done brackets and other odds and ends just not something with electronics on the inside. Would be very interested to learn if this works out well for you just for some other future projects I have in mind. Thanks for sharing!

jgskarda thanks for the comments.

I knew when I wrote that it takes roughly 22 hours to print one project case I would raise eyebrows. That is of course a reasonable overstatement. I print my ‘test’ prints at the highest quality so I can always dial it down; there are several threaded parts so quality does sorta matter however there is a sweet spot between time and print quality and success.

My first test prints were at .15 layer height, 80% speed with the standard 4mm nozzle. I found the detail was actually too much for ASA and PC - they cool very quickly and caused hardened blobs to form on the retraction points which led to ‘crash detect errors’. I back it off to .20 layer height and it hummed along with no issues. There were probably a few other adjustments I could have made but .15 was too fine a detail regardless.

As you point out a 6mm nozzle or larger could be used. This translates into possible higher layer heights and much reduced print times at the expense of print detail. I am sure a .3 layer height with a 6mm nozzle is exponentially faster - I even have an 8mm nozzle which I could try. Interestingly larger layer heights lead to better water resistance and overall strength; less layers means less places for the material to split allowing water to penetrate and it will have fewer fracture points.

As I ramp up in the next few days I will experiment with lowering print quality to increase speed. I will update this thread as I go…


Yeah sounds like you’ve identified the key parameters for print speed and quality. Now just finding the right combination of speed vs quality vs ruggedness/waterproof. One consideration is to use variable layer height. I.e. simply decrease the layer height where you need the detail (maybe the thread pattern) and increase layer height where there is no detail needed (straight walls going up). Prusa Slicer 2.0 - Variable Layer Height - YouTube

Also, if you didn’t upgrade to the latest Prusa Slicer it’s worth it. Gives you a break down of time by print type (in fill vs solid infill vs perimiter) so you know where the time is being spent. Many times I print with a 0.6mm nozzle but still at 0.2mm layer height to get some level of detail. Another benefit is you may only need 2 perimeters vs 3-5 with 0.4mm nozzle. That saves quite a bit of time as well. The objects I print are similar size and shape. Here is what I mostly print: labelslayer.com Going from 0.4 to 0.6, increasing speeds and using variable layer height I was able to cut print time by 50%-60% % or so. Really helped with throughput of getting things printed off while maintaining quality. If you want to bounce off any ideas or share any of your learnings feel free to reach out.

1 Like

HI @phillycheeseman

Thank you for sharing.

I am busy designing one that will indeed be “dropped into the ocean” (well not quite but you get the just of it) so I can fully appreciate the 81 iterations. With a little bit of luck I will be able to share my case, but I will have to get approval first as it is under quite a strict NDA at the moment.

I am curious, how was your experience printing with ASA? As challenging as ABS? Why not CPE?

Bets of luck and keep up the great work!

Regards, Friedl.