Initial Servo Placement

13 replies [Last post]
Terry
Terry's picture
Title: NooBot
Joined: 06/08/2009
Posts:
BotPoints: 55
User offline. Last seen 6 years 1 week ago.

Jeremy,
I find your comment on the enable_servos() quite enlightening and disturbing (I'm assuming you are correct). This suggests to me that programming the CBC has become a kind of "insider activity", since I don't see your definitions in the online manual. How would you suggest sharing this with the rest of the Botball teams which must rely of written documents.

History is a race, between Education and Catastrophe

Jeremy Rand
Jeremy Rand's picture
Title: Botball Youth Advisory Council
Joined: 04/03/2009
Posts:
BotPoints: 1168
User offline. Last seen 8 years 1 week ago.

Hmm, I'm disturbed too, I didn't know that the manual was missing that info. I think I first heard about that info in the Botball Home Base FAQ (and I've used servos numerous times since then, so I'm confident that I'm correct). I agree that teams shouldn't have to search the previous years' FAQ's for that info... if I were the maintainer of the manual, I would update it immediately.

That said, in general, the Botball Community site (both User Articles and the Forum/Chat) is a good way for teams who are having trouble to get help. In real life programming projects, nothing is completely documented either, and asking friends or experimenting is necessary (one of my friends learned this the hard way in an internship with a large, well-funded software company over the past summer). So as long as it's possible to get help when necessary (the Community is a good resource), I don't think this is a huge issue -- teams who are smart enough to ask for help when they need it will gain a slight advantage, just like real life.

Obviously, if the missing info is critical to a robot functioning at all, then it should be very well-documented. But I don't think this issue qualifies there. Teams who use the old servo functions will still be able to make the servos move; it just won't be as good (servos won't move at the expected time, and servos may not disable properly). While this difference might affect tournament performance a slight bit, a team with otherwise good engineering/programming could still be competitive without knowing that the documentation is out of date. I think the slight competitive edge gained by that knowledge is reasonable to attach to whether a team asks for help.

Obviously this is purely my opinion. I've lost Botball matches because I wasn't familiar with something that wasn't in the documentation. But while I was briefly annoyed, I realized that the teams who beat us had done a better job of investigating the limits of the documentation than my team had, and that's part of the game. My annoyance didn't last long. Other people's opinions may vary. :-)

-Jeremy Rand
Senior Programmer, Team SNARC (2012-2013), Norman Advanced (2010-2011), Norman HS (2008-2009), Norman North (2005-2007), Whittier MS (2003-2004)
2012-2013 VP of Tech, 2011 President, Botball YAC (2009-2013)
Mentor, Alcott and Whittier MS

Jeremy Rand
Jeremy Rand's picture
Title: Botball Youth Advisory Council
Joined: 04/03/2009
Posts:
BotPoints: 1168
User offline. Last seen 8 years 1 week ago.

I just wrote a User Article on the subject:

http://community.botball.org/articles/why-enableservos-and-disableservos...

Feel free to share the article link with anyone interested.

-Jeremy Rand
Senior Programmer, Team SNARC (2012-2013), Norman Advanced (2010-2011), Norman HS (2008-2009), Norman North (2005-2007), Whittier MS (2003-2004)
2012-2013 VP of Tech, 2011 President, Botball YAC (2009-2013)
Mentor, Alcott and Whittier MS