Biochar Study

This is a  citizen science activity that I spotted on Scistarter. I keep an eye on the citizen science projects on Scistarter and this one interested me. Scistarter lists a lot of citizen science projects.

I had seen a lot of things on the internet about using biochar as a soil amendment but did not pay much attention. When I found this project I did a little more reading about biochar.  Biochar is a fancy name for charcoal. I found that there is a lot of research going on studying various aspects of biochar. From what I can see the main benefit of biochar is carbon sequestering with the added benefit of improving the soil for plant growth.

This project is studying the aging of biochar in the soil under a wide variety of conditions. One way to do this is to get citizen scientists from different areas to bury samples of the biochar. The USDA is doing the research for this project. See link references below for more information on biochar.

After I signed up for the project I received a box with four mesh bags of biochar and instructions for burying them. The bags contain some oak biochar and a temperature data logger. One piece of the biochar was sealed in a plastic bag as a reference. The bags were labeled B07 through B10.

I picked four sites around my place to bury the bags. I tried to pick sites that were as different as possible.


Above is my trailer loaded with the things I needed to bury the bags. Some metal fence posts were used to mark the burial sites.

Above is a Google Earth image with the location of each bag marked.


Above is bag B07 in the hole. This site is at 42° 11.955’N 91° 39.256’W. It is under some very large Tartan Honeysuckle. That honeysuckle is very invasive and I really need to get rid of it. The soil here is quite sandy.

Above is a view of the site for bag B07.

Above is bag B08 in the hole. This site is at 42° 11.934’N 91° 39.310’W. This is an area that stays wet a lot of the time. It is a grassy area that I am trying to get native prairie flowers growing. It will not get mowed this year. I burned off the general area here this spring but this exact spot did not burn because it was too wet.

Above is a view of the site for bag B08. You can see that it is a wet low spot.

Above is bag B09 in the hole. This site is at 42° 11.834’N 91° 39.310’W. This area used to be a horse paddock. I planted some trees here some years ago. A lot of the pine trees I planted died. The hole is next to the stump of one of the pine trees.

Above is a view of the site for bag B09.

Above is bag B10 in the hole. This site is a 42° 11.915’N 91° 39.313’W. This is near my garden and next to my asparagus and rhubarb patch. A lot of stinging nettle growing here also.

Above is a view of the site for bag B10.

In six months the bags will be dug up and sent back to the researcher along with soil samples from the sites.





Posted in citizen science, environmental monotoring | Tagged , , | Leave a comment

Soil Temperature Probe

A soil temperature probe has been on my todo list for a while. So I decided to build one now along with a number of other improvements, and repairs to my weather station.

The soil temperature at four inch depth is what is used for agriculture and I added sensors at 1,2 and 3 feet. The deeper sensors are mainly for my own curiosity to see annual variations in soil temperature.

The sensors are Microchip MCP9808 Silicon Temperature Sensors mounted on a little board by Adafruit. These sensors communicate via I²C so they can be all wired in parallel and addressed by a microcontroller. To protect the sensors in the ground they are inside a length of 1/2″ PVC water pipe.

Above is a picture of the sensor string and the length of pipe they will go in. It takes four wires the connect the sensors and some telephone wire is a handy way to connect them along with a RJ11 telephone connector on the end of the wire.

Above is a picture of the completed probe. The sensors are in the longest length of pipe. Then a one foot section  gets the sensors away from the place where the probe comes to the surface. This is to prevent the probe or the opening in the ground caused by the probe from affecting the temperature at the sensor. Another length gets the probe above ground. It also allows the probe to come out of the ground next to a leg of my weather station reducing the chance of damage to the probe from mowing or walking on it. Then a U shaped section gets the opening for the wire pointed down. The wire is sealed with silicone but I wanted to also have it pointed down to prevent rain from pooling on the seal and possibly leaking. I filled the pipe with dry sand to prevent convection currents of the air inside the probe from affecting the sensors.

