Took some time off. Been quite busy. That and I was having some issues and needed to step back.
Tonight I messed with the CPI values a bit and removed the multiplier. The multiplier works well on the desktop but in games it makes movement… strange. But the big win was replacing the 100 pF capacitor on the MC14490(debouncer) to a 1000 pF capacitor. This slowed the oscillator allowing for more time between register shifts in turn allowing for a longer debounce period. This change fixed all my bounce issues! I still want an oscilloscope to actually see the bounce and how the different debounce methods affect it. I am just guessing, which I don’t like doing.
Well after a very long break I finally ordered a custom PCB from OSHPark. I am very pleased with the result, i needed to manually cut the board because had my cutouts on the wrong layer. I am most impressed with the fact that I soldered on a MOSFET with .5mm pad the first try! After putting all the components on the board and rewiring the breadboard it worked. Hell yes. My code was all wonky and its completely unusable but the hardware is functioning.
On to some code clean up.
The LPC 1343 is a nice chip and the dev board works well. Unfortunately this chip is basically ignored by LCP and the community is just not there. I just don’t have time to get a USB stack working with this chip. Because of this i decided to go with the mbed LPC11u24. mbed has an outstanding user community including an awsome cookbook page which includes a USB stack that has wonderful examples. Hell someone even wrote some interface code for the ADNS-9500, which to be honest i was somewhat disappointed at, I was looking foreword to doing that myself(still might).