Smart Home Archives - Matthew Gove Blog https://blog.matthewgove.com/tag/smart-home/ Travel the World through Maps, Data, and Photography Tue, 03 Aug 2021 18:21:10 +0000 en-US hourly 1 https://wordpress.org/?v=6.1.5 https://blog.matthewgove.com/wp-content/uploads/2021/03/cropped-android-chrome-512x512-1-32x32.png Smart Home Archives - Matthew Gove Blog https://blog.matthewgove.com/tag/smart-home/ 32 32 An Ingenious Smart Home Office Automation Hack https://blog.matthewgove.com/2020/01/13/an-ingenious-home-office-automation-hack/ Mon, 13 Jan 2020 19:56:24 +0000 https://blog.matthewgove.com/?p=887 When I started experimenting with smart home technology and automation last year, I spent way too much time planning around the “smart” part of the smart home technology. Indeed, as a user, my first attempt didn’t gain much benefit. I just had a computer telling me when I turned on […]

The post An Ingenious Smart Home Office Automation Hack appeared first on Matthew Gove Blog.

]]>
When I started experimenting with smart home technology and automation last year, I spent way too much time planning around the “smart” part of the smart home technology. Indeed, as a user, my first attempt didn’t gain much benefit. I just had a computer telling me when I turned on and off my lights.

Once I figured out that I needed to achieve smart home automation, the whole ball game changed. Automating simple tasks not only makes your life much easier, but it can also save you a lot of money. Some of the smart home automation solutions I use include:

  • Automatically turn off all lights and lock all doors when I leave home or go to bed
  • Automatically turn on the living room lights when I arrive home after dark or wake up in the morning.
  • If I’m home, turn on the living room lights 10 minutes before sunset
  • Turn the air conditioning off automatically when I open the house up (open the doors and windows)

Solving the Flaky Internet Connection Problem

I live in a rural area. One of the main issuesis having a fast, reliable internet connection. Where I live, cable and DSL internet connections are not an option, so I use a satellite internet connection. The satellite internet package gives me plenty of data and bandwidth to run my business. It’s also fast enough to stream Netflix, YouTube, and other audio and video channels.

One of my biggest complaints with satellite internet is that you get a lot of very short internet outages (less than 10 minutes). Anything from a bird landing on the satellite dish to sharp increases cable attenuation due to the extreme heat in the summer to thunderstorms passing overhead can cause these outages.

While it doesn’t seem like a big deal, those 10 minute outages always seem to hit when I’m on a Skype call with a client or a FaceTime call with my family. Murphy’s Law, right? To further compound the matter, more often than not, I have to reset the modem to re-establish the internet connection. Can we use smart home technology to automate the process?

The solution here is to connect your modem (and/or router) to a smart switch or smart outlet. Why I didn’t think of this sooner is beyond me. My smart home controller is kept in-house (it is not dependent on the cloud). It does not require an internet connection to work locally. In the worst case scenario, I can reset the modem with a couple taps on my phone instead of having to crawl around and contort myself just trying to reach the plug on the modem.

Smart outlet that automatically resets the modem when the internet goes down.
New smart outlet that will automate my modem reboots when the internet goes down. I chose the outlet instead of a smart switch because of extremely limited space where the modem lives.

Automating the Modem Reset

The truly ingenious, and also most challenging part of the solution is configuring the system so it automatically resets the modem when the internet goes out. Note that on just about every smart home system, this will require writing a script. Thankfully, it is not too difficult.

In the example below (in pseudocode), the script will ping Google’s server 4 times, with 15 seconds between pings. If all 4 pings fail or do not receive a response, then it means the internet is down. The modem will be rebooted using the smart outlet or smart switch.

# First, define the IP Address you wish to ping. This *MUST* be
# an external IP Address (not on your local area network). In this
# example, we will ping one of Google's servers.
ipAddressToPing = "8.8.8.8"

# Then, define the number of seconds you wish to wait between pings.
secondsBetweenPings = 15

# Define the number of pings you want to perform
numberOfPings = 4

