I went back and attached it to the original post, so It's easier for anyone to find.
I have spent a lot of time making sure that there is no difference between the PCB and the breadboard. The components are the same, the diodes are in the right way, everything is put together correctly, I don't think it's a construction mistake. It being a PCB and not a breadboard is the main difference I can find, the traces leading from the microcontroller to the transistors are somewhat long, and there are jumpers on top of the board that connect them to skip over some other traces on the bottom.
The digital outputs I wired to the breadboard are right next to the IC, this is the main difference I see, but maybe I'm missing something.