Yeah, so in case you hadn’t noticed, i’m not exactly big on making blog posts. But, seeing as I actually have a good bit to show at this point, I thought I’d show off some prototypes.
I won’t blame you for not knowing, but I’ve already made a significant amount of headway on the FC1 project. In fact, I’ve been hard at work on this since around November 2015. Here’s a summary of what you’ve missed:
The longest step was designing the boards, for which I used CadSoft’s Eagle. I’ve been through many, many designs at this point, all the way up to version 4.2.
I also created a 3D model of the board using SketchUp for illustration purposes:
But in order to test each version of the board, I ordered prototypes from board houses. The first (leftmost) was from Advanced Circuits, and as you can see, they did a sub-optimal job. Needless to say, version 1 didn’t work. Not that it would have anyway though, there were more than a few flaws in the design. Some of the things I’ve fixed and added since then are somewhat interesting, but I won’t go into that now.
The other 3 prototypes were from a board house known as Dirty PCBs, and they’re pretty much the best (and the cheapest) I’ve used, even including OshPark. Anyway, the biggest changes I’ve made in the version 4 prototype is adding an additional sensor, a temperature and altimeter combo, and changing the ICSP header to a JTAG, as ICSP apparently can’t be used to program ARM processors in any way. Oops. So, with that, version 4 became the first working prototype, which I’m currently using on some borrowed quadcopters for testing with. Also, as you can see I didn’t add / had to remove components from some of the prototypes, as I calculated the quantities for some of my DigiKey orders incorrectly.
On the back of the last 2 boards, you’ll find a neat graphic including a product description and the company logo, but for some reason, DirtyPCBs seems to have inverted the whole backside silkscreen on the latest prototype. Or maybe it was just a formatting error.
Once I managed to program the chip initially, using the Atmel ICE programmer (rightmost, white box) to burn the USB-enabled bootloader (through the aforementioned JTAG header), it was possible to program the board on it’s own just like an Arduino (but with a more powerful processor.) The Arduino Zero-like chip used on the board was recognized by the Arduino IDE as intended, and I was finally ready for the software stage.
Now, for the Today Summary:
With projects like this it seems that there’s a new problem every day. For example, today’s problem is that the gyroscopic stabilization isn’t working. I’ll visit our local Maker Space, NovaLabs, tomorrow to try and reseat the motion processing unit.