Connecting additional power supply makes all digitalRead values HIGH

Sorry if this is the wrong category for the topic.

I'm using a servo driver board for a project where I'm controlling multiple servos. I made a little circuit that can select the specific servo with buttons and a joystick to control the servo's angle. When I am using just the board and the circuit on the breadboard, everything works fine. However, when I plug in my external power source (2 18650 lithium ion batteries) to the driver board, it starts reading all the digitalRead values as HIGH for the buttons and then promptly stops when I disconnect the external power, letting the board run on power from the USB cable plugged into my PC. Basically, the buttons are unusable when the power is attached because it keeps reading their values as HIGH. Why is this happening?

Where are you connecting the batteries? Can you provide a schematic?

I'm not sure how to create a schematic for this but here are pictures.


Have you checked the connections? If you're using an Arduino, can you provide a picture of the connections?

I'm not sure if this is what you mean but here. The one on the left is an Arduino UNO and the one on the right is the servo driver board which goes right on top of the UNO.


Where is the energy coming from? From your PC?

I was talking about these connections:

Yes, connected by a USB cable into the UNO.


This is a simplified version of the circuit. The only difference is that I have the wires running into the breadboard before going into the pins instead of directly from the input device to the pins.

I don't know if this will work, but instead of powering the driver board, try powering the Arduino directly (on the Vin or using a external regulator)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.