Tip, CEB Blocks, Zipties

I had a great meeting with Tip, a nice day out in town and then pressed a few more bricks. One of the best parts of the meeting with Tip was his change of mind in the difficulty of building our own windows and doors. This was one of the last jobs that he didn’t think we’d be able to do, and I feel confident now that we can do it, and that we can get exactly what we want by doing it that way.

Also got some other questions answered by Tip, though it seems like there are always a million more. It seems like we are starting to gain the confidence in ourselves to not have to ask Tip about each and every detail.

We pressed some bricks with added lime & sand, just lime and just sand. They definitely feel much stronger and solid. Will be interesting to see how they dry. There were some bricks that were made from some pretty big sized aggregate that turned out pretty bad, but the others are looking pretty good.

Also got a switch installed to control the shaker motor which seems to be doing its job pretty well. We added some zipties and carboard to the hydraulic cables in an effort to reduce rubbing so that they last longer. It was a little tricky, mostly because the line to the primary cylinder isn’t long enough and so is pretty taught and inflexible. This made it hard to ziptie it in a way that would prevent it from rubbing.

Thermal Bridging in a CEB Dual Wall with Cavity Insulation and Buttresses

Wall systems made of two CEB walls with cavity insulation lead to unusual (to other wall systems) thermal bridging problems.

Say you have two walls made of 4” wide block forming a 12” insulation cavity. CEBs have r-value of 0.25 while insulation have an r-value of 2.7. The total r-value is roughly 34.4 which is great:

1
0.25*4" + 2.7*12" + 0.25*4" => 34.4

Suppose that every 4 blocks, you place a block lengthwise to add some micro-buttresses which give extra strength to the wall. According to the typical linear r-value method, you would do a weighted average of the two different situations:

1
2
3
4
12" of insulation: 0.25*4" + 2.7*12" + 0.25*4" => 34.4
4" of insulation: 0.25*12" + 2.7*4" + 0.25*4" => 14.8
weighted average (24" of 12" thick insulation for every 4" of 4" thick insulation):
(34.4*24" + 14.8*4")/28" => 31.6

This predicts only a small 8.1% decrease in average r-value resulting in 8.8% of additional heat loss. Not bad given the huge amount of extra strength the micro-buttresses add.

/images/wall.png

Therm

I’ve modeled this wall system in THERM, and due to the conductivity of the CEB blocks the heat loss is actually much worse. A rough reading of the renderings THERM provides predicts roughly 50% more heat loss with the buttresses than without. This is because heat travels so well through the CEBs. In areas near to the 4” insulation gap, heat will collect over a large area of the CEB wall, funnel into the 4” thermal bridge and then spread out along the outside wall.

In the diagrams below, you can see the top half of the wall which has no buttresses, and the wall section below which does. The color indicates heat flow in BTU/hr*ft^2. High numbers are bad. I’ve set up the scale of the left diagram so that any white section indicates that the heat loss is more than 20% higher than it would be without the buttresses. This is most of the wall. In the second diagram you can see that large sections of the wall are loosing heat at 2.5x the rate that they would without the buttresses.

/images/wall-20p.png /images/wall250p.png

Conclusion

Adding buttresses can help with the strength of the wall, but detrimentally effect the insulating value of your cavity.

The Flip Side

On the other hand, CEBs high conductivity makes them great at quickly absorbing and evenly distributing heat throughout the house that is gained through passive solar design. They act as great heat sinks in the winter and cool sinks in the summer.

Here is the THERM model used in the above examples

Note to OSE Microhouse designers: I haven’t run this example with your proposed 2” thermal breaks, but I imagine that they will loose heat at least twice as fast as a linear analysis might predict.

The Carbon Footprint of Plastic

We’ve been discussing the materials used in our new house and are pretty set on not using any plastic. However, there are a few key places where it might be extremely helpful so I decided to look into how bad it really is (from a carbon footprint perspective). I am still strongly opposed to having exposed plastic that would off-gas and degrade into the air, but if it is built into the structure maybe I wouldn’t mind quite so much. Here are the numbers I came up with:

  • 600 square feet of 6 mil plastic → 100 kilowatt hours of electricity
  • 100’ of 3/4” PEX tubing → 45 kilowatt hours of electricity

