pull-down or pull-up or nothing at all?

I have a bit of s strange situation. I am busy building a telemetrics device for my motorcycle. But also as 'n shift light. The rpm I read perfectly using the attached circuit.

I am trying to read the bike’s existing speed sensor but here is where my problems start.

I have a test led connected to see when the sensor is on and off.

With the LED on I get ±2.8 volts coming to my circuit. With the LED off I get like -28 volts.

When checking this circuit’s output I get 4.88 volts with LED on and 4.90 volts with LED off and with the signal wire disconnected I get 0 volts.

Oh and if I connect a LED with 270rohm resistor to my output (input to Arduino Uno) then it stays half lit but you can see flashing from the sensor signal.

I guess this is why I can’t detect anything on the Arduino as there is not enough difference in the signal

Do I need a pull-down resistor perhaps or do I just need to adjust my resistor values in the circuit?

Schematic crop.PNG

Does your vehicle have a ODBII port? If so, I'd suggest getting a ODBII module, hooking your uController to it, and garner the information through that device.

I use the ESP32 based, Freemantics ODBII module, there are others. The Freemantics ODBII module takes several weeks to arrive.

Sparkfun has an ODBII module that might arrive a bit fast. I've not used one.

I agree with using OBD-II. Running things off a car's voltage supply is a lot harder than you'd think, there's voltage spikes and transients that you have to watch out for. Look up the recommended circuits for the, for instance, ELM327.

Another note, maybe the reason your speed sensor reads wacky volts is because it's not running off VCC, but a different voltage?

Unfortunately no OBD-II...and the module would in most instances be installed where there is no OBD-II. In our family alone we have 5 bikes of which just 1 has fuel injection. It is on this bike that I am testing my prototype and even this bike has no OBD-II.