Problems with Paractical Arduino Water Depth Sensor project

Standard Intro: I'm new to Arduino, primarily from a software background. I decided to build the Parctical Arduino Water Tank Depth Sensor ( ) for a need at home, and I've run into a problem with the sensor breadboard.

Setup: Arduino Uno R3, Arduino Ethernet Shield R3.

I have the Arduino up and running, with the ethernet shield talking to pachube, and then sending asynchronous messages through twitter triggers. All of that is running off of randomly generated data from the Arduino itself.

In parallel, I have breadboarded the sensor portion of the project with the 2053 DP. I've checked all the connections thoroughly, but when I go to calibrate the "zero" value on the output to 1V, I cannot get the output of the circuit to budge off of 2.5V, no matter how far I move the trim pot.

Possibly useful facts:

The Arduino is running off of USB power, not the 9V tap. This has been fine for all other operations.

I'm running the breadboard off of the +5 and GND connections on the ethernet shield.

I have tried with the sensor independent of connection to AN0, and with connection to AN0. The reading is the same.

I have tested the 10k pot, and the trim screw definitely moves through the rated resistance range.

Adjusting the 1k pot will move the voltage very slightly off of 2.5v, both positive and negative.

The sensor schematic is on

I appreciate any thoughts you might have of what I've done wrong.

The datasheet for the MPX2053DP (and the MPX2010DP specified in the schematic) says that the normal supply voltage is 10V with a maximum of 16V. They don't specify a lower limit so 5V might be OK.

The site is slow to load so I have not seen the article yet.

Without labels I can only guess that one of the pots is supposed to adjust for the +/-1 millivolt offset. Near as I can tell, all of the op-amps are being run at unity gain so I would expect the output to be somewhere between 0V (no differential pressure) and 0.025V (full scale pressure differential).

The sensor is indeed outputting 2.5v on the signal pins (the difference is about .1mV with no differential pressure). When pressure is applied, the difference grows to about 20mV. The first 2 Op Amps seems to be amplifying the signal slightly (to about 3.5V), but when the signals are fed into the third Op Amp (which is supposed to amplify that difference), the output returns to 2.5V.

I've removed the section with the 4th Op Amp (which is supposed to allow me to shift the baseline voltage), and it makes no difference. I suppose my LM324 could be cooked, but it seems unlikely.

Problem resolved. There was a misconnection between the first and second amplifier stages. Once corrected, the circuit behaved as described. The sensor is now connected to a tank, and sending scaled data to pachube. The next step is rigging a PoE connection to the actual tank.

I am also working on this project and have a question for anybody who has actually built the op-amp circuit or has a better understanding than I do.

In the book the parts list is as follows:

1 MPX2010DP or MPX2053DP differential pressure transducer
1 LM324 op-amp
1 14-pin IC socket
4 1K resistors
3 22K resistors
1 1K multiturn variable resistor
1 10K multiturn variable resistor
2 10nF(.01 uF) MKT capacitors (typically marked “103”)
1 100nF(.1 uF) MKT capacitor (typically marked “104”)

For the capacitor MKT is a "metallized polyesther flim". I am having difficulty finding these (probably not searching in the right spot). I was woundering if using ceramic cap's in place of those would work? Any help is greatly appreciated and thanks in advance.

You should look at using the MPXV5050GP sensor instead, no extra amplifier circuit needed. It has a built-in amplifier (0-4.7V) and can be read directly by the analog pin with only a 470pF cap between sensor and ground. Datasheet is at NXP® Semiconductors Official Site | Home. It has one air tube input and is self-venting for differential read. Pins are Gnd, 5V, Signal.

Is this topic/discussion dead, or has it been moved?


Useful bit of info
I was looking to do this project fairly soon. Practical Arduino is feeling it’s age now