FOR i = 1 TO numberOfPings
   Ping ipAddressToPing
   IF i < numberOfPings THEN
      Wait secondsBetweenPings
   END IF
END FOR

IF All Pings Fail Or Receive No Response THEN
   Turn Modem Off
   Wait 30 Seconds
   Turn Modem On
   Note in system log that modem was restarted
END IF

A Big Step, But Still Not Perfect

Writing the script was a huge step towards the full solution. There’s still a major issue. We still need a trigger to run the script. The most logical solution is to run the script on a time trigger. In other words, run it on the top of every hour or run it every X minutes. However, the problem is that I need to reset the modem as soon as the internet goes out. Even that wouldn’t solve the issue of my Skype calls getting disconnected.

You could in theory have the script running pretty-much non-stop to detect outages sooner, but my smart home controller is not powerful enough to do that while still running the rest of the system. Back to the drawing board.

Finally Solving the Skype/FaceTime Issue

It turns out that trying to close the internet outage gap completely is impossible. Instead, it is much easier to just build a bridge over it. Many routers nowadays come with a feature called Dual-WAN Functionality. With Dual-WAN, you can connect two modems to the same router. In a Dual-WAN setup, you can choose between two options:

  1. When the primary connection is online, 100% of the traffic and bandwidth will flow through it. When it goes down, the router will automatically switch to the secondary or backup connection until it can re-establish the primary connection.
  2. Split the bandwidth so that the two modems share the load. This is called load-sharing.

Option #1 is exactly what I need to “bridge the gap”. It keeps my Skype/FaceTime calls connected and solves the issue of triggering the modem reboot script. Even better, I had an ace up my sleeve that was the perfect piece to complete the puzzle.

Earlier this fall, I switched my cell phone carrier, and opened two new lines (a work line and a personal line). When I signed up, the new carrier had a promotion where they would give me third line for free as long as I kept the other two lines in good standing. That free line is now a cellular backup for my primary satellite internet connection. It uses USB tethering to connect to my router. The cellular line comes with 3 GB of 4G tethering per month, followed by unlimited 3G if you use it all up. I can pay for additional 4G data if for some reason I need it. That’s more than enough to keep me going through the brief satellite outages.

Updating the Script for the Dual-WAN Setup

So how do we update the modem reboot script for the dual-WAN setup? When do we trigger the script to run? It’s pretty easy: instead of pinging an external server to test the internet connection, ping the modem of the primary connection on the local network. In my case, that would be the satellite modem. When the router flips over to the cellular backup, you will not receive a response if you try to ping the primary modem. Then I simply run the modem reboot script at the top of every hour. The router does all the work figuring out when the primary internet connection goes down. If the system is on the cellular backup, the satellite modem automatically reboots.

For those of you that are curious, this is what the final version of the smart home automation script logic looks like. Happy coding.

# First, we will have the system ping the primary/satellite modem,
# since you will not receive a response when you are on the
# cellular backup connection.
ipAddressToPing = "192.168.XXX.XXX"  <-- IP Address of satellite modem

# Then, define the number of seconds you wish to wait between pings.
secondsBetweenPings = 15

# Define the number of pings you want to perform
numberOfPings = 4

FOR i = 1 TO numberOfPings
   Ping ipAddressToPing
   IF i < numberOfPings THEN
      Wait secondsBetweenPings
   END IF
END FOR

IF All Pings Fail Or Receive No Response THEN
   Turn Modem Off
   Wait 30 Seconds
   Turn Modem On
   Note in system log that modem was restarted
END IF

The post An Ingenious Smart Home Office Automation Hack appeared first on Matthew Gove Blog.

]]>
Building the Anti-Woodpecker System Prototype https://blog.matthewgove.com/2019/12/02/building-the-anti-woodpecker-system-prototype/ Mon, 02 Dec 2019 21:00:00 +0000 https://blog.matthewgove.com/?p=871 The mathematics have confirmed that the anti-woodpecker spray system can protect the whole house. It’s time to start building a prototype. Most of the system is just 3/4 inch PVC pipe, so we will focus on the smart-home integration with the prototype. I originally looked at using smart valves to […]

