When comparing an ATmega128 with a ATmega328 (both running at 16MHz, 5V), are there any SPI related differences that might cause problems with the ATmega128?

Obviously the SS, SCK, MOSI, MISO and INT pins need to be mapped differently - but other than that, is there any way in which the two microprocessors behave differently that might cause SPI problems (e.g. would the same signal voltage level be interpreted differently by respective input pins)?

What would be the best approach to debug respective problems? (I have a problem with a transceiver that works perfectly with the ATmega328 but with the ATmega128 it fails to "receive" but only "sends"...)

I've never worked with ATmega128 but it should be the same a for all ATmega chips. Datasheet says there is some specific pin mapping for SPI programming. It accepts same voltage.

The “ATmega64/128 standard pinout” graph supplied on the GitHub - MCUdude/MegaCore: Arduino hardware package for ATmega64, ATmega128, ATmega640, ATmega1280, ATmega1281, ATmega2560, ATmega2561, AT90CAN32, AT90CAN64 and AT90CAN128 page was just wrong: INT7 isn’t on PE6 but on PE7! (It pays to also read the original specs…:slight_smile: ) I had wired my stuff based on that graph I am actually using INT6 - and now it works.