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.
  • dbemowskD Offline
    dbemowskD Offline
    dbemowsk
    wrote on last edited by
    #1

    So I have been working on a temperature and humidity sensor to install in my bathroom. I wanted it to be a battery operated sensor to eliminate problems of getting a wire to it when I locate it, basically to have the flexibility of putting it anywhere I wanted. I used one of the Easy Newbie boards that I found and purchased through OpenHardwarIO. I had built the sensor a while back, but was trying to find some kind of vented enclosure to put it, and it's battery pack in and mount it to the wall. Finding something was difficult, UNTIL, I got my new toy for my arsenal. The Anet A8 3D printer.

    I found a cad program called OpenSCAD in which you can design things using what looks like a structured programming language. It uses a bracketed language structure like many common languages. So here is what I came up with for a design of the wall box:
    0_1489805401386_upload-0fcba7c6-5b2c-46da-8740-9c68cdf10729 0_1489805438237_upload-48c61caf-fb8a-4650-84e1-159840112cab 0_1489805457421_upload-43515b1d-cde5-4b74-98ed-d8993520d9b5 0_1489805490013_upload-6b7df170-9850-4fef-a9b6-7159d10d37a3

    One thing that I could not figure out in OpenSCAD was beveling some of the edges. I ended up bringing that into FreeCad to do the beveling. I am in the process of printing it now. I will post more pictures after the box is finished.

    If anyone is interested in the .stl file for this, or the SCAD code, I will be posting this to thingiverse once I have everything figured out and tested. I will post a link as I get to that point.

    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/

    YveauxY 1 Reply Last reply
    0
    • dbemowskD dbemowsk

      So I have been working on a temperature and humidity sensor to install in my bathroom. I wanted it to be a battery operated sensor to eliminate problems of getting a wire to it when I locate it, basically to have the flexibility of putting it anywhere I wanted. I used one of the Easy Newbie boards that I found and purchased through OpenHardwarIO. I had built the sensor a while back, but was trying to find some kind of vented enclosure to put it, and it's battery pack in and mount it to the wall. Finding something was difficult, UNTIL, I got my new toy for my arsenal. The Anet A8 3D printer.

      I found a cad program called OpenSCAD in which you can design things using what looks like a structured programming language. It uses a bracketed language structure like many common languages. So here is what I came up with for a design of the wall box:
      0_1489805401386_upload-0fcba7c6-5b2c-46da-8740-9c68cdf10729 0_1489805438237_upload-48c61caf-fb8a-4650-84e1-159840112cab 0_1489805457421_upload-43515b1d-cde5-4b74-98ed-d8993520d9b5 0_1489805490013_upload-6b7df170-9850-4fef-a9b6-7159d10d37a3

      One thing that I could not figure out in OpenSCAD was beveling some of the edges. I ended up bringing that into FreeCad to do the beveling. I am in the process of printing it now. I will post more pictures after the box is finished.

      If anyone is interested in the .stl file for this, or the SCAD code, I will be posting this to thingiverse once I have everything figured out and tested. I will post a link as I get to that point.

      YveauxY Offline
      YveauxY Offline
      Yveaux
      Mod
      wrote on last edited by
      #2

      @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.

      http://yveaux.blogspot.nl

      dbemowskD 1 Reply Last reply
      0
      • M Offline
        M Offline
        MikeF
        wrote on last edited by
        #3

        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 1 Reply Last reply
        0
        • 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


                            16

                            Online

                            11.7k

                            Users

                            11.2k

                            Topics

                            113.0k

                            Posts


                            Copyright 2019 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