The post Building the Anti-Woodpecker System Prototype appeared first on Matthew Gove Blog.

]]>
The mathematics have confirmed that the anti-woodpecker spray system can protect the whole house. It’s time to start building a prototype. Most of the system is just 3/4 inch PVC pipe, so we will focus on the smart-home integration with the prototype.

I originally looked at using smart valves to control the water flow. As you can probably guess, they are not very cost effective. Smart valves run $250 to $300 a pop, and I need at least 2 of them for the system. It quickly becomes cost-prohibitive.

Thankfully, there was an obvious and much cheaper solution that I frequently use in smart-home technology. Instead of buying a smart device, which in this case would be the smart valve, buy a dumb device and connect it to a smart switch. All of a sudden, that $300 price drops to about $50. You can put a lot of “dumb + smart switch” devices for the cost of 1 smart device.

For the “dumb” valve, I used a solenoid valve that is used in irrigation systems. They are readily available at Lowe’s and Home Depot for about $15. Instead of using an irrigation timer, I will connect it to the smart switch. I put a Y-connecter on the spigot so I can still connect a garden hose without having to disconnect the woodpecker system. I included a ball valve on the bottom of the system if I ever need to drain the pipes on cold nights.

Valve System on the prototype anti-woodpecker sprayer
Valve system on the anti-woodpecker system prototype. The black thing with the wires sticking out of it is the dumb valve that turns the water flow to the system on and off.

The setup up top is dirt simple. I attached the PVC pipe to the bottom of the eaves with pipe clamps. I then drilled three 1/16 inch holes in the side of the pipe to be the sprayer nozzles. The actual system will have many more holes. Depending on the connection, the pieces of PVC pipe are either screwed or glued together. I tried to use screw connections whenever I could. If I ever needed to take the system down, replace a part, or make an upgrade, then I could.

Plumbing for the anti-woodpecker system underneath the eaves
Plumbing for the anti-woodpecker system prototype underneath the eaves

Now, it’s time for the moment of truth: turning it on to see if it will work. We’ll find out just how good my calculations were, seeing as stupid arithmetic errors were at one point one of my signature moves. Thankfully, using a script eliminates most of those.

Water spraying from the nozzles of the anti-woodpecker system
Sprayers in action. We have a successful prototype!

It turned on, the water sprayed forcefully, and the system didn’t blow itself to pieces! Win, win, and win.

A Few Observations of the Anti-Woodpecker Sprayer Prototype

One thing I noticed right away on the first test was that the valve had a hard time turning off. It eventually did, but it took way longer than it should have. This was due to the system having too much water pressure – mainly due to the fact that there was only 10 feet of pipe on the prototype. I was a bit concerned because I didn’t want to get in a scenario where the system activated while I was not at home and then couldn’t shut itself off.

After backing off the pressure by slightly closing the spigot, the system worked much better. The valve had no issues turning off, and the anti-woodpecker sprayers were actually more powerful with less water pressure. Remember in the calculations, if we over-pressurize the system, we lose all of that extra energy and more due to friction. I’ll be the first to admit I’m a bit of a nerd when it comes to things like this. As cool as it is to see in the mathematics and equations, it’s even more fascinating to actually see it in a real-life application.

Where Do We Go From Here

The next step will be to expand the system so it protects the entire house. The big challenge will be to get the motion sensors to work properly. Motion sensors are designed to have a very wide field of vision because they’re primarily used for security purposes, but I need them to have a narrow field of vision. I don’t want the system to activate every time someone walks by or every time I step outside. I’ve got a few ideas right now, but they need some more thought before I can elaborate on them here.

An Added Bonus

Ever since I bought the house, I have wanted to put misters on my patio to make sitting out there in the hotter months more comfortable. The anti-woodpecker spray system will act as the foundation for the misters, which will make installing the misters much easier, since the plumbing will already be there.

