Reset pin always staying low

When I power on my arduino without it being connected to anything, it starts up as normal and the reset pin goes high. However, when I plug it into my PCB and try to use it to turn on an LCD, the reset pin stays low and the arduino stays in initialization. I have thought about using a pull-up resistor but I am not sure if that is the best option for this issue.

The ardunio stays in reset both when being powered by USB and by an external 9V source into Vin. I am unsure if the issue is having the reset pin connected to the header on my board despite it not being connected to anything internally on my board.

Would a pull-up resistor be the best option or is there a way to control the pin from the software to take it out of reset?

Which Arduino? They already have a 10K pullup resistor on Reset. Find out what you are doing that is pulling it low.
Sounds like something on your LCD shield.

You're a little vague on details.

What is your PCB and what is powering your Arduino?
Is it possible you are pulling too much current from your circuit? This will result in the reset staying "Low"

Which model LCD?

There's also a reset and a reset pin which tells you if the Arduino is in reset/init mode. The previous post is correct. The Arduino reset pin already has a resistor across it to prevent too much current from going across it. Is it possible you are mistaking the LCD reset pin as an input and not an output?

I am using the ATMega2560 and the Newhaven Display NHD-0420E2Z-FSW-GBW with the read/write pin tied to ground.

My PCB has various ICs on it that are also pulling current, but with the arduino connected to the board, I am pulling ~170mA with 9V from the power supply coming into the Arduino which I believe to be lower than any max current in the datasheets.

I am thinking it could have something to do with the current draw, but my board without the arduino is only pulling 40mA (170mA with the arduino and LCD) which seems like it wouldn’t have that big of an impact. I can get the LCD working fine on a breadboard setup using the same pins and the same code.

Also, I am just using the standard LiquidCrystal library with the 4 high order data bus lines.

well let’s do a little math

9V * 170ma = 1.53 Watts
1.53W / 5V = 306 ma. (Assuming 100% efficiency…)

That’s near the edge of the voltage regulators limit. As a rule of thumb, never go over 80% of a spec rating.

I would get a LM7805 (LM78xx series switching voltage regulators) and hook your LCD to the output of the 7805 off the breadboard.

Having 7809 7812 7803 and 7805’s around very handy. These also help when distributing power from a 2.1mm power supply:

2.1mm plug terminal adapters

dth, for linear voltage regulator, input current = output current

and efficiency = Vout / Vin, in that case, 5/9

For the purpose of testing my PCB, could I hook the LCD V+ and Ground connections to a different 5V source but still keep the data lines connected to the arduino on the board or will I run into any weird loops being connected to two places?

Thanks for all of your help, it's my first time trying to integrate an arduino onto a PCB that I've designed so I'm running into challenges I didn't know existed prior to.

dth, for linear voltage regulator, input current = output current

and efficiency = Vout / Vin, in that case, 5/9

My apologies. You are quite correct. I was thinking of a switch regulator. It was a long day and my brain was tired.

To answer the question: you can run them off two supplies. Typically if you tie off the grounds together, that has a tendency to kill ground loop issues. I would just split the output of the 9V, and use a 5V voltage regulator on the breadboard to supply the LCD. I would then use the other feed to supply the 2.1mm pin on the arduino.

It is possible you have a current in-rush issue which is bringing the voltage down. But that is just how I would tackle it.

Thank you for the help. I currently am leaving the backlight disconnected and it is working fine without trying to pull the extra current to the backlight.

A second LDO would be a great option to power the LCD only, I tested it on the breadboard and may add it into the second revision of the PCB if we decide to use the backlight of the LCD.