Well, it's been a while since I posted anything. I've been very heads-down with various priorities and this is the first opportunity I've had to come up and take a breath. I've just shed a few obligations so I'm hoping I'll be able to post more frequently.
I haven't abandoned my AVC project! In fact, I spent several weeks tweaking the schematic and then several more tweaking the PCB design. The inescapable fact of all this is that I just plain suck at PCB design.
My robot's brain consists of an STM32F4 microcontroller with a number of peripherals hanging off a single I2C bus. An Adafruit Ultimate GPS (which appears to be a rebadged GlobalTop PA6H) is the only non-I2C sensor. I also added a micro SD card for data logging, and an ATTINY88 to perform the R/C MUX function. Since all of these parts are surface mount and I didn't have any prototyping adapters handy, I decided to go for broke and just design and lay out the whole schematic with no testing. By all reasonable accounts, this should lead to the magic smoke escaping from at least one part.
I was forward-thinking enough to put jumpers on the power pins of each of the sensor chips. Each sensor chip can be individually powered on by using a jumper. So I can test the board by only powering up the microcontroller, and then once that's working, power up the individual sensors one at a time and test to ensure everything is working. I also put jumpers on the SDA and SCLK lines for each part. I'm not exactly sure why.
I discovered when I started laying out my board that when I upgraded from Eagle version 5 to Eagle version 6, I didn't upgrade my hobby/nonprofit license. Therefore, my design was constrained to 2 signal layers instead of the 4 layer PCB that I had hoped to design. And, of course, I'm subject to Eagle's size limitations. I briefly considered redrawing the schematic in Kicad, but given the deadline of the AVC I wasn't ready to embark on that learning curve for this project. I do think that I'm likely to migrate to Kicad for future designs. The general consensus in the maker community seems to be that Kicad is ready for prime time.
I spent quite a while laying out the PCB until I got to what, I hope, is the final design. The board is about 10cm by 5cm. In retrospect I probably should have designed a larger board for ease of troubleshooting at the expense of a possibly higher fabrication cost. We'll see when the board actually gets here.
I shopped around for fabrication and found that there are two general choices: you can have a PCB fabbed domestically, quickly, and expensively, or you can go overseas for slow and cheap. I opted for cheap. There are several board houses that cater to hobbyists. I eventually settled on Dirty Boards, run by the Dangerous Prototypes crew. I also ordered a solder paste stencil from them. I sent my files to them on Saturday the 3rd, got a tweet that my order was shipped to the fab house on Monday the 5th, and that it was shipped to me on Monday the 12th. I ordered a black soldermask; I'm kind of curious to know if a more popular color (i.e. green) would have expedited my order. Sparkfun requires AVC participants to submit a "proof of concept" video as a kind of prequalification for the contest. The videos are due by the end of May. Since I don't yet have my boards in hand, and I'll need to assemble, test, and program one to get this video made, I'm under a time crunch. I hope the boards get here soon!
I'll write more when the boards get here, and hopefully I'll find some time to talk about my circuit and the (horrible) board layout.