Well, that’s it for now. Stay tuned for future updates. This battle is only beginning. Thankfully, mother nature has given me a big assist over the past few weeks with cold, rainy weather, which has kept the woodpeckers at bay. I fully expect them to be back out in full force later this winter and into the spring.

The post Building the Anti-Woodpecker System Prototype appeared first on Matthew Gove Blog.

]]>
Mathematics of the Woodpecker Deterrent System https://blog.matthewgove.com/2019/11/24/mathematics-of-the-anti-woodpecker-system/ Sun, 24 Nov 2019 21:42:00 +0000 https://blog.matthewgove.com/?p=856 Well, this is the moment of truth. It’s time to calculate the pressure loss from a leak to see if this crazy idea for deterring woodpeckers will actually work. The idea is that the woodpecker deterrent will connect to my outdoor hose spigots, which hopefully will provide ample water pressure […]

The post Mathematics of the Woodpecker Deterrent System appeared first on Matthew Gove Blog.

]]>
Well, this is the moment of truth. It’s time to calculate the pressure loss from a leak to see if this crazy idea for deterring woodpeckers will actually work. The idea is that the woodpecker deterrent will connect to my outdoor hose spigots, which hopefully will provide ample water pressure to protect the house. There are ample electrical outlets outside as well to power any smart devices that will be outside.

This blog post will read more like a page of notes instead of a formal “article”, but it’ll at least give you a window into my train of thought. To make these calculations much easier, everything will be converted to metric units.

My water comes from a well, so I know the exact water pressure coming out of the well. However, these calculations do not take into account any pressure losses going from the well to the house. I assume that they are minimal, and can be ignored.

General Notes and Conversions

  • Well is at 50 PSI = 344.738 kPa
  • Flow rate is 40-60 liters per minute
  • Friction loss at 10 gallons per minute:
    • 1/2 inch pipe: 35.5 PSI per 100 ft
    • 3/4 inch pipe: 8.7 PSI per 100 ft
    • 1 inch pipe: 2.6 PSI per 100 ft
  • Friction loss at 15 gallons per minute:
    • 1/2 inch pipe: Unknown – a lot
    • 3/4 inch pipe: 18.4 PSI per 100 ft
    • 1 inch pipe: 5.5 PSI per 100 ft
  • Pressure loss from elevation
    • 10 feet of rise: -4.33 PSI
    • 10 feet of fall: +4.33 PSI
    • This equates to 9,794.2 Pa per meter

Calculating Pressure Loss Due to a Leak

Since the spray mechanism will just be holes drilled in the side of the pipe, we can calculate the pressure loss due to these “leaks” to ensure the system has enough water pressure to protect the house. Because I had to run these calculations a bunch of times, I wrote a Python script that can run these calculations for different scenarios very quickly.

One fascinating thing about these calculations is that water flowing through a pipe behaves just like an electrical circuit. When there is a hole in the pipe, the leakage reduces the total resistance to the flow, thus causing an increase in flow rate. Increased flow rate means that a larger proportion of ∆p occurs upstream of the leak, thus resulting in less pressure drop across reduced resistance downstream of the leak.

  1. From the pipe diameter, calculate the pipe’s cross-sectional area (Apipe).
  2. Then calculate the area of the hole (Ahole).
  3. Calculate the fluid velocity (vpipe) through the pipe.
    Equation for fluid velocity
    where Qpipe is the flow rate (listed above as 40-60 liters per minute). Note that this will need to be converted to cubic meters per second (cms)
  4. The volume flow out the leak hole is then simple:
  5. Then we can calculate the pressure drop from the leak rate equation, which is derived from Bernoulli’s equations.
    Equation for pressure loss due to the leak
    Note: C is a flow coefficient and for water, C = 0.61.
  6. We can use this pressure drop, along with the initial pressure coming out of the spigot, to calculate the maximum number of holes we can add in the sprayer system before running out of pressure. In Python, these steps look like this:
    Python script to calculate pressure loss from a leak

