# Understanding ohms (resistance) and how to tell a fuel float gauge to tell the OBD II that it's registering fuel or empty

I have a Polaris PRO-XP and I've mounted an 30 gallon fuel cell into it.

The ODB II on the machine is expecting between 450 ohms in the empty position, and 100 ohms in the full position.

The new fuel float I've got reads between 0.00 ohms in the empty position and 100 ohms in the full position.

I can't modify the fuel float, but I have access to the wires connecting the fuel float. What should I add to the connecting wires to give me the ohm readings between 450 and 100 on the new fuel float? See attached image for the current requirements.

• Did you read step 5? Is it possible the float is angled in the wrong direction inside the tank?
– Nedd
Apr 17, 2022 at 5:14
• @Nedd The new float is simply different and must be adapted. OP has measured the float's resistance range. Apr 17, 2022 at 6:01
• Bought the wrong one… Apr 17, 2022 at 6:07
• @Kuba - Just noting that according to the specifications the resistance reading should decrease as the fuel level rises. OP claims that the resistance reading is now increasing as the level rises. If the meter reading is correct then something seems reversed.
– Nedd
Apr 17, 2022 at 6:11
• Umm, this is really a simple problem: OP bought a fuel cell that has a 0-100 fuel sender. The computer in the quad needs a 450-100 fuel sender. OP has to figure out how to adapt the 0-100 ohm output to a 450-100 ohm range. And the solution isn't rocket science: Arduino Uno + an external switch will do it, as will a couple op-amps and comparators. The idea is to synthesize resistance by dividing conductance using a chopper. That way you can make a 100 ohm reference resistor "appear" as any higher value :) Apr 17, 2022 at 7:43

OK, your vehicle expects a 450-100 ohm float (empty-full), but your fuel cell has 0-100 ohm output (empty-full). You got the fuel cell already, gotta live with it. Gotcha.

For reference, Polaris PRO uses 12 V battery.

This will require an active circuit that measures the resistance on the float, maps it to the output resistance range, and then emulates this resistance.

There are many ways of doing it.

The control unit reading the float will maintain voltage on both of the float's terminals somewhere between 0 and 12 V, and our "resistor emulator" needs to accommodate that.

One approach would involve a chopper that "chops up" a 100 ohm resistor's conductance to emulate higher values.

The system diagram of such a circuit is as follows:

The 0-to-100 ohm fuel sender is connected to an ohmmeter circuit, which converts the resistance to a voltage V1. This voltage is then mapped to a voltage V2, which corresponds to a PWM duty cycle needed to emulate the 450-to-100 sender. The PWM's output appears like a quick switch that turns on-and-off, with the on-to-off ratio such that it makes the 100 ohm resistor R2 appear to be anywhere between 100 and 450 ohm.

With PWM duty cycle at 100%, the resistor is continuously connected to mapped output and appears just like itself: a 100 ohm resistor. At duty cycle 50%, the resistor is unplugged half the time: it looks like it has half the conductance, or twice the resistance - it "becomes" a 200 ohm resistor. And so on. At 22.2% duty cycle, the resistor is unplugged enough that it has 2/9ths of the conductance, or 4.5x the resistance - it "becomes" a 450 ohm resistor.

So, the mapping we need is 0 ohm on the input (empty) to 22.2% duty cycle on the output (450 ohm - empty), and 100 ohm on the input (full) to 100% duty cycle on the output (100 ohm - full).

The chopper approach is cumbersome to execute with parts that can be modeled in CircuitLab, as my goal was for the circuit to be easy to simulate directly on EE stack exchange.

After trying it out and deciding it wasn't a good example, I've instead adopted a continuous-time approach that is much simpler. This is the answer that details that circuit.

The circuit as presented there is only a proof of concept, because automotive environment is generally harsh, so it'd need various additional components to stabilize the supply voltage, protect from overloads, etc.

• Interesting. Back in olden days, Vishay/Siliconix used to make JFETs for similar purposes. We called them VCR's. See AN105 and the VCR2N/4N/7N datasheet. I'm not sure what the OP's receiver circuit looks like, that measures the resistance. But it's late, tonight, and I'm foggy. Still, can't wait to see your design.
– jonk
Apr 17, 2022 at 8:25

The receiver expects a signal of opposite slope, 3.5:1 less current and with an offset.

This could be achieved with a low cost quad package of opamps (eg LM324) and a few resistors.

• From sender produce a varying voltage proportional to current (as current is proportional to resistance with fixed 12V drive. .

• Invert slope with a -1 gain amplifier.

• Add offset (resistor network mix with signal).

• Produce a current source that produces a current in the output that is 1/3.5 the of current in the input.

Several or maybe all these could be done with a single opamp but in an eg LM324 you have a quad package of opamps for about a dollar.

eg LM324 in stock Digikey \$0.48/1.
[Data sheet here

A sample design could be provided if of interest.
You'd expect that commercial products that do this would be available.