Here is the probe buried next to my weather tower. Because of the horizontal section of the probe the sensors are over a foot from the tower leg. That should be enough to prevent the leg from affecting the readings.

The probe is connected to a Teensy 3.2 microcontroller. I designed and had made a carrier board for the Teensy it just holds the Teensy and connects it to the RJ11 connector to the probe. In previous projects I mounted the microcontroller on a piece of perf board and hand wired the connections. This is much neater and more reliable. The board is sitting in a plastic case to protect it.

The Teensy reads the data from each of the sensors via the I²C bus. The data is then sent over the USB to a Linux machine (Beaglebone Black) which receives data from all the weather tower sensors and send the data to the MYSQL server on the web.


This is a plot of the first  4 days of logging. Red is the 4″ sensor, Blue is the 12″ sensor, green is the 24″ sensor and black is the 36″ sensor. It was warm the first day then it cooled off. The order of the plots completely reversed. As the ambient air started cooling the soil rather than heating it. The smooth lines in the middle of the plot are where I lost some data while switching web servers. The ripples are probably due to sampling noise in the sensors.  I will add some averaging of he samples to smooth out the plots. I also need to fix the time and date labels to make them more readable.

The soil temperature data is online at:



Teensy from PJRC

Beaglebone black

Carrier board made by Seeedstudio Fusion

My web site

Posted in Electronics, environmental monotoring, Imbedded Software, Software | Tagged , , , , , , , , | Leave a comment

Rain Sensor

I thought it would be interesting to add a rain sensor to my tipping bucket rain gauge. Because it take time for the bucket to fill and does not always tip right when it stops raining a sensor that detects rain would help tell more precisely when the rain starts and stops.

The Hydreon RG-11 rain sensor looked like it would work well for this application. This sensor is rugged and not too expensive. It works on the same principle as automatic  windshield wipers. The rain drops on the clear plastic reduce the internal reflection of light. It can be set to just detect rain or measure rain fall. Although it is not terribly accurate at measuring the amount or rain fall. I set it to just detect rain.  The sensor runs on 12 volts and outputs a contact closure when it detects rain.

The RG-11 sensor is the dome to the right in the picture.

I already have a tipping bucket rain gauge connected to the Internet so it was fairly simple to add the RG-11 to the setup. The sensor was connected to an input on the SparkFun ESP8266 DEV and the software modified to read the input and report it to my web server.  I also had to modify the web software to log the readings to the SQL server and add the information to the plot on the web page. See my IoT rain gauge article for more information.

Just the day after I installed the rain sensor it rained on the last day of December. The tipping bucket data is the blue line on the plot and the green areas are when the sensor is indicating rain. In the plot above the green line around 8:00 is when I manually activated the sensor to test it. Around 16:00 the precipitation gradually changed to snow. The sensor does not detect snow.



References: Hydreon RG-11 rain sensor My tipping bucket rain gauge installation. The sensor online.

Posted in Amateur Science, Astronomy, DIY, Electronics, environmental monotoring, Imbedded Software, Nature, Software | Tagged , , , , , , , , , , , | 1 Comment

Barn Door Star Tracker

I wanted to take some star pictures with my DSLR and decided a barn door style star tracker would be a fun project to build.

Early versions were nothing more than two boards connected by a hinge with a screw to adjust the angle between the board. One board was attached to a tripod and the other board held the camera. By periodically turning the screw a small amount the camera could be made to follow the stars. Manual adjustment could be eliminated by  using a 1 RPM motor to turn the screw. Using a straight screw leads to errors in the tracking angle for longer exposures. The Trott double arm drive was one effort to reduce the tracking error. The use of a curved screw eliminates the tracking error but requires the nut be turned rather than the screw. I chose to use the curved screw turned by a stepper motor. This way I can adjust the tracking speed in software and reset the tracker with a push of a button.

My design is a bit more sophisticated than two boards but still much less expensive than commercial camera trackers I have seen. I chose to make it out of metal.

