Go to Post IS THAT A CLUE, DAVE?!?!? - Joe Matt [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 03-27-2012, 10:55 PM
alberth alberth is offline
Programmer and Engineer
FRC #4067 (The Incredible Hawk)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2011
Location: Maryland
Posts: 9
alberth is an unknown quantity at this point
Team 4067 - Java Code Release + SpringDS

After the Chesapeake Regional, we decided to extend a hand to the FRC community and release our code to the world! (Well, it was open source throughout the development process, but we didn't advertise it until now to prepare the code for public consumption.)

That said, we have two jewels to give away!

FRC Robot Code
Our team just started this year (we're rookies), but as rookies we've gained much experience from working with the API. We'd like to give other rookies a head start next year! (Or maybe this year, if you think your code isn't good enough!) Hence, we've taken our robot code, condensed it down, cleaned it up, and commented the code thoroughly so that everybody can read and understand our code, and the methodology behind it.

We serve the code in two ways:
ZIP Archive: A ZIP archive contained the entire codebase for this year.
Mercurial Repository: For those familiar with the Mercurial (also known as Hg, abbreviated) version control system, you can check out our code as well.

Download and some more info about the code release can be found here:
http://code.google.com/p/frcbot4067/wiki/FRCRobotCode

SpringDS
This is probably the more interesting jewel we have to offer!



SpringDS (acronym for Spring Driver Station) is an automatic network setup program that configures the network to work with FRC Robotics. It setups up the special static IP and subnet addresses to allow the computer to connect to the robot. After the driver station has been closed, it will reset the network settings back to normal to allow regular Internet connections.

If you didn't get what that meant - SpringDS basically automatically sets up your laptop/netbook so that you can connect to the robot, eliminating the time-consuming clicking and typing you have to do every time you want to communicate with your robot.

SpringDS can be used on the field and in the workshop! And as you've probably guessed, it sets up the network for both the FRC Driver Station and robot code uploading!

SpringDS is still in BETA, so there might be a few glitches that we haven't found yet. We're also working on a manual to distribute with SpringDS, although we think it's pretty straight forward to configure and use. Just play around with the provided programs and you'll figure it out. (If not, feel free to ask us a question or two, and we'll happily help you out!)

SpringDS is designed by rookies, for rookies - we wanted it to be easy for us to use, and for rookie teams as well! However, this program is also useful for other teams as well, since it takes away one less worry/hassle.

SpringDS, like the robot code, is also open source. Of course, we don't want you to have to install Python and all the little dependencies to use SpringDS, so we've packaged it in a installer and ZIP archive, both of which are standalone.

Enough talk, how about a download? (And more screenshots!)
http://code.google.com/p/frcbot4067/wiki/SpringDS

Well, that's it!
All of the code is licensed under the GPL, v3. Not a very interesting license to read, but it boils down to this: copy, redistribute, etc. the code, but whatever changes you make to it and whatever software uses it must be open source too. (We all share code anyway, right?) And of course, give credit where it's due!

If you have any questions, comments, or concerns regarding our robot code (did we make a mistake in commenting? etc.) or our SpringDS program (bug reports, etc.), please post them below!
__________________
Team #4067 - The Incredible Hawk
Role: Lead Programmer
Team Website

2012 Rookie Inspiration Award (Chesapeake Regional)

"You can't warm up by standing still in the frigid cold. Get moving!"

Last edited by alberth : 03-28-2012 at 09:39 PM.
  #2   Spotlight this post!  
Unread 03-28-2012, 11:24 AM
carrillo694's Avatar
carrillo694 carrillo694 is offline
Alex Carrillo
FRC #0694 (Stuypulse)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2009
Location: New York, NY
Posts: 66
carrillo694 is a jewel in the roughcarrillo694 is a jewel in the roughcarrillo694 is a jewel in the roughcarrillo694 is a jewel in the rough
Re: Team 4067 - Java Code Release + SpringDS

Nice network setup program! For a rookie team, your software team definitely has it together.

Just wanted to put out there our own solution to this, which we learned from this post by Folders of team 1671. We have modified the toRobot script so that you can specify your own IP address in case multiple computers are connected to the robot; see here.
  #3   Spotlight this post!  
Unread 03-28-2012, 09:16 PM
alberth alberth is offline
Programmer and Engineer
FRC #4067 (The Incredible Hawk)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2011
Location: Maryland
Posts: 9
alberth is an unknown quantity at this point
Re: Team 4067 - Java Code Release + SpringDS

Quote:
Originally Posted by carrillo694 View Post
Nice network setup program! For a rookie team, your software team definitely has it together.
Thanks!

Quote:
Originally Posted by carrillo694 View Post
Just wanted to put out there our own solution to this, which we learned from this post by Folders of team 1671. We have modified the toRobot script so that you can specify your own IP address in case multiple computers are connected to the robot; see here.
Hmm, interesting... we had originally looked at netsh, but felt that the tool would be unstable in that it may change its syntax one day, and that it was hard to make sure that it worked. Therefore, we decided to go overboard and use the Windows API with Python to accomplish the goal.

I think this probably summarizes what we did:
"If I had eight hours to chop down a tree, I'd spend six sharpening my axe." -Abraham Lincoln

Nevertheless, I thought it was a challenging and fun experience - it definitely exposed me to new worlds, especially WMI.

Have you tried it yet? We'd really like to know if it works for other people as well!
__________________
Team #4067 - The Incredible Hawk
Role: Lead Programmer
Team Website

2012 Rookie Inspiration Award (Chesapeake Regional)

"You can't warm up by standing still in the frigid cold. Get moving!"
  #4   Spotlight this post!  
Unread 03-31-2012, 12:29 AM
theNerd's Avatar
theNerd theNerd is offline
Registered User
FRC #3329 (Cam Bots)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2110
Location: St. Marys
Posts: 51
theNerd is an unknown quantity at this point
Re: Team 4067 - Java Code Release + SpringDS

I love the idea! I haven't downloaded it but I will try once I get the chance.
Also, try Github for your project management - its more public savvy than Google-code (in preference as always is).
Closed Thread


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 05:49 AM.

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