TLDR; ATMEGA328p (Arduino uno and Arduino nano) board not working, delay(1000) takes longer than 1 second. Solution, burn Bootloader via USBtinyISP.
I'm currently working on my custom ATMEGA328P board. I ordered 5 boards from JCL PCB and designed them with Easy Eda. I'm really happy with the boards they made for me at an affordable price.
I am programing the boards with a USBtinyISP.
The first board worked great. The second board would not turn on. I tried uploading using programer the blink sketch to the second board. The LED turned on and off, but the timing was way more than the 1 second delay.
Then I thought the problem was with the 16Mhz crystal used. I looked at the board but it looked clean.
Then it hit me! I never burned the bootloader to the second board! LOL
So I burned the bootloader and the original code worked right away!
I know this is a silly mistake, but I wanted to share this post in hopes that it will prevent someone from waisting a whole afternoon trying to figure out the same problem.