Build now, design later

This is my first SPIDriver prototype, all the way back in 2018. I'm using various modules connected with jumpers, all plugged into a solderless breadboard.This image was deleted by MailChimp when they shut down TinyLetter.
What's good about this is that the hardware setup is quite flexible - just move a plug. What's less good is that this kind of setup is really flaky. A lot of time is wasted debugging connections. If one connection is 99% reliable, when you have 70 of them -- only 35 wires -- the probability of a failure is 50%.

The design I'm working on now has a complicated pin mapping, as it uses multiple MCU peripherals in slightly non-standard ways. I really didn't want to do a breadboard prototype this time, so this is an attempt at something better.

This image was deleted by MailChimp when they shut down TinyLetter.This image was deleted by MailChimp when they shut down TinyLetter.  
It's a big (100 x 100 mm) board with the microcontroller and all the peripherals present. However they's not connected. The microcontroller signals are routed to the large crossbar, as are all the peripherals. By adding blobs of solder to the intersections, I'll be able to make quick, reliable connections.
This board uses some new routing tricks. The microcontroller is a 4x4mm QFN, with all 17 of its useful signals routed into a single river. This block - hopefully something I'll be reusing - is about 9x9 mm square.
  This image was deleted by MailChimp when they shut down TinyLetter.
There's also a new recursive algorithm for collecting signals into rivers. Here it's used for all the peripherals, and their connections to the crossbar. You can see the recursive candelabra pattern in each case.

This image was deleted by MailChimp when they shut down TinyLetter.
The crossbar links use a pair of tiny copper pads, with a 0.2mm gap:

This image was deleted by MailChimp when they shut down TinyLetter. This image was deleted by MailChimp when they shut down TinyLetter.
It should be straightforward to add the links, and removing them with some flux and wick should also be easy. The crossbar makes it easy to make multiple connections, something that was always awkward using jumpers. To connect an MCU signal to multiple peripherals, put several solder blobs on a row. To connect an IO to multiple MCU pins, add multiple blobs to a column.

The board should be back in a few days. I'm looking forward to seeing how this new approach works.