Above is the bottom plate that attached to the tripod. It has a 1/4-20 hole in the middle for the tripod screw. Mounted on this plate is a microswitch assembly used in 3D printers. The switch signals the microcontroller when the drive is back to home position.

Above is the top plate that holds the camera. Also on this plate is a dovetail mount for a finder scope used to align the tracker with Polaris. These plates are 1/8″ thick and 3 by 12 inches.

Above is the stepper drive assembly. A stepper motor drives a timing belt pully which hold the brass nut. A ball bearing in the other side of the pully and a hub attach the pully to the plate.

Above is the curved screw. To curve the screw I bent a piece of all thread around a curved surface and matched it to a line drawn to the correct radius on a piece of cardboard. The nuts on the end attach the rod to the top plate. This rod is longer than I expect to need. I just used the full 12 inch piece I bought.

Above is the electronics assembly for the tracker. On the perf board is a Teensy 3.2 microcontroller by PJRC a Pololu stepper motor driver and a Pololu 5V switching regulator. Power from a 12 volt battery connects to the barrel connector and two pushbutton switches control the operation. I don’t have the buttons labeled yet. One is the track button and the other is the home button. Pushing the track button will start the unit tracking. Pushing it again will stop tracking. The same for the home button except homing will also stop when the limit switch is activated. The Teensy can be programmed with the Arduino IDE. I put a hole in the case to allow a USB cable to be plugged into the Teensy for changing the software and possibly controlling the tracker by USB.

Above is the completed tracker. The curved screw sticks out of a hole in the box. I added a wedge with a 42° angle for my latitude to allow the tripod head to stay mostly horizontal. A right angle finder scope help align the tracker. A ball tripod head lets me point the camera in most any direction. If the finder scope is in the way it can be easily removed after alignment.

Above is the tracker with a camera mounted. I got a F1.8  50mm fixed focal length lens for the camera. This is a way faster lens that the lens that came with the camera. Next is to try it out. I had to take this picture with my phone as my camera only camera was on the tracker.

Posted in Amateur Science, Astronomy, DIY, Electronics, Imbedded Software, Photography, Software | Tagged , , , , , | Leave a comment

Building A Sand Muller

To do sand casting a muller is almost a necessity. It is difficult to mix up foundry sand either green sand or oil bonded sand without a muller. I have been thinking about how to build a muller for some time and recently I started to build one. Basically a muller mixes and squeezes the sand a binder to get a uniform mixture with the binder coating the sand.

The basic design I chose uses a rotating cylinder with a plow and heavy cast iron wheels for mixing and squeezing fixed to a bar above the cylinder.  A transaxle from a garden tractor is used to reduce the speed of an electric motor and turn the cylinder. Besides the transaxle the cylinder is supported by four casters mounted to a frame under the cylinder.

I made a sketch using Fusion 360 to determine the size of the frame based on a drum diameter of 18 inches. I wanted the frame to be as small as possible but be able to mount  the drum support rollers on top of the frame on each side.

The first thing to build was the cylinder. It consists of a 18 inch diameter 1/4 inch thick steel plate and a 6 inch wide strip of 12 gauge steel. I had the disk plasma cut by the steel supplier and I should have had the strip rolled into a ring. Bending and wrapping the strip around the disk was a bit fiddly. I clamped the disk to my welding table and used a ratchet strap to tighten the strip around the disk.

The ratchet strap and the tack welding on the inside tended to make the rim lean inward. To fix this I used the jack to push it open before I welded the side seam.

The frame is build out of 1.5 inch square tubing. It took almost all of a 24 foot stick of tubing to build the frame. 

Here is the frame with the garden tractor transaxle installed for a test fit. The bottom of the legs have plates welded on that are tapped for casters so that I can easily roll the muller around the shop. The frame did not come out exactly square so it would rock when sitting on a flat floor. I fixed that by putting a washer on top of two of the casters. The two longer legs will support a crossbar on top of the muller that holds the roller and plows.

The pully that came with the transaxle was going to give a drum RPM that was higher than I wanted. This larger pully has been laying around and would give a suitable RPM. Problem is the original pully was attached with a special spline so I cut the hub with the spline out of the original pully trued it up in the lathe and welded it into the bigger pully.

The final part of the construction was building the plows and roller assembly. It took a bit of experimenting to get it right. One plow pushes the sand away from the center of the drum and the other plow pushes the sand away from the outside. This piles the sand right in the path of the roller. The roller is made of 4 five pound barbell weights glued together. After experimenting with this I may add two more weights to cover more of the sand with each revolution.

Above is the completed muller. It was necessary to clamp the bottom axle so that the drum would turn.

The first thing I tried with the muller was reconditioning some oil bonded sand. This worked well until the sand got well mixed. Then the oil bonded sand got sticky and built up on the roller until the roller stalled. At this point the sand was mulled well enough so it was not too big of a problem.

One of the reasons for building the muller was to be able to make and use water bonded sand (green sand). So I made a few batches of green sand. The bentonite clay that I used is oil adsorbent which is fairly larger granules. I probably could have just dumped it in with the sand and mulled away but I thought it would work better if I ground up the bentonite first. The muller did a good job of grinding up the clay and after about 30 minutes in the muller it was most a fine powder. To make the green sand I added the bentonite and fine silica sand to the muller in the correct proportions and let it run dry for a bit to mix it well. Then water was added in small amounts until the correct consistency was obtained.

Posted in Crafts, DIY, Machine Shop, Metal Working, welding | Tagged , , , , | Leave a comment

UVA UVB Sensor

I have a commercial UV Index sensor running but I found an IC sensor chip that would measure UVA and UVB separately and thought it would be interesting to see how the two UV bands varied with respect to each other.

The sensor IC is a Vishay VEML6075. This is a very tiny surface mount chip that would be very difficult for me to successfully mount on a board. Luckily I found a breakout board with the VEML6075 mounted. This board is the UV 2 Click by MikroElektronika a Serbian company. They make a variety of boards like this and microprocessor development systems.

Currently my favorite microprocessor board for this type of project the the Teensy 3.2 by PJRC. This board uses a NXP Cortex M4 processor chip and has plenty of power and IO including 12 bit A/D converter. This board communicates and is powered via a USB port. There is an add on for the Arduino software development system that allows code for the Teensy  to be written. It is really convenient that there are quit a number of companies  making modules like the Teensy and UV 2 Click. It makes projects like this possible without having to work with tiny surface mount parts. All these modules have holes on 0.1″ centers making it possible to plug them into a piece of perf board and wire them up.

The sensor IC is digital and uses I2C to communicate with the processor. Luckily I also found some code to control the sensor written for the Arduino environment. That saves a lot of time and head scratching getting up and running.

All of my environmental sensor are online. To do this for this sensor it is connected to a Win 10 PC out at the weather station tower via USB. A Python script running on the PC reads the serial data from the sensor and sends it to a MySQL server on the web.  A web page script gets the data from the MySQL server, plots the data and serves up a web page.

A sensor like this should accurately measure the energy falling on a horizontal surface. It should see the whole sky from horizon to horizon. It will have a cosine response to the angle of light from the sun. To do this a diffuser or cosine filter is used. This cosine filter uses a Teflon disk mounted at the surface of the housing so nothing blocks the light from the sun from horizon to horizon. The filter is a 3/8″ diameter disk of 1/32″ Teflon mounted in an aluminum holder. The holder is slightly cone shaped to help keep rain water from staying on the disk.

My favorite housing for outdoor sensors is plastic electrical junction boxes. For this sensor I used a 4″ X 4″ X 2″ box. These boxes are designed to be used outdoors making them water tight and UV resistant.

The cosine filter is attached to the junction box with some silicone sealant. The perf board with the sensor and processor attach to the inside of the box cover with plastic hex standoffs and screws.

The processor is mounted to the bottom of the perf board to allow the sensor board to be mounted close to the cosine filter and allow easy access to the USB cable and programming button. Unfortunately the button has to be pressed to put the processor in the program mode. So I can’t program it when it is mounted on the tower in its box.