Accounting for Elbow Fittings and Tees

We can account for pressure losses going around corners (i.e. though fittings) by assigning an equivalent length of pipe for each fitting and calculating the pressure loss due to friction over that length. The equivalent length is a factor calculated from the number of pipe diameters required to get the equivalent length. We are working with several different fittings:

FittingEquiv. Length – Num Pipe Diams
90° Elbow Curved, Standard Radius30
45° Elbow Curved, Standard Radius16
Tee – Through Branch as Elbow60
Hose Coupling5

For example, in 3/4-inch pipe, the equivalent length of a 90° elbow would be:

l = 0.75 inches * 30 = 22.5 inches

Then you would simply multiple the pressure loss due to friction by that equivalent length to obtain the pressure loss due to the elbow fitting.

Note: The 22.5 inches would also need to be converted to meters for our calculations.

Putting It All Together

To calculate the (approximate) maximum number of holes the system can support, we calculate the pressure at the end of the pipe system assuming that there are no holes or leaks and divide that number by the pressure loss per hole. The Python code to calculate this for all scenarios is:

leak_diameter_meters = LEAK_HOLE_DIAMETER * INCH2METER
pipe_diameter_meters = PIPE_DIAMETER * INCH2METER
pipe_flow_rate = SPIGOT_FLOW_RATE * LITRES_PER_MIN_TO_CMS
friction_loss_metric = FRICTION_LOSS * FRICTION_LOSS_CONVERSION_FACTOR
hole_pressure_loss = pressure_loss_from_hole(pipe_diameter_meters, leak_diameter_meters, pipe_flow_rate)

pressure_loss_from_turning_spigot_up = friction_loss_metric * (ELBOW_45DEG + 0.1 + ELBOW_90DEG)
spigot_pressure_pa = SPIGOT_PRESSURE * PSI2PASCAL
print("Starting Pressure: {:,} kPa".format(round(spigot_pressure_pa/1000, 1)))

KEY_ELEV = "elevation"
KEY_DIST = "distance"
KEY_FITT = "fittings"

scenarios = {
	"master bedroom only": {
		KEY_ELEV: [2.1],
		KEY_DIST: [2.1, 6.75],
		KEY_FITT: [ELBOW_90DEG],
	},
	"master bedroom plus north side": {
		KEY_ELEV: [5],
		KEY_DIST: [2.1, 6.75, 6.42, 6.42],
		KEY_FITT: [TEE, ELBOW_90DEG * 2],
	},
	"master bedroom plus patio": {
		KEY_ELEV: [2.1],
		KEY_DIST: [2.1, 9.1, 3.03, 9.1, 3.03],
		KEY_FITT: [TEE, ELBOW_90DEG * 7],
	},
	"master bedroom plus north side and patio": {
		KEY_ELEV: [5],
		KEY_DIST: [2.1, 9.1, 3.03, 9.1, 3.03, 6.42, 6.42],
		KEY_FITT: [TEE, ELBOW_90DEG * 9],
	},
	"office guest room and south side": {
		KEY_ELEV: [5],
		KEY_DIST: [3.35, 0.8, 0.45, 2.58, 2.58, 6.42, 6.42],
		KEY_FITT: [TEE, ELBOW_90DEG * 5],
	},
	"office guest room only": {
		KEY_ELEV: [4.15],
		KEY_DIST: [3.35, 0.8, 0.45, 2.58, 2.58],
		KEY_FITT: [ELBOW_90DEG * 4],
	},
	"north side on garage spigot": {
		KEY_ELEV: [5],
		KEY_DIST: [3.5, 6.42, 6.42],
		KEY_FITT: [ELBOW_90DEG * 2],
	},
}

