One of the original applications I had in mind for MRBus was monitoring a compost pile I build each spring using manure from our horses. In early summer, pumpkins are transplanted into the pile and do remarkably well. In fact, I discovered this by accident one year – some pumpkins one fall were added to a pile of manure and allowed to compost. The following summer, volunteer pumpkins grew and were some of the largest and healthiest looking I had ever been able to grow here in Colorado!
My plan for monitoring the pile has been to measure the temperature at various depths. This information over time should give a good indication of when it needs to be turned and when it is acceptable for planting. Ideally, I would like to time it such that the heat given off by the pile can be utilized to keep the young, tender plants warm during our late spring cold streaks we tend to get here on the front range.
This application was what inspired the MRBW-RTS node. I wanted a node capable of measuring multiple temperature and broadcasting that data over a wireless link. In fact, this application also somewhat inspired the creation of the MRB-AP Wireless Access Point in the fall of 2011 as a way to bridge between wired and wireless networks.
The brain of the sensor is a wireless MRBW-RTS board. This board acts as a wireless MRBus (MRBee) node, using an XBee module to provide the wireless link. The temperature is measured using two LTC2990 ICs (breakout board), each configured to measure two temperatures in addition to the ambient temperature of the IC itself (for a rough “air” temperature measurement). A special option on the MRBW-RTS board was used to power the node from a pair of AA batteries using a CKT-LTC3528 board installed on the backside of the MRBW-RTS. With this low-power boost regulator, the quiescent current consumption in sleep mode is only 55uA.
To monitor the temperature at multiple depths, a temperature probe was needed. After some brainstorming with Nathan, we decided to use a fiberglass rod as the main structure. Mine came from a driveway reflector and was 1/4″ in diameter.
The sensors themselves are inexpensive 2N3904 transistors. Since there are 4 sensors and each requires 2 wires, a length of CAT 5 cable is perfect (4 twisted pairs). To make the sensor string, I first bent the base connection of each transistor toward the collector. After clipping the base lead off at the collector lead and trimming the emitter and collector leads to ~1/4″ long, I soldered the stripped and tinned ends of a twisted pair to the leads. the These connections were then covered with small heat shrink tubing. (Sorry, I forgot to take pictures of this process… maybe next time) In my standard, the solid color wire of the pair went to the Collector/Base (+) and the striped wire went to the emitter (-).
The first sensor was installed at the end of the CAT 5 cable. The jacket was stripped back ~3ft. The second sensor was installed ~1ft up from the first, trimming its twisted pair to the correct length. This continued until all 4 sensors had been installed, each ~1ft apart. The color ordering I used was (top to bottom):
After assembling and testing the sensors, they were then taped to the fiberglass rod. With the flat side of the TO-92 package against the rod, a length of electrical tape was wrapped around the package to keep it attached to the rod. Each sensor was attached this way, lightly wrapping the wire(s) around the rod and keeping them tight (no slack). After all 4 sensors were attached to the rod, a piece of 10mm heat shrink tubing was slipped over the entire rod, leaving several inches of overhand at each end. Note: If I were to do it again, I would use ~12mm tubing as it was a very wholesale nfl jerseys tight fit. However, 10mm is all I could find on short notice, in long sections and for a reasonable price (Harbor Freight) and it did work. Next, the tubing was heated to shrink it around the rod and the sensors.
The ends of the tubing that extended past the end of the rod were then folded over, including the one surrounding the CAT 5. A short piece of 12mm tubing was slipped over the ends and shrunk to hold the tubing in place. My hope is that this fold in the main length of tubing will help repel any water invasion into the sensors. To further mitigate this, I may conformal coat the next version before putting on the heat shrink tubing…
A watertight sensor housing was needed to hold the RTS board and battery pack. A leftover plastic jar (from some horse meds) was recruited for the purpose. An 11/32″ hole was drilled in the bottom and a grommet inserted. A 7/16″(OD) x 3/16″(ID) grommet was perfect and made a nice, tight fit with the CAT 5 cable. The cable was pulled into the jar, jacket removed back a few cheap jerseys inches, and the ends of the wires stripped. After cheap nba jerseys connecting to the MRBW-RTS board, the entire assembly fit nicely in the jar and the lid provided a watertight seal. The jar was then taped to the Delta top of the rod.
The complete sensor:
Here is a picture of the completed sensor installed in the manure pile (a.k.a. Mt. Poopsuvius – on cold mornings it can be seen steaming…):
The MRBW-RTS broadcasts the data, which is then received by an MRB-AP, the packets put on the wired MRBus house network, and eventually received by an MRB-CI2 connected to a Linux box running MRBFS. Custom PHP scripts then archive the data in a MySQL database. A combination of PHP and gnuplot generate graphs like the one shown below.
Update: April 7, 2013
After turning the pile and adding more feedstock (i.e. horse poo), the lowest sensor (3ft) started sending back erroneous data. At 250F, either a) I was brewing some really special microorganisms down there, b) the pile was on fire, or c) the the sensor was broken. After some discussion with Nathan, we eventually went with option c. The sensor had ~4Mohm of resistance between the terminals. Heating it with a heat gun seemed to remove the leakage, but the sensor still sent back bogus temperature. So, despite some reservations, the heat shrink around the bottom sensor was cut off and investigation ensued. Sure enough – some moisture around the sensor. The likely entrance point was where the original heat shrink was folded over on itself. The tubing showed signs of cracking in that vicinity. Removing the sensor from the pile likely pushed moisture into contact with the transistor leads, causing the leakage.
A new transistor was soldered to the leads. This time, Silicone Compound (a.k.a. goo) was applied to the transistor leads. A short length of heat shrink was added, extending past the point where the original heat shrink was cut off. More goo was added to both ends of this new tubing and it was shrunk around it. Then, a cap from a Sharpie was placed on the end, again with more goo, and heat shrink applied over it to hold it in place. The sensor seems much happier now. Time will tell how long this one lasts…
Things to do differently next time:
1) Conformal coat the entire sensor stick before heat shrinking.
2) Use heat shrink end caps
Update: April 9, 2013
The temperature of the pile has increased at a fairly rapid rate after turning. Once reaching 150F, it leveled off and started to self-regulate.
Update: April 15, 2013
Over the weekend, the top sensor (“0ft”) started having issues similar to the problems described above. The temperature was all over the place, high and low. I suspect water penetration again, causing leakage currents between the transistor leads. A new sensor design is in progress which will hopefully address the water issue once and for all. Stay tuned…
Update: April 28, 2013
After some experimentation over the last couple weeks, I built a new sensor probe today. This one is hopefully more watertight. The sense devices were changed from TO-92 2N3904 transistors to SOT-23 MMBT3904. Assembly was actually quite easy. First, strip the wires about 1/8″. Then, apply a thin bead of solder paste to each lead. Set the transistor on the paste so the collector and base connect to one wire and the emitter to the other (the solder paste holds the transistor in place). Touch a soldering iron to the wire to reflow the paste and it’s done. Scrub with some flux remover to clean up things.
To improve the water resistance, each sensor was dipped in liquid electrical tape (I used GB brand, but any should work). Two dips were done to make sure all exposed connections were covered.
The sensors were then placed along the fiberglass rod. This time, 3/4″ marine 3:1 heat shrink tubing with an adhesive liner was placed around each sensor. The adhesive liner will hopefully provide additional water resistance.
An additional piece of adhesive lined heat shrink was placed to straddle the top of the highest sensor’s Agnes heat shrink and the CAT 5 outer sheath. Hopefully this helps provide additional sealing, though I am not sure if it is necessary. Dielectric grease was then squeezed into a ring at the top and bottom. 1/2″ 2:1 heat shrink (green in the photos) was then placed over then entire sensor, overlapping the rings of grease. The grease fills in any gaps, after shrinking the tubing, especially around the CAT 5 wire.
Finally, 2 more sections of adhesive heat shrink were added over the top and bottom to provide an additional seal.
Update: May 1, 2013
A plot of the new sensor data. Notice the dips in the morning when water was added to the pile.
Note: The high temperatures on April 28 were from the old (defective) sensor.
Update: May 10, 2013
After a good, deep watering, the internal temperature ramped up and leveled off.