This is only counting the manufacture of the materials I believe, not the transport of the finished product. for a reference point, our current house uses about ~120 kilowatt hours of electricity per month. The average home in the US uses about 800 kilowatt hours. This will be helpful in determining when we want to use plastic.

Sources:

Swarms

So I’ve been experimenting with generating swarms and was able to get some basic code working pretty quickly thanks to some Particle Systems example code on NeHe. Here are some of my first steps:

I think the next step is going to be to get multiple swarms each operating on different rules in the same space interacting.

Sound Absorbing Qualities of a CEB Wall

Sound absorption is measured in decibels where the higher the number, the greater a silencing effect the material has. I looked around for the sound absorption numbers on a few materials and found these:

1
2
3
4
5
6
7
8
9
10

Plastered Straw Bale | 20 inches | [59.8 db](http://www.acoustics.org/press/130th/lay03.html)
CEB Wall | 15 inches | [56 db](http://www.oskam-vf.com/CEBS_living_building_material.html)
CEB Wall | 10 inches | [56 db](http://www.use-it.co.za/Compresses_Earth_Building_System_(signed).pdf)
CEB Wall | 16 inches | [45 db](http://www.scribd.com/doc/85198443/2009-11-02-MaterialConcept-CompressedEarthBlock)
Plastered Concrete block | 7 inches | [53.3 db](http://www.acoustics.org/press/130th/lay03.html)
Insulated Glass | 1/2 inch | [28 db](http://www.cardinalcorp.com/wp-content/uploads/pdf/tsb/ig/IG09_05-08.pdf)
Glass in General | 1/8 inch - 7/16 inch | [22 - 35 db](http://portal.hud.gov/hudportal/documents/huddoc?id=DOC_16417.pdf)
Doors | --- | [28 - 34 db](http://portal.hud.gov/hudportal/documents/huddoc?id=DOC_16417.pdf)
Rice Hulls | --- | ???

There are some good more wall and material types along with their ratings on the Sound Transmission Class wikipedia page. For reference, at 50 db, “very loud sounds such as musical instruments or a stereo can be faintly heard; 99% of population not annoyed” and at 60 db, “superior soundproofing; most sounds inaudible”.

It seems that with both straw bale and CEB walls will provide significant sound proofing and that the weakest link is likely going to be in the windows and doors.

This is how people who are really picky about sound proofing do it: None.

Single Instance Application with command line interface

I wanted a python gtk application to open a new window on its first execution and then have subsequent executions send their command line arguments to the initial application rather than starting a new one. Here is the template which provides that functionality:

download singleinstanceapp.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
 
"""
This will only spawn one gtk application at a time. If this command is executed
while an instance is already running, the command line arguments are sent to the
already running application.
"""


import sys

import pygtk
pygtk.require('2.0')
import gtk

import socket
import threading
import SocketServer

class ThreadedTCPRequestHandler(SocketServer.BaseRequestHandler):
def handle(self):
data = self.request.recv(1024)
cur_thread = threading.currentThread()

# do something with the request:
self.server.app.label.set_label(data)

# could instead of the length of the input, could return error codes, more
# information (if the request was a query), etc. Using a length function
# as a simple example
response = 'string length: %d' % len(data)

print 'responding to',data,'with',response
self.request.send(response)


class ThreadedTCPServer(SocketServer.ThreadingMixIn, SocketServer.TCPServer):
stopped = False
allow_reuse_address = True

def serve_forever(self):
while not self.stopped:
self.handle_request()

def force_stop(self):
self.server_close()
self.stopped = True
self.create_dummy_request()

def create_dummy_request(self):
client(self.server_address[0], self.server_address[1], 'last message for you')


def client(ip, port, message):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((ip, port))
sock.send(message)
response = sock.recv(1024)
print "Received: %s" % response
sock.close()

def start_server(host, port):

server = ThreadedTCPServer((host, port), ThreadedTCPRequestHandler)
ip, port = server.server_address

# Start a thread with the server -- that thread will then start one
# more thread for each request
server_thread = threading.Thread(target=server.serve_forever)
# Exit the server thread when the main thread terminates
server_thread.setDaemon(True)
server_thread.start()

return server


class SingleInstanceApp:
def destroy(self, widget, data=None):
self.server.force_stop()
gtk.main_quit()
#exit(1) # I'm sorry but mozembed is making a huge pain in my ass

def __init__(self, server):
self.server = server

# create a new window
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_default_size(300,30)
self.window.connect("destroy", self.destroy)

self.label = gtk.Label("hello world")
self.window.add(self.label)

self.window.show_all()

# and the window
self.window.show()

def main(self):
gtk.gdk.threads_init()
gtk.main()

if __name__ == "__main__":
# pick some high port number here. Should probably put this into a file
# somewhere.
HOST, PORT = "localhost", 50010

server = None
try :
client(HOST, PORT, ' '.join(sys.argv))
print 'an insance was already open'
except socket.error :
exceptionType, exceptionValue, exceptionTraceback = sys.exc_info()
if exceptionValue[0] == 111 :
print 'this is the first instance'
server = start_server(HOST, PORT)
else :
# don't actually know what happened ...
raise

app = SingleInstanceApp(server)
server.app = app
app.main()

The first execution of this script starts an asynchronous server on a predetermined port. This port is checked each time the script is run to see if another instance has already been started. If it has, the command line arguments are sent to the existing instance which can react to them however you want.

download singleinstanceapp.py

Simple, Cheap, Easily Adjustable Domestic Hot Water and Radiant Floor System

Here are the design requirements I used when searching for a home and hot water heating system:

  • cheap
  • simple
  • passable by building department (Indiana code follows IBC)
  • low co2/pollutant emissions
  • expandable to include, but not require solar collectors
  • provide domestic hot water
  • provide 100% of backup heat (when the sun isn’t shining) via radiant floors for 700 square foot, highly insulated passive solar house

Electricity

There are two primary ways to heat water with electricity. One is with a heating element which is how almost all residential hot water systems work, and the other is with a heat pump. Heat pumps can be 2 - 3 times more efficient, but are more complicated, expensive, and are most efficient when it is hot out - exactly when a solar hot water system would be better. Resistive heat is how most electric hot water heaters work. On this table, this kind of heat is both the most expensive and emits the most co2 out of all options. Though, this comparison doesn’t take into account that all other forms of heat require that you vent some of your warm conditioned air to the outside, see Natural Gas below. It also doesn’t take into account other issues such as local air quality (with wood), pollution and non-co2 environmental effects such as fraking and mercury rain. On the other hand, it is quite simple to set up a space or baseboard heater, and if you don’t need much heat from it, it may be easier to go with that than to put a bunch of thought into a more complex system. Instant electric water heaters are simple to integrate into a simple radiant floor system.

If you don’t actually want hot water all the time and you are only installing an automatic hot water system to meet code and don’t intend to use it, electric hot water has one of the lowest up front costs, at around $210 (installed) for an instant hot water heater and $250 (installed) for a smallish 40 gallon tank heater. For the tank heater you will need a 50A 240V breaker which is $10 and some 8-3 wire to your box (15’ is $30). An instant hot water tank will require a larger breaker and larger wire about $10 more expensive. Depending on the other appliances in your house, this could require a larger panel or service to your house, which could quickly add more cost.

Wood

Purchasing wood costs about the same as gas 2. Obviously, growing your own is also an option. I would be interested to see how much space and how many nutrients are required to grow enough wood to heat a home. I was hoping to be able to use a heat exchanger around the fire to provide hot water when the sun isn’t shining, but code requires that we have hot water available at all times, and so this is not an option. They also disallow all forms of DIY water heating … you must use only UL listed appliances. Even if code isn’t an issue, another down side is that we couldn’t use it to get hot water in the spring summer and fall without heating the house at the same time. In the summer, a fairly simple solar hot water collector should suffice for hot water, but it gets a little harder in the spring and fall.

Another down side to the wood stove, is up front cost. On craigslist I’ve found stoves for $300 or so, then at least another $400 for chimney, cap, roof connection, etc. In addition, cheap wood stoves on craigslist tend to be much larger than we need for our house, and very inefficient. We are building in a fairly high density area (30 adults / acre) and with everyone using this kind of heat, air quality would suffer very quickly. Stoves with a gasification step tend to have very low emissions and high efficiency. An efficient stove properly sized for our small house would be $800 instead of $300. Here are some small wood stove options:

Another option for wood is to build a rocket mass heater. (unless code requires UL listed appliances like it does here) These can be very efficient, low emissions and built by hand using materials that cost less than $100 total. They are quite large, so they should be taken into account when designing a space. It is cheap, but requires you heat your house if you want hot water, which isn’t always wanted. This kind of system could wind up being ideal if you have the time and space for one as well as the flexibility to try it out for a year in combination with a solar hot water system and try to balance them out so that your solar collectors heat the water in all of the times that you don’t want to start a fire inside. I look forward to experimenting with this type of system.

Solar

A good solar hot water system is either quite expensive - typically starting at $1000 or will require a bit more time researching DIY systems. I think that in the future, I would like to do this research or spend this money, but right now, I have other priorities. This is the reason for the design requirement above of a system which doesn’t require, but could easily be altered to take advantage of solar hot water. We are already incorporating passive solar heating ideas into our house, so heating with solar hot water doesn’t make much sense. The only time we will need extra heat is when the sun isn’t shining.

Propane

Propane is very similar to natural gas. It doesn’t require a gas line, which can be helpful. The fuel tends to be 40% more expensive than natural gas and emits 20-30% more CO2 1. One of the other disadvantages of propane is that it is a bit harder to find cheap large used propane water heaters around here.

Natural Gas

In a small house like ours, a typical hot water heater is about the right size to use for heating water for a radiant floor heat system. On a very cold day with no sun, our house will need about 130,000 BTU per day 3. A typical hot water heater is rated for 36,000 BTU per hour or 864,000 BTU per day, which is more than enough to heat our house on a very cold day. It may also be possible to use a very small instant hot water heater. One problem with a natural gas heater is that it requires fresh air to burn and so most furnaces and hot water heaters suck warm inside air past the flame and then vent it outside. Not only do you lose warm inside air, sucking air through the heater causes cold air to be pulled in through cracks near windows and doors, which are already colder than the rest of the house. The vents for a small house tend to be around the same size as the vents for a large one, and so the effect is proportionately greater. That said, some small gas space heaters can be ventless and cheap ($120), but there are too many horror stories for me, especially in a well sealed house. People complain about high carbon monoxide levels, lots of condensation which wind up on the windows and rotting the wood, health problems, etc. There are some gas heaters which are direct vent, which means they suck outside air to burn and then vent the exhaust, but they are more expensive ($400) and of unknown efficiency. This heater could be a good option if there is already a gas line to the house.

Conclusion

We are building two houses this year. In our house we will heat with electric instant hot water through a radiant floor and in the rental, we will use a wood stove. Both will likely use electric hot water tanks (for code, with DIY solar hot water and wood heat exchangers soon to follow).

service error when starting mongodb

I was trying to start mongodb just now and couldn’t understand why it wasn’t working. Turns out I needed to be sudo - not the most clear error message …

1
2
3
4
5
6
7
8
 
$ service mongodb start
start: Rejected send message, 1 matched rules; type="method_call", sender=":1.11

212" (uid=1000 pid=1360 comm="start) interface="com.ubuntu.Upstart0_6.Job" membe
r="Start" error name="(unset)" requested_reply=0 destination="com.ubuntu.Upstart
" (uid=0 pid=1 comm="/sbin/init"))

$ sudo service mongodb start
mongodb start/running, process 1326

Screwing and Nailing Into CEB Blocks


I’ve been weary of screwing and nailing into CEB blocks for a long time, but have had no good evidence to support my worries. I was pretty surprised by how well they grip the block and am not as worried about hurting them as I used to. I was able to lift the block using two screws which means they were each holding around 15 pounds. I am still a bit weary of attaching anything very heavy like shelves, cabinets or counter tops to them, but I’m thinking that hanging mirrors, pictures, etc should be fine. More experimenting to come. Any experiments you would like me to try?