DIY Datalogging?

Discussion in 'General Discussions' started by csementuh, Nov 1, 2016.

  1. csementuh

    csementuh Member

    I know that WELS looks like a really neat setup, but... Anyone ever mess with their own datalogging setup.

    I'm an IT guy. Not a strong programmer or hardware guy but enough to be dangerous. It seems to me that a Raspberry PI type device with several digital temp sensors could be implemented pretty easily. Then there is free python based graphing modules that read data from text files (written by the temp probes) that could be put into HTML pages. Pretty those up a bit and serve them up on a basic web server on the PI on your intranet or even make them accessible online. Heck even run the PI with Ethernet POE so that only a single network cable to the little box is needed. I'm thinking this could be done for $100-150 in parts and LOTS of time haha. I haven't seen it yet, but power monitoring type probes for the PI would make this even nicer.

    When I get a minute I'll dig up the links I found to easy and cheap temperature probes and the fancy graphing software.

    Anyone ever have any crazy and cool thoughts like that?
  2. urthbuoy

    urthbuoy Well-Known Member Industry Professional Forum Leader

    Gone down that road as a thought lesson a few times (and so have others). Get it sorted and I'll buy a dozen or so off you:)
  3. csementuh

    csementuh Member

    Haha, such a lofty goal! I'm all about making money, but that is a tough endeavor.

    The bad part is that I'm not a developer and don't have near enough time to make or support such software. I already have two full time jobs essentially, then my new house and family stuff. I could likely cobble something together, but it is very hard to make the setup universal for other to enjoy and use unless they themselves have a very deep technical understanding and can customize it to their environment.

    When I get some time and feel like spending some coin on the hardware, I'll give it a shot! Just wondering if anyone else on here have ever tried this beyond a thought. :)
  4. Sobotec

    Sobotec New Member

    I am currently running multiple data acquisition points based on arduino nano with ethernet modules feeding data to free site. I believe my pure hardware cost is no more than $20 per acquisition module and data storage cost is $0. I have modules fitted with temperature, power, pressure, humidity, sound and light measurement. One wire temperature sensors are cheap and very accurate.

    This setup has been invaluable in assessing performance of my 3 ton diy water to water geothermal system that I installed at the end of last year. Driving a trencher (first time on that size toy) was a blast! If I find enough time I will post more info on my setup.:)
  5. csementuh

    csementuh Member

    I bought a Pi and 1-wire hardware from SheepWalk electronics. So far I've only had time to setup the Pi and test 2 temp sensors for functionality. Soon once I get some free time I'll put it all together into a working prototype and then install on the geo system. I have about $150 in hardware so I'll be happy when it all pans out! I'll post up a parts list when I have some time. I think I have 15 sensors so more than enough to monitor all the geo, water, ambient, etc as well as my utility room temps.
  6. pfer10

    pfer10 Member

    I have been doing this for several years. One wire sensors are the way to go. I have in and out water temps and supply and return temps. Installed a pulse type flow meter also. I haven't started the Pi up this year as I moved some network cables around so it isn't tied into the network but after logging for a while I know everything is fine. I still track temp data throughout the house as I run Domoticz on a network computer. It also does some home automation type stuff and also monitors power of the house and geo / pump system.

    I can help anyone that is interested in doing something like this. Learning Python is best way to go as it is easy and tons of examples out there. Here are some of the items I use: Used as the central point for all the data and lighting control. It can run on a Pi and is easy to interface with. One wire water temp sensors. I used a standard 1/4" ports but they don't seal good unless really tightened down. One wire air sensors. Just use some old network cable to extend them and drill a small hole in the ductwork. I use two of those for energy measurements. Not the best quality but they are close. Might switch to the open energy monitor later but this seems decent right now.
    With the z-wave power meters you will need a controller that is compatible with Domoticz. I use that one. It can also control lights and other stuff like that. For flow measurement and then the Pi calculates the time between pulses. Probably go with a 3/4" if I was going to do it again.

    Currently looking at using those cheap wifi NodeMcu sensors to replace the Pi at the Geo unit as a Pi doing only that is a little bit of a waste as time allows. Being as I am too lazy to run a new wire to the Pi to get it fired up again that might not happen soon. lol
  7. docjenser

    docjenser Well-Known Member Industry Professional Forum Leader

    Sounds like a WEL....:rolleyes:
  8. pfer10

    pfer10 Member

    For 1/4 of the price. :p

    $40 Pi
    $20 Water sensors
    $6 Air sensors
    $0 Domiticz logging
    $110 Water meter
    $70 Power meter
    $50 misc fittings/wire

    Total $300

    Wel $535 which will monitor 10 temps. Still need the $95 pulse board and $110 pulse meter for flow. If they still use the wattnode there is another $400 for power. Misc fittings/wire $50

    Total $1190
  9. docjenser

    docjenser Well-Known Member Industry Professional Forum Leader

    Agreed, but how will you display the data?
    There are clearly some effort in developing the software and the web based platform.

    So Phil did a good job making is nicely customizable.
  10. pfer10

    pfer10 Member

    Agree the Wel Server does a great job at data, being able to look at that data over time and getting something going quickly with not much of a learning curve.

    I use Domoticz for all data recording and it is easy enough plus it is free. If you are setting up a DIY logger then using Domoticz is cake. It runs locally and is open source so I can modify and customize to my hearts desire. Domoticz is much more than just a free data logger though. It can do pretty much anything you want it to do if you have the proper hardware to interface.


    You can see the last 24hrs, last month and a year of avg, high and lows. You can clearly see where I didn't change the filter until late last year with the high vent temps. Didn't use much AC in the summer also. In late Feb early Mar I was gone for 2 weeks so I set the temperature to 50 as the blue highs and lows were much lower for those 2 weeks. I also used it to randomly turn on various lights to look like it the house was occupied.

    In Domoticz I have custom switches along with the normal light switches. With one switch I can override the setback that you can see in the 24hr data. I have a cheap open API wifi thermostat and instead of the letting it control the setback I do it with controls in Domoticz and custom scripts. At 11 pm I setback to 60F for the night. At 6am scripts slowly ramp the temp set point so I don't use aux heat and let only the geo bring the temp up. If we hit a cold spell I just hit the switch for heat override and it never does a setback. (I could automate that according to outside temp but haven't lol) I have found my 3.5 ton unit at 68F indoors will run close to 24 hours a day at around 0F to -5F so anything under 20 or so I try not to set back as the recovery would be forever. If the geo can't keep up (currently set to 2.0 degree sag) then the thermostat will bring in the aux. Domoticz never sets the temp set point to more than 1 degree above the actual thermostat temp during the ramp up.


    My south facing family room has large windows and on sunny days can get warmer than the rest of the house. Domoticz can control just the fan on the geo unit so if the family room gets above 74F it turns on the geo fan to distribute some of that heat to the rest of the house and keeps the family room more comfortable. It also takes snapshots of a camera that monitors movement out in the barn and alerts me when it does. Domoticz is really a home automation program that also does a good job at logging and displaying data. The uses are endless.
  11. docjenser

    docjenser Well-Known Member Industry Professional Forum Leader

    That is the key. Others have not, they enjoy the plug and play.
    :) But it sounds all good what you are doing..
    Last edited: Dec 29, 2016
  12. pfer10

    pfer10 Member

    This was the first statement of the OP of this thread.

    That was my first response. You tried to take my quote and make it look like it took me years to get it setup. That is not the case! If you would quote me right I said I have been doing the DIY datalogger for several years not making it. I find it amusing the topic of the thread is DIY Datalogging and your response is some people enjoy the plug and play. I am sure they do and I am pretty sure they are not going to follow this thread. Some people such as the OP are into IT and enjoy this type of DIY thing. Doc is it wrong for a person to want to expand their skills? I clearly demonstrated where you can do it yourself for cheaper and a person can learn at they same time. If anything they will better understand their system. Is there anything wrong with that?

    Anyway my offer still stands. I know the OP says they are not a programmer but it doesn't take much of any programming skills unless you want to customize. I'll help anyway I can.
  13. docjenser

    docjenser Well-Known Member Industry Professional Forum Leader

    You got to chill a bit here!

    I took your quote to imply that it takes know how, skills and time to come up with some useful data logging, and it is more than just putting the hardware together. Just because someone has an IT background does not mean it is a simple DIY project.

    You apparently have the skills and experience, which is why I said that it all sounded good! All meant well!
    A skilled person sharing is/her knowledge here is always a great thing!

    Just relax a bit more.....:cool:
  14. csementuh

    csementuh Member

    Gentlemen, thanks so much for the discussion, info and links!

    I started writing Python scripts to read data from the 1wire and then send it to a CVS file and display using JavaScript graphing software. Then... I quickly ditched that for Domoticz!

    Domoticz is mind-blowing-ly powerful! It can literally do anything with outside scripting support. Now I just need to set mine up and then figure out what all the numbers actually mean on a geo system lol..

    Right now I only have a few sensors connected to play with, but I'll be doing the full geo temp sensor integration at some point soon. I'll also post up a shopping list of my parts so far.

    A downfall of Domoticz is that it doesn't appear that you can save 'custom graphs' to look at routinely, but you can generate them easily ad-hoc. Maybe someone knows of a better way? Would be nice to do a graph with multiple overlays and save it to the main dashboard page for quick checks.

    The only weird thing I found so far is that Domoticz (and the 1wire sensors) are native Celcius, which makes some of the stuff weird. Domoticz doesn't seem to support a built in temperature delta sensor, so I added a virtual sensor and used a small LUA script to calc the delta. This was a pain though because I had to convert to F do the math, then back to C, then the sensor does an internal calc back to F to display for me.

    Here's a sample of a quick one I did to show the delta of my server rack (server power supply exhaust) vs the temp of the utility room its in:

    commandArray = {}
    deltaF = (otherdevices['Server Rack'] * (9.0/5.0) + 32.0) - (otherdevices['Utility Room'] * (9.0/5.0) + 32.0)
    deltaC = (deltaF - 32.0) * (5.0/9.0)
    commandArray['UpdateDevice']='15|0|' .. deltaC
    return commandArray

    I'm really hoping to add more devices and enjoy this setup! I only have about $100 into mine. I just bought the ZWave stick and I'll likely grab a power monitor or two. I already use a complete Wink Hub 2 solution with about 40 devices to cover all the lighting, as well as a full Honeywell security setup. Sadly that means I can't integrate much of my ZWave into Domoticz since ZWave only supports one master controller for a device and the secondary controllers work poorly.
  15. pfer10

    pfer10 Member

    Since the Domoticz backend database operates in C just send the 1 onewire sensors straight into Domoticz in C since you read them in that way in the python script. In your python script calculate the delta in C. Then use your virtual temperature sensor in Domoticz and send the calculated delta to it in C. I use to convert to F then back also but then realized you don't have to. Sometimes in the python script I would print it out to the console in F for troubleshooting.

    Under Setup -> Settings -> Meters/Counters select display temperature in Fahrenheit. That should take care of it.

    You might look at the Wink API. With an external script I am sure you could get them to share some information since it uses RESTful service.

    One thing to note on the Zwave power meter that I listed above. They are cheap but they don't take a voltage measurement. I was able to calibrate the voltage on mine to make it more accurate but it still isn't that great for load non unity power factor.

    I have since bought this one:

    I haven't installed it yet but it taps into the voltage also so it can measure the phase of the current and voltage and get a better idea of the real power. I'll just move my other one to track some more circuits and use the new one to look at geo power.
  16. csementuh

    csementuh Member

    More good info, thanks!

    I'm using the native 1Wire support using BlackSheep Electronics hardware with Domoticz, so no Python scripting at all. It is bringing the data in *C and then I'm using a real simple LUA script I posted above to get the delta and send it back to the virtual sensor in *C. Unfortunately you can't just subtract the C since the C is scaled and not flat like F. As you suggested, the main setting is *F, so Domoticz does the conversion back to display it in *F. Workable for now, but there is a small conversion/rounding error I presume. Probably good enough for my usage!

    I have a wholesale source that is blowing out those older gen HEMs at $15 each, so I'll likely pick up a couple to play with. The newer one, does look nicer, so perhaps I should get it as well and use it on my mains for the most accuracy there. Does that newer one report the voltage or power factor to ZWave? If so, you could likely make a script that corrects your 'guessed' amps from the older gen units and gets them more accurate. I definitely want to monitor a 20A dedicated circuit that runs my server rack. I may also want to do my heat pump water heater. I definitely want to monitor my geo system, but the dingbat electrician that did my house used three different circuits, a 60A and 2x 40As to power the thing. I'm guessing I'd have to install 3 HEMs and have them added together or something to get total geo power, or trace the wires to see what each circuit actually powers. Ideally I'd like to track the running cost of the geo, and see when the resistance heat kicks in. Any ideas on how to monitor my geo on three circuits?

    EDIT: It just dawned on me that I could likely take all three wires from each circuit of each black and white, zip tie them together and put the clamps through them to monitor all three geo circuits at once with one HEM. I'm pretty sure they're all on the right side of my box so it's likely do-able. My water heater is a GE GeoSpring unit which from what I've read only draw like 450-550 watts while operating, not 100% sure if it makes sense to monitor it separately, although I guess it would be cool to see the delta of the whole house power usage minus the utilities of geo, hw and computers.

    EDIT 2: I found this statement:
    "If you want to use a single clamp to monitor a 240V load, you simply put both the red and black cables through a single clamp, but in opposite directions -- kind of like an "X"." If it reports the two clamps separately, then this may be more useful in that a single HEM could monitor two 240V circuits. If I recall all three of the geo circuits are 240s, and so is the WH of course. I guess the hard part would be having enough wire in the electric panel to flop it backwards and run through the clamp, but I'm thinking you may have to on a 240V circuits since it has two hots and these measure the current in and out (I think), which a 240 doesn't have a neutral. Hmm.

    This Domoticz is a cool solution, thanks for the referral! I was looking at some of the other Pi runnable home automation systems, but now I can probably do much of what I want on Domoticz, at least the monitoring aspect. I'll definitely keep the lighting on the Wink Hub 2 though, since that is a super easy app that my wife can use. As you said, perhaps I can integrate it later. I know some of the other systems do use the Wink API.
    Last edited: Jan 18, 2017
  17. pfer10

    pfer10 Member

    Unfortunately I don't have the newer HEM hooked up yet. From what I seen (limited knowledge with it so far) it reports the same info. The difference is it has the voltage tap so it calculates power instead of using a "calibrated" voltage that you set. I just got mine more accurate by adjusting the set voltage until the energy matched what my power company was billing me for. At $15 that is a good deal and I would definitely get a couple. Also using the newer gen on the mains is probably a good idea.

    With the older HEM there is a trick that I do with my second one that monitors the geo and the well pump since I have an open loop and they are on different circuits. Put one current clamp on one leg of the 230V of the geo unit. Put the other current clamp on one leg of the of 230V of my well pump. On a 230V device both legs are the same current. The only reason you put two on your mains is some 115VAC devices run off one leg and the same current is in the neutral and some run off the other leg again the same current in the neutral so you have to monitor both.

    By doing it that way I tell the HEM the voltage it is operating at is 1/2 the two mains and then it adds the power for both legs. My geo runs about 3100 watts and when my well pump kicks on it goes up about 950 watts. Doing it like that you monitor two different 230 circuits with one HEM. I don't monitor my aux heat as since I have been making adjustments and optimizing things in the house I haven't had to run aux the last two winters. You can see my geo/well pump in in action here when my system runs. Power is the first HEM on the mains of the house:

    On Domoticz, over the years I have tried a couple different systems. Since finding Domoticz it is what I have used for the last 3 years as it just works. If you get into different devices feeding info into Domoticz you might look into MQTT integration. With these new $4 NodeMCU wifi sensors making remote sensors is cake with MQTT support. My grand plan is to integrate in data from the barns so I know when the garage doors are left open or entry doors open and close. Might even get one to control a relay to give me a remote switch so I don't have to mess with the garage door opener. I seem to always have my phone but forget the damn garage door opener when I go out to the barns. I can turn on lights back in the house but can't open the garage door. LOL
  18. csementuh

    csementuh Member

    Solid plan! Sounds like you have a really cool setup. I wired my garage door openers into a relay and use my Honeywell alarm system and phone app to open/close, which was easy.

    So if I understand what you're saying about the HEMs... You only need one leg of the 230 passing through one clamp to monitor the whole circuit? Do you then take the power reported and multiply by two to account for both legs? Just wasn't sure since the one review talked about reversing the power legs like an X running through the clamp.

    For me, I have 3x130v geo circuits plus the HW heater, so 4 power legs total. That means I could monitor all four with two HEM devices? Then a third cheap one for the server rack circuit and the fancier one for the house mains. Sound about right?
  19. csementuh

    csementuh Member

    I got four sensors installed for EWT, LWT and DHS in/out. Now to install more and keep monitoring!

    I do still need to figure out the electrical sensors (what to buy?)?

  20. pfer10

    pfer10 Member

    I just use one clamp on one leg. I think for it to work you have to make the clamps go the same direction. So I have one clamp on the geo leg and one clamp on the well pump leg. I then set the voltage to half of whatever your 230 mains run at for that HEM (version one). That is all I had to do.

Share This Page