In the last few days I've managed to compile freeroute, overcome numerous KiCad issues, build another functioning prototype, and actually get the board to succeed with all paths routed. Unfortunately it took over 13,000 passes in the autorouter to route and optimize the board (a few hours of CPU time on my MacPro.)
We're learning many things the hard way, unfortunately, but at least we are learning them.
First off, most of the parts that we decided to use, were 1206 SMD parts. The world has moved past 1206 as best I can tell. I don't want to use 0405 (too small) or 0605 (small), but there seems to be a sweet spot with manufacturing houses and the 0805 part size.
Most LEDs are 1206 or 0805, and the small picofarad caps in our RF section are only available in the 0605 size, so I think it's time to redo the entire schematic with the express plan of 100% fabrication at the fab plant.
The parts that we use are going to be largely dictated by common parts available at MacroFab or Tempo Automation, the two vendors I think I'm going to go with to build the boards. Small changes (like using different headers, device sizes, or antennas) move the price dramatically, by nearly $20-30 per badge. We have to be very careful with our part selection.
Part selection seems to be easiest on MacroFab -- they have an export utility, so I can pick all of the common parts and then
Our big problems are coming from trying to source the KW01 CPUs. Some 200 are available through mouser, zero are available at digikey. It's an 11 week lead time on these parts and in some cases the minimum order is a 2,000 tape reel. I am not spending $8k on CPUs.
I've also learned how to solder 0405 bridges on the dev board with tweezers and a magnifying lamp. That sucked and left me begging to own an AmScope. I highly recommend you have a needle-tip soldering iron, flux, and tiny, tiny solder. At least I had needle tips for my Fluke DVM so that I could verify my connections at this scale.
Have I mentioned how Louis Rossman is my hero for SMD work? Go look: https://www.youtube.com/user/rossmanngroup
On the software side of things, Bill has badge-to-badge radio chat mostly working (which is pretty neat), and I have completely rewritten the fight-game event loop to be more compact and use a single radioHandler to change state. Before I was using five handlers and it was extremely ridiculous trying to manage the in-memory structures and handler enabling/disabling. Now, a single state machine runs the entire game.
I'll leave you with a photo of my first attempt at the board, but unfortunately all of this is about to change.