In the last 4 Days I fixed several mistakes in my board and I did was checking the board from time to time and rethink some parts.
A big mistake I noticed just today is that I swapped PB2 and PB0 as data and clock for the I2C bist over the USI.
I learned this lesson the hard way a while back. If you have the time, use it to check your design, but don’t force yourself into finding errors. The best time to do it is while you’re needing a break from something else. Another thing I do quite often is print out the project (the board, schematic or even a headerfile or hand scribbled UML diagrams) so you can always have a quick look at your project. It is then when you find the most obvious errors you missed previously.
Also it is a good way to take some time each day to check everything for correctness. You most likely won’t find all errors on one day and you may have a complete different look on the things at another day