for scenario in scenarios.keys():
	elevation = scenarios[scenario][KEY_ELEV]
	distance = scenarios[scenario][KEY_DIST]
	fittings = scenarios[scenario][KEY_FITT]

	# Calculate pressure at the end of the pipe, assuming no holes/leaks
	end_pressure = spigot_pressure_pa - pressure_loss_from_turning_spigot_up - (PRESSURE_LOSS_FROM_ELEVATION * sum(elevation)) - (friction_loss_metric * sum(distance)) - (friction_loss_metric * sum(fittings))
	
	print("The pressure at the end of the {} system is {:,} kPa".format(scenario, round(end_pressure/1000, 1)))
	
	print("\tThe pressure loss in the system (sans holes) is {:,} kPa".format(round((spigot_pressure_pa - end_pressure)/1000, 1)))

	# Divide the pressure at the end of the pipe by the pressure loss from
	# one hole to determine the total number of holes the system can support
	num_holes = math.floor(end_pressure / hole_pressure_loss)
	
	print("\tThis supports up to {:,} holes ({:,} holes/meter), each with a pressure drop of {} Pa".format(num_holes, math.floor(num_holes/sum(distance)), hole_pressure_loss))

print("\n")

Script Results

Calculating pressure loss using 3/4 inch pipe and 1/16 inch “sprayer” holes, we get the following results. These calculations account for:

  • Elevation changes in the system/pressure loss due to gravity
    • Remember that for vertical hlow, we need to account for both pressure loss due to gravity and pressure loss due to friction
  • The pipes going around corners (elbow and tee fittings)
  • Pressure loss due to friction inside the pipe
  • Fittings needed to do a 180° turn out of the spigot to get the water up to the eaves
  • The script does not account for the negligible pressure loss due to straight fittings where two straight pieces are joined and do not go around any corners.
Matt:Desktop mattgove$ python3 pressure.py
Hole Diameter: 0.0625 inches
Pipe Diameter: 0.75 inches
Spigot Pressure: 50 PSI
Spigot Flow Rate: 60 Liters per Minute
Friction Loss: 18.4 PSI per 100 feet
--------------------------------
Starting Pressure: 344.7 kPa
The pressure at the end of the master bedroom only system is 281.2 kPa
	The pressure loss in the system (sans holes) is 63.5 kPa
	This supports up to 16,541 holes (1,869 holes/meter), each with a pressure drop of 17 Pa
The pressure at the end of the master bedroom plus north side system is 192.6 kPa
	The pressure loss in the system (sans holes) is 152.1 kPa
	This supports up to 11,332 holes (522 holes/meter), each with a pressure drop of 17 Pa
The pressure at the end of the master bedroom plus patio system is 189.9 kPa
	The pressure loss in the system (sans holes) is 154.8 kPa
	This supports up to 11,173 holes (423 holes/meter), each with a pressure drop of 17 Pa
The pressure at the end of the master bedroom plus north side and patio system is 103.8 kPa
	The pressure loss in the system (sans holes) is 241.0 kPa
	This supports up to 6,102 holes (155 holes/meter), each with a pressure drop of 17 Pa
The pressure at the end of the office guest room and south side system is 181.8 kPa
	The pressure loss in the system (sans holes) is 162.9 kPa
	This supports up to 10,694 holes (473 holes/meter), each with a pressure drop of 17 Pa
The pressure at the end of the office guest room only system is 250.3 kPa
	The pressure loss in the system (sans holes) is 94.5 kPa
	This supports up to 14,721 holes (1,508 holes/meter), each with a pressure drop of 17 Pa
The pressure at the end of the north side on garage spigot system is 219.5 kPa
	The pressure loss in the system (sans holes) is 125.3 kPa
This supports up to 12,910 holes (790 holes/meter), each with a pressure drop of 17 Pa

If we run this again for a “worst-case” scenario, let’s say 40 PSI and 30 liters per minute, the numbers are actually better. The reason is that the slower flow rate reduces the pressure loss due to friction (labelled as “Friction Loss” in the script output). Note how the pressure drop in the lower pressure/flow system below is only 5 Pa per hole, while in the high pressure/flow system above, pressure loss is 17 Pa per hole.

