That does appear to be a very nice system you guys have designed, but my question is have you guys figured out how you are going to control it and place the sensors on the wheels? A swerve drive needs the sensors to operate and their positioning can be somewhat tricky and has to be designed for.
As for coding a swerve drive, it took my team about a week straight to perfect our swerve drive code, and at least another week of testing before it was stable enough for the drivers to really use, and during that time the frustrations were high. Be sure to give the base to the programmers at least half way through the build time, because trying to program this with people breathing down your necks is not fun. I speak from personal experience there, our 2009 and then our prototype 2010 robot were both swerve drive.
If you guys would like some examples of swerve code, it isn't very nicely structured, our old code is here:
http://coolhub.imsa.edu/cybercollab/...ming-documents
If you have any questions regarding that code send me a PM and I'll try to help
- Ian McInerney
Lead Programmer, Team 2022