Solution

Using an open drain buffer like the 74LVC1G07 did the trick. Note that this part only works for inputs with a pull-up resistor. There are other parts from the same lineup that can work with any input.

Problem

I have an ebike computer that has two inputs that accept square wave signals. The range is 0-5V. One of the inputs has no pull-up/down resistors on it. When I hook up a device producing signal, the signal is detected correctly. Both highs and lows are detected correctly. The other input has a built-in pull-up resistor. When I hook the same signal to it, only the high side is detected. Measuring the voltage of the low side, it’s a bit higher than when hooked to the other input and I’m guessing it isn’t crossing the low threshold the computer expects in order to register the low.

Am I right in thinking that the pull-up resistor is increasing the lows?

Is it possible to counteract the internal pull-up resistor by hooking a pull-down resistor to the input?

I’m a software guy with decent soldering skills and minimal knowledge in electronics so please answer like I’m not the brightest electronic bulb on the tree.

Thank you in advance!

Cross-posting my question from StackExchange.

  • lightrush@lemmy.caOP
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 year ago

    Thanks for the explanation!

    I measured the signal generator alone, not connected to the input. It goes to 4.5V high and 0.001V low. Then I connected it to the input and measured at the input. I got 4.5V high and 1.1V low.

    Also I ordered the 74LVC1G07 buffer along with a breakout board which should allow me to hook it up inline and test. I’ll report back when I do.

    • hardware26@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      It should do the trick I think. If you are working on electronics a lot, you may consider buying a breadboard and variety of resistors, capacitors and nmos, pros, bjt transistors in bulk for quick fixes instead of waiting for orders to proceed. Have fun