Well I got my first custom PCB from AdvancedCircuits yesterday. I populated the board and everything seems to be working. I had to remove some solder-mask and cut some traces to add in some resistors I forgot to add but I knew that was coming. It wasn't too hard and things look to be working.

Next up, modify the LPC1769 code on the Robovero to do all the low level hardware interfacing (instead of calling it all from the Overo over "serial"). I got the motor reading/writing working, wasn't a huge step since I could debug it through the Overo first.

Now I've moved on to setting up a SysTick timer that may end up setting the time step for the controller. Right now, the built in function SysTick_InternalInit(milliseconds) makes it pretty easy to set the time in steps of milliseconds. I'm thinking that 500Hz (2ms) may end up being what I run at but if I need something faster than that (and slower than 1KHz) I can just implement my own routine to set the counter at whatever clock ticks I want. First issue I ran into was when I added a void SysTick_Handler(void), enabled the SysTick interrupt, compiled and ran the code ... the controller just hung. When I looked into the startup.c file I realized why. By default Neil (software developer at Gumstix) set most of the event handlers to point to IntDefaultHandler. This event handler just has while(1); in it, so no wonder why the code hangs. I'll modify this up and see if I can get the interrupt handler for SysTick running.

Last modified Wed, 20 Feb, 2013 at 20:51