Does anyone know how AquaPlumb actually works (or if it does)?

This is an interesting sensor, if it actually works:

Here's where it gets really interesting - look at the pictures. Notice anything strange? Look at the wire - what does it look like?

If you guessed "speaker wire" - you are correct...maybe? Now - see this link:

Notice the reddit user name, and how the poster begins "Our company..." - so, it is likely that the poster is a representative of the company that makes AquaPlumb (I would dare to say the poster is the owner).

So - how does one use a piece of two-wire speaker cable to measure -any- liquid's level?

This seems to be a common question here on the Arduino forum - at least once a week we get someone asking how to measure a liquid using light, or ultrasound, or some other method. Well - here's a method - but seemingly proprietary; I don't know if it is protected by a patent or whatnot - but could it be reverse engineered?

Look at those pictures again - notice something else about cable? What are all of those dark-ish "lines" (or something) down the center of the length of cable - spaced evenly...?

According to the site, the liquid never touches the wires - so the wires won't corrode (the end is supposedly sealed, and they mention in the FAQ that you can cut the cable shorter, and re-calibrate - but you need to re-seal the end). Supposedly it works on any type of liquid (even olive oil) - so it doesn't appear to be measuring resistance or anything. However, the say you can't use it in flammable liquids...

Anyone have any ideas? What are the marks? Is it some kind of RF system? Does it have something to do with the difference in the speaker cable wire (the "silver" wire vs. the "copper" wire - is one aluminum and the other copper - I'm not sure what speaker cable is actually made of)?

I noticed that it has some kind of special "sensor box" that you hook the cable to, then that outputs the changing voltage for your system, I suppose. I'm just curious about this whole thing, and wanted to stir the pot a bit for those seeking a liquid level detection solution as well, and perhaps get people thinking about how this device actually works.

:smiley:

Could it be using capacitive sensing - like this project?

...and yet another capacitive sensor-base liquid level project:

I really apologize for these "follow-up" postings - I promise, this one is the last...

:slight_smile:

It is very likely capacitive. The capacitance between the two leads of the "speaker wire" would depend on the surrounding dielectric, and that might control the frequency of an RC oscillator.

Here is a nice example of a DIY capacitive water level detector that appeared some years ago in Nuts & Volts.

Anyone have any ideas? What are the marks? Is it some kind of RF system? Does it have something to do with the difference in the speaker cable wire (the "silver" wire vs. the "copper" wire - is one aluminum and the other copper - I'm not sure what speaker cable is actually made of)?

Maybe the marks are just permanent marker ticks every centimetre, put on by the poster to check the readings against the sensor result.

Riva:
Maybe the marks are just permanent marker ticks every centimetre, put on by the poster to check the readings against the sensor result.

I agree with you on that; it seems the most likely explanation - even if it is difficult to tell from the pictures.

Since I think now that it is some kind of capacitive setup - I wonder if (along with the Capacitor Sensing Library) this sensor could be easily replicated? I suppose it would depend on what the capacitance of such a length of speaker cable is (I would imagine it would be a very low value).

My guess is the 24 pin chip is a PIC MCU but the clever part happens under the blue/black resin blob. Not sure if the blob is there to maintain stability of the components underneath or to prevent prying eyes.
If it is a PIC then (possibility) the project cannot be directly ported to AVR because of built in specific hardware like CTMU (my guess for how it's done).

Riva:
My guess is the 24 pin chip is a PIC MCU but the clever part happens under the blue/black resin blob. Not sure if the blob is there to maintain stability of the components underneath or to prevent prying eyes.

Yeah - I was wondering about that blob myself - but we'll never know unless someone can "de-cap" it...

Riva:
If it is a PIC then (possibility) the project cannot be directly ported to AVR because of built in specific hardware like CTMU (my guess for how it's done).

The PIC's CTMU (Charge Time Measurement Unit) seems like a hardware implementation of what the Cap Sense library (link I posted earlier) does.

Is there something particularly special about it, which can't be replicated in software? Perhaps it can sense a smaller capacitance level than what can be done with the library...?

Even so - I can envision some extra hardware hooked up to the Arduino to augment the cap charge sensing; I'm sure there's examples on the internet, plus you have the myriad examples from the personal and microcomputer world (talking 1970s-80s era here) where cap-decay sensing was used for joystick position reading...

Interesting aside - on the TRS-80 Color Computer (I own a few - my originals from when I was a kid, plus a few others I've collected since), it used a 6 bit ADC for reading it's joysticks - then internally it had some kind of capacitor delay circuit plus assembler code to determine the joystick reading. Anyhow - later in the CoCo's life Tandy (and other's) came up with a "high-res joystick interface" that coupled a few other bits (tape cassette input mainly) to gain addition resolution (mainly so that the CoCo 3's higher-res screens could be addressed better). Recently, there was an announcement of a software-only method to gain higher resolution; it basically works in some manner by sub-sampling the ADC and comparing decays with a faster loop (or something like that). It's really too bad this method wasn't found out about back in the day.

So - if the Color Computer can do this (running at a max of 1.78 MHz too!) - is there something else that would prevent the ATMega328 from doing the same?

I'm not challenging you or anyone else - again, this is more for me an interesting thought experiment - and maybe a solution could be wrangled from this discussion. Perhaps there's a standalone CTMU type IC available from some manufacturer? Or, maybe a combination of parts (cap, comparator, or maybe a 555 in single-shot mode?) could be also used to add the functionality...?

It's interesting to contemplate.

I guess there's an LM311 under that blob.

Google "Elsie LC Meter".

Here's one hit.
http://electronics-diy.com/lc_meter.php
Leo..

It all depends how the CTMU is being used as it can also be used to time events down to sub nanosecond levels.

After searching I managed to find the application note I had read some time ago referring to liquid level measurement using CTMU.

The core part of interest is...

  1. Liquid Level Sensing
    Here is a clever twist on capacitance, in a very literal
    sense. Take a conductive plate and place a container
    made of an insulating material (say, glass) upon it. Fill
    the container with a liquid and you have a capacitor. In
    this setup, the capacitance of the container changes
    with the level of the liquid. The size of the container and
    the plate can be scaled according to the application’s
    requirements. (Note, however, that the application
    requires calibration for each different container, and
    each type of liquid.)
    Level sensing can also be implemented using a con-
    ductor running along the length or height of a container.
    The operating principle is exactly the same.

Something else of interest...
http://www.edn.com/design/sensors/4433411/Use-Time-Domain-Reflectometry--TDR--for-low-cost-liquid-level-measurement--Part-III

This was a Kickstarter project from June 2014 and a comment was posted by Vegetronix stating the sensor was capacitive.

Most liquids have dielectric constants from 2 upwards, which makes them easy to distinquish from air,
even through the existing insulation over the wires. Water has a massive dielectric constant of 80 or
so, hydrocarbons like paraffin are around 2 and are the most demanding to detect.

[ aside - the reason ethernet cables and RF coax use polythene or teflon, not PVC, for the signal wire
insulation is to reduce moisture absorption which would otherwise cause big variations in wire dielectric
constant and thus characteristic impedance of the wire, and moisture is also a very lossy dielectric so it
would absorb higher signal frequencies more. Sometimes you don't want capacitive sensing happening! ]