The completed UVA/UVB sensor on the right mounted on the tower along with some other sensors that look straight up. I need to put a spacer under the sensor to bring it up to the same level as the others. Right now the taller sensor is blocking part of the sky.






UVA/UVB sensor data

Posted in Amateur Science, DIY, Electronics, environmental monotoring, Imbedded Software, Nature | Tagged , , , , , , , , , , , , , , , , | Leave a comment

IoT Rain Gauge

On thing that is missing from my weather station is automatic reporting of rain fall. I have a manually read CoCoRaHS rain gauge which is more accurate than say a tipping bucket gauge but I thought it would be nice to have a automatic gauge to compare with the CoCoRaHS readings and also to see the timing of the rain fall. The idea was to mount the tipping bucket sensor next to the CoCoRaHS gauge in the same Alter wind screen. It turns out there is not enough room in the wind screen for both gauges. So the tipping bucket gauge is on its own post near the CoCoRaHS gauge. The  rain gauge is not located near the weather sensor tower but it is close enough to the WiFi signal beam to use WiFi for communicating. The location also means that the sensor will have to be solar powered.

The tipping bucket sensor is from the weather meters sold by SparkFun electronics. It provides a reed switch closure each time the bucket tips. A cable with an RJ11 connector is provided.

For the electronics I chose a SparkFun ESP8266 DEV. This board has an ESP8266 WiFi chip along with a USB serial port for debugging and provisions to connect an external WiFi antenna if needed. I mounted this along with a tiny switching regulator on a piece of perf board.

For the solar power I used a small motorcycle size lead acid battery and started out with a 1.5 watt solar panel intended to trickle charge car batteries. I thought about using a rechargeable lithium battery but most of them will not charge when cold and I did not want the hassle of taking it inside during the winter. The 1.5 watt solar panel turned out to be inadequate and let the battery go dead after a week or so. A 5 watt panel would have worked but I could not find a suitable one so I settled on a 10 watt panel. Some software work on power saving might have allowed the smaller panel to work.

There were problems with the tipping bucket sensor. Spiders and earwigs got into the sensor by way of the drain holes in the bottom. The funnel has a grid to keep trash and insects out but the bottom had large holes. The earwigs would mess up the inside and the spiders would build webs that would prevent the tipping bucket from working. A piece of window screen and some duct seal solved that problem.

The battery and electronics are mounted in a plastic electrical junction box. The WiFi signals pass through the box easily so there is no need for an external antenna.

The software uses an interrupt to increment a count every time the bucket tips. For some reason I got 2 counts for each tip. Something to do with the way the interrupt works I suppose. There is timeout for contact bounce so that was not the cause of the 2 counts. No problem though just divide the count by 2.  Initially I was only going to send the tip count each time it incremented but there were problems with this approach. Without some activity the WiFi link would disconnect. I did not see anything in the software samples I looked at to deal with this problem. I settled on sending out the tip count every 5 minutes and whenever the bucket tips. This keeps the WiFi link connected and gives an assurance that the sensor is still working.

The tip count is sent as a HTTP get message to my web server. A PHP script on the web server then sends the tip count along with a time stamp to a MySQL server. Finally a PHP web page script accesses the SQL data, produces a plot and sends it to the user. The plot  shows the accumulated rain from midnight to the current time or the whole 24 hours if asking for data from a previous day.

There are a few enhancements I can think of that I will be working on.

  • Display the rainfall rate
  • Add a display of the rain for my CoCoRaHS reporting period 7 AM to 7 AM
  • Add some way to tell if the system is up and running

1/9/2019 Just add a rain sensor. This sensor reports when it is raining. See for details.




CoCoRaHS Community Collaborative Rain, Hail and Snow Network

Rain data

Rain Sensor


Posted in Alternate Energy, Amateur Science, Electronics, environmental monotoring, Nature, Software | Tagged , , , , , , , , , | 2 Comments