Go to Post Pro safety tip: put a string through coil springs that is tied off securely on the robot frame. This will help prevent the spring from jumping out and killing an inspector if it snaps. - Ninja_Bait [more]
Home
Go Back   Chief Delphi > FIRST > General Forum
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
 
Thread Tools Rating: Thread Rating: 6 votes, 5.00 average. Display Modes
  #1   Spotlight this post!  
Unread 03-05-2013, 17:49
Tom Bottiglieri Tom Bottiglieri is offline
Registered User
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,186
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Team 254 2013 FRC Code

Hi everyone,

Now that the official 2013 FRC season has come to a close, we would like to share the software that drove Overkill with the FIRST community. We have released our code to the public every year since 2010 and the programming sub team is especially proud of the work they have put together for the 2013 submission.

This year we made the switch from C++ to Java. We did this as the Java tools can be run on any platform and are freely available to download on the Internet, which made it very easy for our students and mentors to hit the ground running and contribute commits. Java is also taught in the school, so we figured this would be a great way for students to apply the skills they are learning in the classroom.

https://github.com/Team254/FRC-2013

If you have any questions please do not hesitate to ask... We love talking about our work! Also please feel free to try/learn from/re-use this code as much as you see fit.

Thanks!
Reply With Quote
  #2   Spotlight this post!  
Unread 03-05-2013, 17:50
Kusha's Avatar
Kusha Kusha is offline
Crimpin' ain't easy
AKA: Kusha Gharahi
no team (Looking for a team)
Team Role: College Student
 
Join Date: Jan 2011
Rookie Year: 2010
Location: Dallas, Texas
Posts: 207
Kusha is a jewel in the roughKusha is a jewel in the roughKusha is a jewel in the roughKusha is a jewel in the rough
Re: Team 254 2013 FRC Code

The link is 404ing for me.

EDIT: Now it's working, thanks 254!
__________________
“Be the change that you wish to see in the world.”

― Mahatma Gandhi

Last edited by Kusha : 03-05-2013 at 17:54.
Reply With Quote
  #3   Spotlight this post!  
Unread 03-05-2013, 17:53
JesseK's Avatar
JesseK JesseK is offline
Expert Flybot Crasher
FRC #1885 (ILITE)
Team Role: Mentor
 
Join Date: Mar 2007
Rookie Year: 2005
Location: Reston, VA
Posts: 3,637
JesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond repute
Re: Team 254 2013 FRC Code

Works fine here.
__________________

Drive Coach, 1885 (2007-present)
CAD Library Updated 5/1/16 - 2016 Curie/Carver Industrial Design Winner
GitHub
Reply With Quote
  #4   Spotlight this post!  
