Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Enclosures / 3D Printing
  3. HDC1080 battery operated temp/humidity sensor with wall box

HDC1080 battery operated temp/humidity sensor with wall box

Scheduled Pinned Locked Moved Enclosures / 3D Printing
13 Posts 5 Posters 20.2k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • YveauxY Yveaux

    @dbemowsk Very well done, especially if this is your first openScad project! :clap:
    I just started with openScad, but it's clear to me that the possibilities and flexibility are endless.
    And ofcourse I'd like to see the openscad code ;-)

    Which part of your design did you try to bevel from openscad? Maybe I can help.

    dbemowskD Offline
    dbemowskD Offline
    dbemowsk
    wrote on last edited by
    #4

    @Yveaux said in HDC1080 battery operated temp/humidity sensor with wall box:

    Which part of your design did you try to bevel from openscad? Maybe I can help.

    I wanted to bevel the top edges as well as the first ridge at the lower end of the vent slots.

    Here is the code. I know there is probably ways to clean this up with FOR loops for things like the vent holes, but I don't quite have the hang of that part yet.

    //Humidity sensor project box
    
    $fn = 50;
    
    //cover();
    wall_plate();
    
    module wall_plate() {
        //Create the base platform with mounting holes
        difference() {
            union() {
                translate([0, 0, -1]) cube([77, 57, 1]);
                translate([2.25, 2.25, 0]) cube([72.5, 52.5, 2]);
            }
            translate([15, 28.5, -2]) cylinder(d=4, h=5);
            translate([62, 28.5, -2]) cylinder(d=4, h=5);
            
            translate([15, 28.5, 1]) cylinder(d=8, h=2);
            translate([62, 28.5, 1]) cylinder(d=8, h=2);
        }
        
        //Create the snap tab uprights
        difference() {
            translate([30.5, 2.25, 0]) cube([16, 52.5, 10]);
            
            translate([30.5, 5.25, 0]) cube([16, 46.5, 10]);
        }
        
        //Create the latches
        translate([30.5, 2.25, 7.2]) rotate([45, 0, 0]) cube([16, 2, 2]);
        translate([30.5, 54.75, 7.2]) rotate([45, 0, 0]) cube([16, 2, 2]);
    }
    
    module cover() {
        //Create the main vented box
        difference() {
            //Create the outer box layers
            union() {
                translate([2, 2, 0]) cube([73, 53, 49]);
                cube([77, 57, 33]);
            }
            //Hollow out the box
            translate([4, 4, 0]) cube([69, 49, 47]);
            translate([2, 2, 0]) cube([73, 53, 28]);
            
            //Create the latch reliefs
            translate([29.5, 2.25, 7.2]) rotate([45, 0, 0]) cube([18, 2, 2]);
            translate([29.5, 54.75, 7.2]) rotate([45, 0, 0]) cube([18, 2, 2]);
            
            //Add the horizontal vent slots to the top layer
            translate([5, 2, 28]) cube([2, 53, 18]);
            translate([10, 2, 28]) cube([2, 53, 18]);
            translate([15, 2, 28]) cube([2, 53, 18]);
            translate([20, 2, 28]) cube([2, 53, 18]);
            translate([25, 2, 28]) cube([2, 53, 18]);
            translate([30, 2, 28]) cube([2, 53, 18]);
            translate([35, 2, 28]) cube([2, 53, 18]);
            translate([40, 2, 28]) cube([2, 53, 18]);
            translate([45, 2, 28]) cube([2, 53, 18]);
            translate([50, 2, 28]) cube([2, 53, 18]);
            translate([55, 2, 28]) cube([2, 53, 18]);
            translate([60, 2, 28]) cube([2, 53, 18]);
            translate([65, 2, 28]) cube([2, 53, 18]);
            translate([70, 2, 28]) cube([2, 53, 18]);
            //Add the vertical vent slots to the top layer
            translate([2, 5, 28]) cube([73, 2, 18]);
            translate([2, 10, 28]) cube([73, 2, 18]);
            translate([2, 15, 28]) cube([73, 2, 18]);
            translate([2, 20, 28]) cube([73, 2, 18]);
            translate([2, 25, 28]) cube([73, 2, 18]);
            translate([2, 30, 28]) cube([73, 2, 18]);
            translate([2, 35, 28]) cube([73, 2, 18]);
            translate([2, 40, 28]) cube([73, 2, 18]);
            translate([2, 45, 28]) cube([73, 2, 18]);
            translate([2, 50, 28]) cube([73, 2, 18]);
        }
    
        //Create the battery case holder
        difference() {
            translate([2, 7.75, 2]) cube([73, 41.5, 22.5]);
            
            translate([8.75, 7.75, 2]) cube([60, 41.5, 22.5]);
            translate([3.75, 11, 2]) cube([69.25, 34.25, 18.3]);
            
            translate([2, 20, 0]) cube([10, 16.5, 25]);
            
        }
    
        //Create the mounting tabs for the PCB
        difference() {    
            translate([15, 2, 23]) cube([52.75, 55, 5]);
            
            translate([19.5, 6.5, 23]) cube([43.75, 44, 5]);
            translate([22, 2, 23]) cube([38.75, 55, 5]);
            translate([14, 9.5, 23]) cube([54.75, 38, 5]);
            
            translate([18.5, 5.5, 23]) cylinder(d=1, h=5);
            translate([64, 5.5, 23]) cylinder(d=1, h=5);
            translate([18.5, 51.5, 23]) cylinder(d=1, h=5);
            translate([64, 51.5, 23]) cylinder(d=1, h=5);
        }
    }
    

    I just uncomment the cover() or wall_plate() lines when I want to export the .stl files. I realize I could do a translate() on one of them and put them next to each other, but I exported them as separate .stl files in the event that I only wanted to print one part.

    Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
    Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

    1 Reply Last reply
    0
    • M MikeF

      I've used openSCAD a few times now, to print enclosures, including MySensors and RaspberryPi's (note to self: must publish these here / on Thingiverse), and I like the way you can precisely define shapes through its structured language.

      I recently came across an RPi case with rounded corners and edges, which was simply achieved by creating small spheres at each of the corners, and then producing a 'hull' around them:
      alt text
      alt text
      Here's some simple code which I used to create the above examples:

      // Rounded box example
      r = 2;
      box = [80, 40, 20];
      hull_build(box,r);
      
      //Utility module to make a solid box with rounded corners
      module hull_build(box,r){
          //spheres at the corners of a box and run hull over it
          x = box  - 2 * [r,r,r];
          difference(){
          hull(){
              for (i=[0:1]){
                  for (j=[0:1]) {
                      for (k=[0:1]){
                              translate([i*x[0],j*x[1],k*x[2]]+[r,r,r]) //move up r because we moved box up
                                  sphere(r);
                                  }            
                              }   
                          }  
                    }   
               }  
      }
      
      dbemowskD Offline
      dbemowskD Offline
      dbemowsk
      wrote on last edited by
      #5

      @MikeF There is also the minkowski() function which will do something similar, but I wanted my corners beveled and not rounded, though I guess the effect would be similar.

      Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
      Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

      1 Reply Last reply
      0
      • dbemowskD Offline
        dbemowskD Offline
        dbemowsk
        wrote on last edited by
        #6

        The box is finished. overall I am happy with the way it turned out, even though there are some layers on the outer shell which are pretty rough.
        0_1489847760038_5652.jpg 0_1489847512781_5651.jpg 0_1489847767958_5653.jpg

        The board mounts pretty nice on the mounting tabs with some 2mm x 5mm screws (bought a bag of 100 off of ebay).
        0_1489847900732_5655.jpg

        The battery box fit perfectly in it's slot. I had to put the power switch to the inside for the bottom to fit on, which was no big deal because I didn't really need the switch anyway. The switch came mounted in the battery boxes when I bought them.
        0_1489848182304_5656.jpg

        The bottom snapped on perfectly too. I have the holes to screw it to the wall, then the box should just snap right on. I could incorporate a small slot on the edge of the case on each side to pry it off with a screwdriver if I need to, but that is minor and I think this is going to be perfect just the way it is.

        Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
        Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

        sundberg84S 1 Reply Last reply
        2
        • M Offline
          M Offline
          MikeF
          wrote on last edited by
          #7

          Your box looks really good!

          Re bevelling: I did a quick Google for 'openscad bevel' - haven't looked at the results, don't know if any of these are what you want.

          1 Reply Last reply
          0
          • dbemowskD dbemowsk

            The box is finished. overall I am happy with the way it turned out, even though there are some layers on the outer shell which are pretty rough.
            0_1489847760038_5652.jpg 0_1489847512781_5651.jpg 0_1489847767958_5653.jpg

            The board mounts pretty nice on the mounting tabs with some 2mm x 5mm screws (bought a bag of 100 off of ebay).
            0_1489847900732_5655.jpg

            The battery box fit perfectly in it's slot. I had to put the power switch to the inside for the bottom to fit on, which was no big deal because I didn't really need the switch anyway. The switch came mounted in the battery boxes when I bought them.
            0_1489848182304_5656.jpg

            The bottom snapped on perfectly too. I have the holes to screw it to the wall, then the box should just snap right on. I could incorporate a small slot on the edge of the case on each side to pry it off with a screwdriver if I need to, but that is minor and I think this is going to be perfect just the way it is.

            sundberg84S Offline
            sundberg84S Offline
            sundberg84
            Hardware Contributor
            wrote on last edited by
            #8

            @dbemowsk - I love your box! May I use it as a good example on how to box the EasyPcb?

            Controller: Proxmox VM - Home Assistant
            MySensors GW: Arduino Uno - W5100 Ethernet, Gw Shield Nrf24l01+ 2,4Ghz
            MySensors GW: Arduino Uno - Gw Shield RFM69, 433mhz
            RFLink GW - Arduino Mega + RFLink Shield, 433mhz

            dbemowskD 1 Reply Last reply
            0
            • sundberg84S sundberg84

              @dbemowsk - I love your box! May I use it as a good example on how to box the EasyPcb?

              dbemowskD Offline
              dbemowskD Offline
              dbemowsk
              wrote on last edited by
              #9

              @sundberg84 Most definately. I will be posting it to my things on thingiverse in a bit. I plan to link this forum post in the comments. I'll also post a link to the battery boxes that I bought on ebay as they fit perfectly. I'll post the link when I have it up.

              Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
              Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

              1 Reply Last reply
              1
              • dbemowskD Offline
                dbemowskD Offline
                dbemowsk
                wrote on last edited by
                #10

                For those interested, here is the 3D project and files on thingiverse.
                http://www.thingiverse.com/thing:2186286

                I had not even had the project posted on the site for a minute and I had someone collected it. I thought that was impressive.

                Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
                Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

                1 Reply Last reply
                0
                • dbemowskD Offline
                  dbemowskD Offline
                  dbemowsk
                  wrote on last edited by
                  #11

                  As I was perusing the forum I just noticed that we have a category for 3D printing. This topic could be moved to that category where it is more suited.. Not sure who all has the authority to move it there.

                  Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
                  Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

                  mfalkviddM 1 Reply Last reply
                  0
                  • dbemowskD dbemowsk

                    As I was perusing the forum I just noticed that we have a category for 3D printing. This topic could be moved to that category where it is more suited.. Not sure who all has the authority to move it there.

                    mfalkviddM Offline
                    mfalkviddM Offline
                    mfalkvidd
                    Mod
                    wrote on last edited by mfalkvidd
                    #12

                    @dbemowsk done! I think all moderators can move topics. Mentioning @Mod should summon us :)

                    dbemowskD 1 Reply Last reply
                    0
                    • mfalkviddM mfalkvidd

                      @dbemowsk done! I think all moderators can move topics. Mentioning @Mod should summon us :)

                      dbemowskD Offline
                      dbemowskD Offline
                      dbemowsk
                      wrote on last edited by
                      #13

                      @mfalkvidd Thanks, I'll keep that in mind.

                      Vera Plus running UI7 with MySensors, Sonoffs and 1-Wire devices
                      Visit my website for more Bits, Bytes and Ramblings from me: http://dan.bemowski.info/

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      18

                      Online

                      11.7k

                      Users

                      11.2k

                      Topics

                      113.1k

                      Posts


                      Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • MySensors
                      • OpenHardware.io
                      • Categories
                      • Recent
                      • Tags
                      • Popular