Matt:Desktop mattgove$ python3 pressure.py
Hole Diameter: 0.0625 inches
Pipe Diameter: 0.75 inches
Spigot Pressure: 40 PSI
Spigot Flow Rate: 30 Liters per Minute
Friction Loss: 8.7 PSI per 100 feet
--------------------------------
Starting Pressure: 275.8 kPa
The pressure at the end of the master bedroom only system is 234.9 kPa
	The pressure loss in the system (sans holes) is 40.9 kPa
	This supports up to 46,980 holes (5,308 holes/meter), each with a pressure drop of 5 Pa
The pressure at the end of the master bedroom plus north side system is 178.1 kPa
	The pressure loss in the system (sans holes) is 97.7 kPa
	This supports up to 35,611 holes (1,641 holes/meter), each with a pressure drop of 5 Pa
The pressure at the end of the master bedroom plus patio system is 191.8 kPa
	The pressure loss in the system (sans holes) is 84.0 kPa
	This supports up to 38,351 holes (1,454 holes/meter), each with a pressure drop of 5 Pa
The pressure at the end of the master bedroom plus north side and patio system is 136.0 kPa
	The pressure loss in the system (sans holes) is 139.8 kPa
	This supports up to 27,205 holes (694 holes/meter), each with a pressure drop of 5 Pa
The pressure at the end of the office guest room and south side system is 172.9 kPa
	The pressure loss in the system (sans holes) is 102.9 kPa
	This supports up to 34,586 holes (1,530 holes/meter), each with a pressure drop of 5 Pa
The pressure at the end of the office guest room only system is 209.7 kPa
	The pressure loss in the system (sans holes) is 66.1 kPa
	This supports up to 41,939 holes (4,297 holes/meter), each with a pressure drop of 5 Pa
The pressure at the end of the north side on garage spigot system is 190.7 kPa
	The pressure loss in the system (sans holes) is 85.0 kPa
	This supports up to 38,149 holes (2,334 holes/meter), each with a pressure drop of 5 Pa

Another Fun Fact

Thanks to Bernoulli’s Principle, as long as the “sprayer” holes are much smaller than the pipe diameter, each system will support the same maximum number of holes regardless of the hole diameter because the same volume of water exits each hole. Water will exit smaller holes with a higher velocity than bigger holes. Because of this, we want to make the smallest holes possible in the pipes.

Next Steps

Thankfully, these calculations of pressure loss confirm that there is enough pressure in the system to protect the entire house. In the next installment of this project, we will look at the parts needed to set up the system and we will actually start building a prototype.

The post Mathematics of the Woodpecker Deterrent System appeared first on Matthew Gove Blog.

]]>
Keep Woodpeckers Off Your House with this Crazy, but Proven Solution https://blog.matthewgove.com/2019/11/10/designing-a-macgyver-esque-solution-to-a-serious-woodpecker-problem/ Sun, 10 Nov 2019 17:05:00 +0000 https://blog.matthewgove.com/?p=847 This fall, our neighborhood has been dealing with an invasion of woodpeckers. While you would think they would stick to pecking on wood, they have been doing incredible amounts of damage to the stucco homes in our neighborhood, including my house. Who knew woodpeckers could peck through stucco so easily? […]

The post Keep Woodpeckers Off Your House with this Crazy, but Proven Solution appeared first on Matthew Gove Blog.

]]>
This fall, our neighborhood has been dealing with an invasion of woodpeckers. While you would think they would stick to pecking on wood, they have been doing incredible amounts of damage to the stucco homes in our neighborhood, including my house. Who knew woodpeckers could peck through stucco so easily?

In Arizona, animals that are classified as pests, such as the ground squirrels, can be legally controlled if they are causing damage to your property, as long as you do so in a humane manner. I want to emphasize that if a pest is not causing any damage, I either leave it alone or shoo it away using non-harmful scare tactics. The second the pest starts causing damage, though, all bets are off. I will use any and all legal means at my disposal to protect my property.

I live in a rural area outside of city limits, so my trusty air rifle is my go-to method of ground squirrel control. In instances where discharging the air rifle is either unsafe or impractical, I use rat traps. Last summer, a large family of ground squirrels burrowed underneath my air conditioner. The rat traps worked wonders.

A Problem with Woodpecker Control

Unlike pests such as ground squirrels, woodpeckers are highly protected under federal law. Controlling them by lethal means is out of the question. If you’re caught killing a woodpecker, you will face up to a $100,000 fine and will be thrown in jail. Don’t even think about doing it. To add insult to injury, woodpeckers are fiercely territorial. Once they set up shop, it is next to impossible to get them to leave.

With the more “traditional” means of pest control not being an option, my best option was behavioral control through scare tactics. In other words, you want to scare them away before they cause any damage. I started by hanging the bird flash tape. As expected, the woodpeckers just went and pecked where there was no bird tape. Covering the entire house with bird tape is not exactly practical, so it was on to Plan B. I got a couple of those plastic owls to scare them away.

My trusty fake owl
One of my “trusty” fake owls

I did not realize that woodpeckers are as smart as they are. If you don’t move the owls every day or two, the woodpeckers will figure out that the owls are fake. The day I went outside to find a woodpecker pecking on one of my fake owls was when I knew this battle was escalating beyond traditional means. It was time to think outside of the box.

The Next Bad Idea for Keeping Woodpeckers Away from the House

My next thought was to use noise to scare them away. Woodpeckers drum on things and make loud noises to establish their territory and attract mates. The loudest bird gets the territory/mate. Hopefully all I have to do is to make a louder noise than them and they’ll leave. If you’re not rolling your eyes at that statement, you should be. Enter the air horn.

Now, picture this. To effectively use the air horn, I had to creep around the sides of the house, just like they do in those shooter movies, blindly reach around the corner of the house and sound the air horn. Once the woodpeckers took off, I would sprint after them blowing the horn at them until they left the property. If you’re thinking I look like a fool here, well, you’d be right. Unfortunately, the woodpeckers quickly realized the horn was harmless. To add insult to injury, they had already damaged the house before I could shoo them away.

Back to the Drawing Board

I knew now that I had to reach deep into my bag of tricks and go beyond “outside-the-box” thinking. It was time to go MacGyver on them, so I sat down and made a list of requirements for a system to keep woodpeckers off the house.

  1. Much faster response time in order to shoo them away before they damage the house. The deterrent system must activate pretty much instantly once they land on the house.
  2. The woodpeckers must know there is actually a credible threat behind the scare tactics without harming the birds. They’ve figured out that everything I’ve done so far is just a hollow threat and there are no consequences for them.
  3. The system must be able to protect the entire house.
  4. I must be able to manually activate the deterrent system from inside the house, without having to open any windows or doors.

Enter a Crazy, but Ingenious Idea

Once that list was done, it was time to see if my various prongs of knowledge, experience, and logic could all come together to meet the requirements of the system. Once I started brainstorming, it took a bit of a superfluous route, but here’s where it eventually landed:

  • If you’ve ever trained a pet before, you know that spraying them with water works very well to tell them when they do something wrong. This trick works especially well with cats. Birds generally don’t like to be wet because it can adversely affect their ability to fly. Spraying the woodpeckers with water would check off number 2 (the credible threat requirement) on the list above.
  • Remember all of the years I spent studying meteorology and physics. I can use my knowledge of fluid dynamics to run the calculations to ensure that a spray system will both a) actually work, and b) protect the entire house.
  • I installed a smart home system in my house last spring. The smart home system will allow me to use smart switches and/or valves to both automatically and manually activate the system from anywhere. A motion sensor under the eaves hopefully can detect when woodpeckers land there. They will instantly send a signal to the smart home controller to activate the anti-woodpecker spray system, eliminating the gap in response time.

Now that I have an idea to work with, it’s time to jump into the mathematics and fluid dynamics to ensure this will actually work before I start running out to buy parts for it. Stay tuned.

The post Keep Woodpeckers Off Your House with this Crazy, but Proven Solution appeared first on Matthew Gove Blog.

]]>