Unread 03-05-2013, 17:54
Tom Bottiglieri Tom Bottiglieri is offline
Registered User
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,186
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by Kusha View Post
The link is 404ing for me.
It took a second for the repo to go public (we use Github's private repo feature to develop our code). Check again now!
Reply With Quote
  #5   Spotlight this post!  
Unread 03-05-2013, 18:20
hiyou102's Avatar
hiyou102 hiyou102 is offline
Registered User
no team
Team Role: Alumni
 
Join Date: Mar 2012
Rookie Year: 2000
Location: Anywhere
Posts: 107
hiyou102 has much to be proud ofhiyou102 has much to be proud ofhiyou102 has much to be proud ofhiyou102 has much to be proud ofhiyou102 has much to be proud ofhiyou102 has much to be proud ofhiyou102 has much to be proud ofhiyou102 has much to be proud of
Re: Team 254 2013 FRC Code

The auto hang code is amazing!

Quote:
Originally Posted by Tom Bottiglieri View Post
(we use Github's private repo feature to develop our code).
Do you guys use the educational offers that GitHub has? If you don't, you should consider it. My team got a 2 year bronze plan for free that way.

Also, why does your code style talk about enums, even though they aren't available in JDK 1.4?
__________________
Team 4334 2012-2014

Last edited by hiyou102 : 03-05-2013 at 18:25. Reason: Fixed quote
Reply With Quote
  #6   Spotlight this post!  
Unread 03-05-2013, 18:27
Pat Fairbank's Avatar
Pat Fairbank Pat Fairbank is offline
Circuit Breaker
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Mar 2003
Rookie Year: 2001
Location: San Jose, CA
Posts: 2,132
Pat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond reputePat Fairbank has a reputation beyond repute
Send a message via MSN to Pat Fairbank
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by hiyou102 View Post
Do you guys use the educational offers that GitHub has? If you don't , you should consider it. My team got a 2 year bronze plan for free that way.

Also, why does your code style talk about enums, even though they aren't available in JDK 1.4?
One of our leaders got in touch with GitHub a few years back and got us free private repos. We have more than 10 so I'm not sure what plan we're on, but we haven't been sent a bill so I'm not about to complain.

We ported the style guide over from our C++ one before discovering the (many) limitations of Java ME. Enums aside, we could have made the constants management stuff a lot cleaner with generics and reflection.
__________________
Patrick Fairbank
Team 254 | Mentor (2012-)
Team 1503 | Mentor (2007-2011)
Team 296 | Alumnus (2001-2004) | Mentor (2005-2006)

patfairbank.com
Reply With Quote
  #7   Spotlight this post!  
Unread 03-05-2013, 19:08
joelg236 joelg236 is offline
4334 Retired Mentor & Alumni
AKA: Joel Gallant
no team
Team Role: Mentor
 
Join Date: Dec 2011
Rookie Year: 2012
Location: Calgary
Posts: 733
joelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond repute
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by Pat Fairbank View Post
We ported the style guide over from our C++ one before discovering the (many) limitations of Java ME. Enums aside, we could have made the constants management stuff a lot cleaner with generics and reflection.
Generics... I wish...
__________________
All opinions are my own.
Reply With Quote
  #8   Spotlight this post!  
Unread 03-05-2013, 21:00
joelg236 joelg236 is offline
4334 Retired Mentor & Alumni
AKA: Joel Gallant
no team
Team Role: Mentor
 
Join Date: Dec 2011
Rookie Year: 2012
Location: Calgary
Posts: 733
joelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond repute
Re: Team 254 2013 FRC Code

I did a diff on your CheezyGyro class, and the only important change was making initGyro() public. Is this only to calibrate the gyro when you want to? Why didn't you just adjust it in the wpilibj and compile with the custom version?
__________________
All opinions are my own.
Reply With Quote
  #9   Spotlight this post!  
Unread 03-05-2013, 21:04
BigJ BigJ is online now
Registered User
AKA: Josh P.
FRC #1675 (Ultimate Protection Squad)
Team Role: Engineer
 
Join Date: Jan 2007
Rookie Year: 2007
Location: Milwaukee, WI
Posts: 945
BigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond repute
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by joelg236 View Post
I did a diff on your CheezyGyro class, and the only important change was making initGyro() public. Is this only to calibrate the gyro when you want to? Why didn't you just adjust it in the wpilibj and compile with the custom version?
Then anyone checking it out would have to have the modified WPILibJ
Reply With Quote
  #10   Spotlight this post!  
Unread 03-05-2013, 21:05
joelg236 joelg236 is offline
4334 Retired Mentor & Alumni
AKA: Joel Gallant
no team
Team Role: Mentor
 
Join Date: Dec 2011
Rookie Year: 2012
Location: Calgary
Posts: 733
joelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond repute
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by BigJ View Post
Then anyone checking it out would have to have the modified WPILibJ
I suppose so. Although who would compile it? Not everybody has an Overkill
__________________
All opinions are my own.
Reply With Quote
  #11   Spotlight this post!  
Unread 03-05-2013, 21:07
BigJ BigJ is online now
Registered User
AKA: Josh P.
FRC #1675 (Ultimate Protection Squad)
Team Role: Engineer
 
Join Date: Jan 2007
Rookie Year: 2007
Location: Milwaukee, WI
Posts: 945
BigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond reputeBigJ has a reputation beyond repute
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by joelg236 View Post
I suppose so. Although who would compile it? Not everybody has an Overkill
Any other 254 programmer with a new dev environment?
Reply With Quote
  #12   Spotlight this post!  
Unread 03-05-2013, 21:07
joelg236 joelg236 is offline
4334 Retired Mentor & Alumni
AKA: Joel Gallant
no team
Team Role: Mentor
 
Join Date: Dec 2011
Rookie Year: 2012
Location: Calgary
Posts: 733
joelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond reputejoelg236 has a reputation beyond repute
Re: Team 254 2013 FRC Code

Another question, I haven't seen a single final variable, even in cases where I can't see a good reason not to. Any reasoning behind that or is it just because you know you won't write code to mess with them?
__________________
All opinions are my own.
Reply With Quote
  #13   Spotlight this post!  
Unread 03-05-2013, 22:31
xmaams xmaams is offline
Registered User
AKA: Sam Dietrich
FRC #2587 (Discobots)
Team Role: Mentor
 
Join Date: Feb 2013
Rookie Year: 2012
Location: Houston
Posts: 12
xmaams will become famous soon enoughxmaams will become famous soon enough
Re: Team 254 2013 FRC Code

You actually can use the DPad up and down if the switch on the controller is set to D. Then it is axis 6.
Reply With Quote
  #14   Spotlight this post!  
Unread 04-05-2013, 08:49
JesseK's Avatar
JesseK JesseK is offline
Expert Flybot Crasher
FRC #1885 (ILITE)
Team Role: Mentor
 
Join Date: Mar 2007
Rookie Year: 2005
Location: Reston, VA
Posts: 3,637
JesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond repute
Re: Team 254 2013 FRC Code

Quote:
Originally Posted by joelg236 View Post
I did a diff on your CheezyGyro class, and the only important change was making initGyro() public. Is this only to calibrate the gyro when you want to? Why didn't you just adjust it in the wpilibj and compile with the custom version?
In industry, modifying the source of an external library is a bad practice that should be avoided if a better technical solution exists.

The bigger issue is if the other library receives updates from the original source. Then you have to re-implement the changes into the updates. If the custom change were in runtime logic (not detected by a compile error, like the Poof's would be) then your robot wouldn't act correctly, causing a lot of wasted time in trying to figure out why.

Here's an example of a situation where I was forced to modify COTS code at work. It required a full write-up and sign-off by the program manager. This type of thing isn't detected by a compiler, but it caused several runtime Exceptions when we tried to load the map format.

At work, we use NASA WorldWind. WorldWind has some static file name extensions that are hard-coded to lower case. On Linux, the files we have are upper case, and case matters on Linux. One of the map formats we use contains the upper-case file names in a header table embedded within a single file binary file -- not possible to change. Additionally, if the issue were brought up to NASA, the fix would likely be seen in WorldWind 1.5 or 1.6, whereas we're using 1.4. WorldWind 1.5, at the time the decision was made, was having hotspot issues on Linux -- so waiting for a fix in an update was considered a risk. Thus, we had to modify WorldWind's code (added .toUpperCase() in the proper spots). We then CM'ed the specific patch files so we would know exactly what changes had to be made in the future. Any time we want to update WorldWind (perhaps in the project's next iteration), we can pull the patch files out of the code repository and analyze if they're still relevant.
__________________

Drive Coach, 1885 (2007-present)
CAD Library Updated 5/1/16 - 2016 Curie/Carver Industrial Design Winner
GitHub
Reply With Quote
  #15   Spotlight this post!  
Unread 05-05-2013, 02:12
dellagd's Avatar
dellagd dellagd is offline
Look for me on the field!
AKA: Griffin D
FRC #2590 (Nemesis) #2607 (The Fighting Robovikings)
Team Role: Mentor
 
Join Date: Sep 2011
Rookie Year: 2011
Location: PA
Posts: 890
dellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond reputedellagd has a reputation beyond repute
Re: Team 254 2013 FRC Code

As a Java programmer, lets just say this has fulfilled the second letter of this great organization we compete in for me.

*picks jaw up off of floor*
__________________
Check out some cool personal projects in computers, electronics, and RC vehicles on my blog!

2016 MAR DCMP Engineering Excellence Award
2016 MAR Westtown Innovation in Control Award
2016 MAR Hatboro-Horsham Industrial Design Award
2015 Upper Darby District Winners - Thanks 225 and 4460!
2015 Upper Darby District Industrial Design Award
2015 Hatboro-Horsham District Winners - Thanks 2590 and 5407!
2014 Virginia Regional Winners - Thanks so much 384 and 1610, I will never forget that experience!
2014 Virginia Quality Award
2014 MAR Bridgewater-Raritan Innovation in Control Award
2014 MAR Hatboro-Horsham Gracious Professionalism Award
2013 MAR Bridgewater-Raritan Innovation in Control Award
2012 MAR Lenape Quality Award
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 20:23.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi