Understanding slab / foundation insulation

This post is a bit more for the folks interested in the science and details behind the what and why of our insulation decisions for our foundation. In the spirit of keeping things short and sweet, I plan to cover the following:

  • Purpose of foundation insulation
  • Discuss why we chose Expanded Polystyrene (EPS)

Let’s jump right in…

Purpose of foundation insulation

There is a lot of science behind the energy transference between surfaces that are in contact, namely dirt and concrete. When concrete is placed directly on dirt, there is both moisture and thermal exchange taking place. There is a large debate in the building science community around how much insulation in needed due to complex thermal calculations, weather conditions and soil types, but the thermal models from the Passive House Institute helped us settle on 8 inches. The amount of insulation helps keep the inside building temperature more stable, thus reducing the cold floor feeling, which makes my wife happy. There is insulation around the footers and stem wall as well. This all works together to prevent / limit thermal transfer between these materials. One of the key concepts of a Passive House is to eliminate “thermal bridges”, which can be thought of as solid materials that transfer thermal energy between touching surfaces. So, we have eliminated the thermal bridging between the slab and ground, the ground and footer/stem wall, and the slab and stem wall. Below is a diagram showing the slab design.

BPH slab to stem wall to exterior wall details

Further reading in the PHIUS 2021 Guidebook.

Why did we chose EPS?

There aren’t many insulation types that are well suited for ground contact. The primary types for below grade insulation are expanded polystyrene (EPS) and extruded polystyrene (XPS). Key reasons for choosing EPS over XPS:

  • Consistent R-values over time
  • Reduced moisture absorption with higher drying potential
  • Lower cost by 10% – 30%

Finding a local EPS supplier was a bit more challenging as XPS is more readily available, but we settled on Insulation Company of America, https://insulationcorp.com/. They custom cut our molded U-shaped footer insulation , which made pouring the footer much easier.

References:

The stem walls are done

The stem wall is the portion that transfers the house wall weight down to the footers and eventually to the ground. Our stem wall isn’t very large as the footers are only 32 inches deep to get under the frost line. The footers are 8 inches thick, thus the stem wall is 24 inches high. All that could likely be summed up with a nice picture.

Stem wall

It’s hard to see in that picture, but the lower 2 blocks are standard 8 x 8 inch, while the top block is 8 x 4 inched. This is to accommodate a 2 inches of insulation between the slab and the stem wall while still allowing for a 2 inch overlap from the slab to the lower stem wall for load transfer (not needed as the primary load is supported by the foam, but it’s another example of a good “belt and suspenders” approach). I’ll get into more in depth details on the wall structure and insulation in a future post.

Starting off with a good foundation of insulation

The digging continues with the footers. These are 24” wide and are poured into an EPS footer mold that both insulates them from the ground , preventing thermal bridging, as well as creates a mold for the concrete to be poured into. With the cost of lumber, this was a slick idea to have the foam shaped and permitted rapid install of the footers.


Doesn’t that just look beautiful!

The footers are now all completed and on to the stem wall. Here is aerial footage of the completed footers.

What is a Passive House anyway?

This is a question we get asked often. While I do enjoy explaining it to others, I often times find myself rambling. So I thought I would try to be a bit more concise here with references for those interested in reading more about it.

Passive House (in common language)
A home designed to meet the highest levels of efficiency through the elimination of energy waste.

The technical Passive House Principals can be found on the Passive House Institutes page (PHIUS). The design principals do not dictate what materials a home uses, nor alternative energy sources. When I explain it, I usually start by says “It’s a normal house, with lots of insulation.” If folks are more interested, I dive deeper into the other keys areas of environmental management (in order of priority):

  • Water
  • Air
  • Vapor
  • Thermal

The “Perfect Wall” as described by Joe Lstiburek in a great Youtube playlist walking through some of the building science behind a Passive House.

Here is a picture from the PHIUS site which visually describes a Passive House fairly well (minus the subsoil heat exchanger).

Building has begun!!!

There are many changes occurring on this project, so to help keep me motivated, I’m going to try and provide more frequent updates, but try to keep them shorter.

So, to kick things off on the project, we had electric and data lines run from our shipping containers in the front yard to the build site, ~475ft away. This power will provide electricity to the construction site during build to avoid the need for generators. The power is being provided by our whole house battery array that is setup in our shipping containers.

Trench being dug
Build site power pole…also wifi

Will update again soon.

Solar battery testing with Electrodacus, part 2

This post is dedicated to graphing the data logged by the Electrodacus SBMS0, so if that interests you, please continue.

I’ve had some feedback from others after the first post 1 and wanted a bit more automation myself, so what I have done to help out with getting data logging up and running more quickly was develop a simple python script to install and configure all pieces on the Raspberry Pi.

I’ve only had the chance to test this out on a single new Raspberry Pi and these were the manual steps needed to get things going:

sudo mkdir /home/SBMS0
cd /home/SBMS0
sudo wget -O SBMS_Pi_install.py https://raw.githubusercontent.com/Burtond/Electrodacus/master/SBMS_Pi_install.py
sudo python SBMS_Pi_install.py

The above code does the following:

Line 1-2: Creates an SBMS folder for storing config files and scripts

Line 3: Gets the install code from my GitHub repo

Line 4: Runs the install code that installs: Pi updates, InfluxDB, Grafana, Python script as a service for SBMS0 data parsing. This step takes a while due to all of the Raspberry Pi updates.

The next step is to create a dashboard! The script should remind you what URL you need to hit to log in, but it should be https://<Pi IP address>:3000. The default username and password for Grafana at the time of this post is admin/admin. I wasn’t able to find a quick way to get the dashboard imported, but the dashboard is meant to be custom for your needs anyway. I have posted a version of mine with some examples to help folks get going and it’s really easy to Import a dashboard in Grafana and simple paste the JSON content from my example dashboard here: https://raw.githubusercontent.com/Burtond/Electrodacus/master/SBMS-Grafana%20Dashboard.json

Steps for dashboard import:

  • Hover over Dashboards icon on right, select Manage
  • Select Import
  • Copy the text from the above URL and paste it into the “Import via panel json”
  • Select Load

At this point you should have a dashboard with a number of metrics, but it will only populate if you have data coming from SBMS0 plugged into the SBMS via USB. You will also need UART enabled (USART Data Log = 1). I left the baud rate and Log interval at their default. More details on the manual: https://electrodacus.com/SBMS0/SBMS0.pdf

Solar battery testing with Electrodacus, part 1

While this is indeed my first post about the work we have been doing with solar, there have been a number of experiments with all sorts of learning. I do hope to get to posting about the past learning, but I knew if I never started somewhere it just wouldn’t happen. Please note that this particular post is more on the technical side (boring for some, fun for nerds like me).

The focus of this post will be the solar battery management system (BMS) testing that I have done with building a custom 24V battery using 8 x 3.2V Lithium Iron Phosphate (Lifepo4) cells. The cells were purchased from https://www.electriccarpartscompany.com/ and the BMS from http://www.electrodacus.com/ (loving the BMS by the way). The purpose of this testing was to prove in small scale what we plan to do in large scale with our entire home (that will be a different post). The plan was to build a battery bank capable of doing the following:

  • Charge from solar, but be protected from over charging
  • Consume battery power in the form of AC 120V, but be protected from over discharging

You can read more about the Solar BMS (SBMS) from the builders site, but it’s enough to know that this BMS was part of a kickstarter and from what I can tell is not as well known, but that’s not for lack of features. I have also purchases the DSSR20 modules from the same site as an alternative to using a traditional charge controller (MPPT).

Let’s get into the brief design, then I’ll conclude with how I am monitoring things. Here is how I have things wired:

Please note that I do NOT have the inverter connected to the SBMS0 for shutdown during low voltage, this was due to a mistake that I made in the purchase of an inverter that doesn’t have that capability, but that didn’t stop my other testing. Things to note:

  • Solar panels are in series due to their smaller size and lower voltage (small scale testing remember)
  • Two shunts are for measuring both current flow to/from the battery as well as the power coming from PV
  • 1KOhm resistor needed as part of the SBMS0 managing the DSSR0 per documentation: https://electrodacus.com/DSSR20/DSSR20.pdf, page 7

So, the fun part of this project was using the manual for the SBMS0 to extract the rich data provided via the USB serial connection described in detail in the manual: https://electrodacus.com/SBMS0/SBMS0.pdf. The SBMS0 has local logging capability and a very simple web interface that can be accessed with the WiFI module, but only if the device hosting the web page connects locally to the broadcast Wifi connection on the SBMS0. If that sounds complicated, it sort of is. My goal was to gain access to all of the available information from my home network. So, the project began 🙂

I won’t bore you with the details of the different iterations of what I did, but let’s get right to where I ended up (and am very happy with). Components used for the final solution:

  • Raspberry Pi 3 B+, this has wifi
    • Installed with Raspbian Lite
  • Custom Python script, used the code base from a fellow SBMS0 automation guru David A. Mellis / Tom Igoe found on the community site…I heavily modified the python code to use the serial connection and NOT parse HTML. I also added all of the logic to put the data into an InfluxDB to provide the data source for all my graphs. Here is the link to that code I wrote.
  • InfluxDB, used a simple guide here to install and configure on my Pi
    • Influx python library also needed: sudo apt-get install python-influxdb
  • Grafana, awesome graphing tool installed on the Pi using guide found here

Here are the steps I took to get things going:

  • Installed software above
  • Created a database in InfluxDB
    • > influx
    • # CREATE DATABASE SBMS
  • Made up a measurement name and instance name for better graphing in Grafana
    • These fields are used in the python script
  • Ran the python script interactively (through a simple putty session)
    • This allowed me to troubleshoot things and see if a messed up the script, but once things were smooth, I created a service to run the python script using the following commands:
      1. sudo nano /etc/systemd/system/SBMS-Logger.service
        • Simple service configuration file, mine is located here
      2. sudo systemctl enable SBMS-Logger.service
      3. sudo systemctl start SBMS-Logger.service
  • Open Grafana at https://<Your-Pi-IP>:3000
    • Add your InfluxDB as a datasource, this was very simple since the DB was local and for me it was already in the list
    • Start making graphs with your data. This wasn’t fast for me as it took my a bit of learning the interface, but within 5 min I had my first dashboard with two graphs.

I played around with things for a week or so and made a number of code updates with Grafana alerts and all sorts of fun things, but they were all personal preferences. I even went ahead and added my Samsung SmartThings data to Grafana and have all sorts of cool stuff now. Anyway, I hope this helps someone out who might be looking at a solution for graphing data on the cheap, especially with an AWESOME BMS from http://www.electrodacus.com/. I’ll close with my current SBMS0 dashboard: