The level detect circuit in 3D5 controllers utilize an oscillator. When the probes detect water, they interrupt the signal from the oscillator. If the oscillator circuit becomes damaged, neither the boiler nor tank level detection circuits will function. Often times, the problem with the circuit is simple, and can be repaired.
For the Nerds:
The morning of August 7th started off like any other morning. My alarm annoyingly roused me at 0400 in the morning I stumbled out into the living room, bleary eyed and more than half still asleep. I approached my trusty GS/3, which obediently wakes up an hour before I do each morning, so that when I stumble up to it, I may soon be rewarded with the first glimpses of awakening.
Not so on August 7th.
No pleasant blue hue from the backlit push buttons and display. Merely the time, and the word "Off" were displayed. "Odd", I say to myself. I press the power button and I'm greeted by "Refill Tank" on the display. Now, mind you, I had pulled a delicious shot of Bon Mua Vietnam Typica 12 hours earlier, and I'm pretty fastidious regarding my routine after a session. This routine almost always ends with me topping up the reservoir, so I'm a bit concerned at this point. Pull the drip tray, slide the reservoir out. Pretty much full. Hmmm... I slide it back in.
Ok. Next comes the obligatory troubleshooting steps. Enter the power off menu, check sensitivity of the level probes: "Low".
Try medium: "Refill Tank".
High? "Refill Tank".
Last ditch effort is to set the "Tank Present" parameter to "No".
I power the machine on and the pump kicks on to top up the boiler. It stays on. Far too long. I power her down. I'm suspecting that I will find some sort of watery mess when I pull the sides off the machine, but it's clean and dry. I proceed to drain the steam boiler (which of course does make a watery mess) and slide out the electronics cassette to access the logic board. Sure enough, there is water under it. I had a reason for not drilling holes in the cassette when I had the machine in pieces, but I can't remember it and in hindsight, it was a terrible reason, no matter what it was.
I pull the logic board out and find green corrosion in the corner near the 8 pin connector for the flowmeter(s) and level probes. I dip an old toothbrush first in vinegar to dissolve the corrosion and then in rubbing alcohol to force the water out and quicken the drying process, which is finished off with some time under my wife's hair dryer at low temp and speed. I feel pretty confident in the results. I clean and dry the cassette, pop the board back in, slide the cassette back under the machine. Power on, pump starts running. I power back off, remembering that the boiler is empty and I have "Tank Present" set to "No". Switch this to "Yes" to hasten my findings and I'm greeted with "Refill Tank".
Crap. Visions of dollar signs leaving my bank account surround me.
Here's what a close inspection of my logic board revealed:
Image: Bottom Corner of 3D5 Logic Board Showing Damaged Inverter Gate
Looking closely at the minuscule SMD component that is missing a leg, I can read "A14G":
Image: Cluster of SMD Components that Create a Schmitt Trigger Oscillator
I search for "A14G datasheet" and learn that it is an inverter gate, and when I start looking into what these are used for, I learn of the Schmitt Trigger Oscillator. Basically, you apply a constant 5 volt supply to one of these A14G chips (through the pin that is conveniently missing on mine) and with a resistor and capacitor placed appropriately the output is a nice square wave that oscillates between 0 and 5 volts.
Neat. But why?
I took this image:
Image: 3D5 Flowmeter and Level Detection Circuit
And turned it into this schematic:
Image: Schematic of 3D5 Level Detection Circuit
The pins that go to the tank and boiler level probes are the 4th and 5th in the string of 8 that run across the circuit board in the picture above the schematic. The Schmitt Trigger Oscillator matches perfectly with the comments from user jpboyt in the prior thread La Marzocco GS/3 - fried logic board?.
In this same thread, Pat suggests that
jpboyt wrote:someone with more spare time than I could/should trace the wiring from the probe wire to the micro-controller. Once all the components in the circuit are identified then we should be able to "follow the electrons" to see how this circuit works. One would also need to evaluate the form, voltage, and current of the signal wire going to the probe.
Well, I did!
The transistor in the circuit is just acting as a logic level relay and NOT gate. When the oscillator signal goes high, it switches the transistor "On", which connects the downstream circuit to ground. When the oscillator signal goes low, the transistor is switched off, and the downstream circuit is pulled high to Vcc through the 332 ohm resistor up top.
What I find interesting and I am hoping this discussion will reveal, is how the level probes get a signal to the CPU when they pass through a capacitor. I don't know the capacitance of any of the caps in this circuit, so without a scope, the frequency of the square wave and the effect of any filter caps on the circuit remains unknown. It appears, however, that the level probes effectively bring the capacitors that they run through "online" when they are grounded, which would tend to filter out higher frequencies (frequency of the Schmitt Trigger Oscillator?) And send a more constant voltage to the CPU. It's worth noting that there are also permanent filter caps in the circuit, though again, their capacitance (and their influence on the signal to the CPU) remains unknown.
One thing that I think this circuit shows is that the level detect circuit is far from a simple case of "probe grounds out on water and brings signal low". This circuit also explains why a single failure point (anywhere in the oscillator) will lead to both level probes failing. I welcome any circuit analysis from the experts to help explain the rest of this!
As making SMD repairs is beyond the scope of my abilities, I sent it off to Pat for repair, so hopefully this post will serve as a resource to others who have "dead" logic boards and are fearing costly replacements from LM. I still have to find the source of the contamination for my board, and I hope the above homework helps a few other folks who find themselves in a similar situation.