A few days ago I was checking the MQTT feed from the instrumented Defender, and found it in an error state. The MQTT logs showed the unit rebooting and restarting several times during the day. Then it stopped restarting. Attempts to remotely restart the unit failed. The unit was dead, again.
I had been noticing increasingly frequent reboots over the last month, with the system lasting for a couple of hours, then rebooting. I chalked it up to possibly poor WiFi reception or MQTT server outage somehow causing some issue. I spent a while looking over the code to see if anything like connection problems could cause a reboot, but was not able to find any such mechanism. Only the trap’s web page has that option, and it was not the source. My most recent issue dealt with combustion temperature dropping too low during operation, but this was different: unable to run after a cold start, when high case temperature was not a factor.
Perhaps the controller intermittency was causing the problem. I was afraid of burning out or degrading my igniter by constantly cycling it from cold to hot, which had happened last year when I had intermittent on/off switch problems.
I took the second master NodeMCU module and replaced the existing unit, which had become stuck in the connector. Prying the unit off, I noticed some corrosion on the module pins. This could be the problem. The temp/humidity sensor pins had been quite corroded at the start of the season, and would not work at all. I also noticed that the module was covered with mosquito parts, dust, and other awful looking stuff. Perhaps this could be another problem causing the intermittent reboots. I hadn’t bothered to insulate and protect (e.g., conformal coat) the controller or the connector, and instead placed it in the far forward of the case, away from the exhaust port, as a way to keep it out of the elements, and rely on the positive air pressure to keep outside moisture in check. This was not good enough. Also, there is no protection from condensation when the trap is not running. I don’t do this, or other niceties like screwing the case top the the bottom, to facilitate modifications, plus I just want to see what happens (not recommended).
Replacing the controller fixed the intermittent controller problem, but the trap still did not start. Perhaps the obstruction at high temperature had also increased at low temperatures. I examined another used valve assembly I had purchased. Using fine drill bits, I measured the valve intake and exhaust holes. For the record, the hole from the valve to the nozzle is a #56 drill size (1.16 mm). The gas line to valve hole is #73 (0.6 mm). I could clean the hole using the #73 drill bit straight down, and a section of solid copper wire bent to just fit into the hole to the nozzle. I opened the valve on the Defender, and cleaned the holes. There might have been a bit of a deposit on the gas line side, but the other hole to the nozzle was clear. I reassembled and restarted, but no temperature rise at all! This is unusual because the igniter on itself should cause a few degree temperature rise, but there was nothing. Was the NodeMCU module not driving the igniter?
I found the IOT controller schematic, traced the wiring, and, sure enough, the red wire from the module to a via on the IGN net had come off, the result of me stressing the wires more than usual because the connector had stuck to the corroded module pins (no, I didn’t strain relieve the wires onto the PCB…). Also, the solder joint to the via looked deteriorated as well. I cleaned and resoldered the connection, and inspected the other connections, and tried again. I removed the igniter, and it worked, able to burn the wooden part of a match stick with no issue. Good. Not thinking, I restarted the trap with the case off, but the trap still did not start.
I was starting to wonder what was happening here. What could be left? Earlier, blowing out the nozzle with a tire pump had worked. I tried that again, including higher pressure of 100 psi using higher voltage to the pump with the car running, but still no luck. I decided to replace the nozzle.
I disassembled the unit completely, cracked the combustion chamber, and removed the nozzle and valve assembly. I took all my old nozzles and attached them in turn to the spare defender valve, and ran the tire pump pressure test. Open (no nozzle) resulted in 25 psi. The installed nozzle was 77 psi. Other units ran from 86 to 103 psi.
Unscrewing the test nozzles, I noticed moisture on the filters. Several of them, one after the other. Where was this coming from? It must have been the very humid air being compressed by the tire pump. I was alarmed because I can’t imagine that forcing water into the nozzle is a good idea. I realized I shouldn’t have been using a tire pump, but rather a source of dry compressed gas, for example, a CO2 cartridge, just like the manufacturer initially recommended…. It looks like the tire pump is not a good choice. I need another source of compressed gas, at least on very humid days.
I finally tested a brand new nozzle, it read 66 psi, much lower, wow! I decided to install the nozzle. I washed the plastic parts, drove around the area hardware stores looking for a #8-32 x 1/2 nylon bolt to hold the thermistor (these never last and have to be replaced every time), replaced the broken nylon standoffs (they last longer, but ditto), then reassembled the trap. With the case off, I started the trap, but it still did not start!
I then removed the igniter which was apparently working, and replaced it with a brand new one. With all parts replaced, I thought it had to start. I washed the top cover, put it on, and started the trap. Success! The trap was running!
These multiple efforts took most of a day. Time to reflect.
I first remembered that the trap does not start with the cover off, so the trial with the new nozzle was flawed, and I don’t know if it was the nozzle or the igniter. I am saving the igniter and will replace it after a few days to see if that was the problem, but I suspect that it was the nozzle.
Next, pondering why the trap start doesn’t with the case off, I finally realized something. It’s all about carburetion, or the process of mixing fuel and air. The fuel flow is fixed by the nozzle and its restriction. The air flow is supplied by the fan, which blows into one or two holes in the side of the combustion chamber into a large channel that directs the air to the vicinity of the nozzle. If the air flow is too high, the mixture will be too lean, the igniter will not light the fuel, and the air will not even warm up sufficiently to register on the thermistor. To start the combustion, the air flow must be restricted to make a richer mixture, much like with a choke on a gas engine. After the combustion is established, the mixture can be leaned to yield complete combustion (unburned propane is a mosquito repellent).
The case and catch basket constrict the air flow. You can hear it when you open the catch basket. With the catch basket hatch open, and especially with the case off, the air flow is greatly increased, making the mixture too lean to start. A few years ago, I had realized this, and used a piece of paper over the fan to restrict the air flow so the trap would start with the case off for testing. But I had forgotten all of that on this day.
I believe a rich mixture is what the lower initial fan speed is all about. I had never understood this simple point, and thought perhaps it was lower to allow the igniter to reach a higher temperature for better ignition. It takes about 10 seconds for the igniter to get visibly hot. Accordingly, the Defender software now reduces the motor speed during initial igniter activation. However, the software sets the fan speed to 100% at the same time as the gas is turned on. I now believe this is a mistake. Looking back at the wiki, which measures the thermistor ramp pulse width as a function of elapsed time:
0 | Turn switch on | 13.5 ms (room temperature) |
2:57 | Solenoid on, Fan low speed | |
3:10 | First pulse width change | 13 ms |
4:02 | 8.0 ms |
The chart plainly shows that the solenoid and low fan speed onset are simultaneous in the original Defender. The fan goes back to high speed after perhaps a minute, when combustion is established. I will modify the software to accomplish this for more reliable starting.
A lightly plugged nozzle restricts the gas flow somewhat, which might be Ok. The trap would just produce less CO2, but would still work as the vacuum is still working full force. The range would be reduced. But it all relates to the need to keep the nozzle filter clean. Perhaps “cleaner” propane? CO2 quick clear cartridges? Both?
Time for a software update? No, time to catch mosquitos! Not a safety issue, so the software can wait.
Happy trapping!
P.S. A horrible violent rainstorm with momentary power loss yesterday caused the trap to restart, and the secondary NodeMCU unit was programmed for a lower temp of 70°C instead of 40°, so it tried to restart at the higher temperature, and that didn’t work. Later, I noticed it off, and rhe temp and humidity were 25°C and 84% respectively! It took 4 attempts to restart the unit. I guess I have to update the software sooner rather than later.