Field Control / Scoring Support Systems

As many of you know, FIRST has released a program called “FMS Light” that is available for free download. This is essentially a downsized version of the program that is used to run the main FRC events. A quick description:

This program allows the user to:
Control robots w/o use of individual WRT610N’s (only one is used)
Disable robots in the match
Pause match
Run audience display (the scorebar)
Play FIRST Sounds (start of match, 20 seconds left, end, etc)

This program does not (compared to FMS):
Generate schedule/print out reports
Store results/rankings
Pit display
Score controller interaction
Display Alliance selection/bracket screens
Team Displays*
E-Stop Buttons*
Team Lights*

*Planned to be implemented.

I’m putting this out there to A) encourage teams to check out and use FMS Light, which is a very useful piece of software, and B) tell you all that I am writing a “Helper Program” that will hopefully bridge the gap between FMS and FMS Light in that it will:

-Prompt you to input the correct teams into FMS Light
-Prompt you for the match results
-Store the match results on the computer
-Provide ranking lists for teams
-Generate an elimination schedule

Hopefully the Beta of this will be available soon - I plan to release it as an open-source project. An early version should be available in a few days. It is written in Java, so it will be safe and cross-platform-performing.

I will update this page with more information about the project as it becomes available.

Status:
5/15/09 - Project Started

-Paul Dennis

I always dislike downloading these kind of programs because it makes me want to be able to use them. For example I have a bunch of awesome tournament software, I want to have a video game tournament just to use it.

While I guess I don’t really have a use for it, I do wanna take a look at it and run it. Thanks for the information

Too bad it will not be ready for tomorrows Monty Madness :rolleyes:

But I will certainly give this a try for BRBR on June 6th

How do you take a live video Feed into the audience display?
would it require another program?

Typically it is just a secondary monitor running the program and most of the screen is “keyed” meaning it is a particular color which is is then made transparent by the AV equipment.

This is usually done using a video effects switcher. The proccess is called chromakeying. A particular color is set as the key, and the hardware replaces that color with the input of a second video channel.

Newtek’s Tricaster has this ability. :smiley:

Holy bananas, Batman, a whole month went by? And I thought it would be just a few days. Shows what kind of developer I am. Anyway, it really is coming soon now. This time I mean it. Honest.

I have finished what I am tentatively calling Version 0.1 of the project. It’s Version 0.1 because it is sorely lacking in A) testing B) documentation and C) is missing some features (as detailed below).

Anyway, right now I’m just trying to figure out how to post the thing, and also writing the readme. Hopefully it will be up “tomorrow” aka the 16th during the day. I will post again when I have it posted somewhere (yes, I could use post again a few more times in this paragraph, but it wouldn’t be pretty), but I would just like to preemptively say: the more people who use this (if it’s at all good/useful in the first place) the better, because I will discover the bugs faster, and more people will get more out of it. So if you think you might want to use it, please download it when it’s posted and try it out.

Thanks,
Paul

Finally it’s up! (Much rejoicing?) We’ll see where this goes.

Steps to get it:

  1. Go to www.team1719.org
  2. Click on “Library” (navigation bar)
  3. Click on FMSHelper to download it.
  4. Unzip it
  5. Read the readme file to find out what to do next.

If you’re actually downloading this I would really appreciate a heads-up just so I can know that people are using it - not required of course! You can either post here or e-mail me. My contact info is in the readme.

Suggestions/comments quite welcome!

-Paul

In-case anyone uses Chrome, your drop down menus don’t work.

Use this link: http://www.team1719.org/lib.html

Thanks for the headsup about Chrome - I knew that they were broken in Firefox, but hey, they work in Internet Explorer! (Lame!) The site is generally in somewhat poor repair (my fault, kind of).

Version 0.2 is out!

(Look at that, it took me a month to go from 0.0 to 0.1 but just three days to go from 0.1 to 0.2 - see what we can accomplish when we don’t slack off?)

(From the readme)

Added features:
-Increased documentation dramatically - every method should be documented
in the javadoc
-Bad situations are handled much better. Putting in an invalid filename
or an invalid number (e.g. “a”) will no longer crash the program - it’ll
just ask you for a valid one
-Constant values have been moved to a config.ini file, which will allow
these to be “dynamic” constants easily change-able by the user. More to
come with this later.
-Surrogate status should now be handled correctly rather than ignored

Planned for future versions:
-Much more testing: I hope to try/catch basically everything, so the
program in theory will never crash (even though it’s constantly backing
itself up anyway), and also just plain bugs need to be eliminated
-Better front-end/GUI: there might eventually be a real GUI for this
project; we’ll see. I do plan to still have it be a stand-alone run from
the command prompt if necessary though (so if the GUI fails you have the
command prompt)
-Better documentation: right now documentation maybe is not helpful.
I need feedback about the documentation; tell me whether it is
understandable or not.

Version 0.3 is out! (Cue thunderous applause)

Version 0.3: Added a whole lot of features and protection to the program.
Together with the changes from 0.2, should be very well protected from
crashing.
Release date: 6/23/09

Added features:
-Practice rounds (scoring optional) now supported
-Eliminations are coming along nicely, implemented for early rounds
-Documentation now includes support classes
-Disqualifications now supported
-New ImproperFileFormatException almost totally protects from bad file
input

Minor fixes:
-Surrogate status (implemented in Version 0.2) now actually works
-Filenames (except config.ini) are set in config.ini
-Filenames are standardized
-Super cells now actually worth 15 points (they were worth just 2)
-No longer crashes when a file being read is also open in Office
-Doubles do not exist in the project anymore; this should prevent math
errors

On the Horizon:

-GUI: we’ll see
-Support for 4 teams in match (possibly 8, though this may get tricky)
-Support for alternate elimination formats (need ideas on what these
might be
-Elimination matches
-Decide when to skip matches based on wins/losses
-Re-generate the schedule based on wins/losses
-Switching Outcome to ENUM
-More protection (assert-type statements & such)

The only alternate elimination format I can think of (or has been used in the history of FIRST) is double elimination. I found a link to a sample 8-team bracket here (PDF).

FIRST has used the highest Match Score after 2 matches to determine who goes on before. It was kind of silly, but done.

A few tournaments (Battlecry) use a single match Eighth-Final to determine the quarterfinalists.

Round Robin eliminations are in theory possible.

Version 0.4 is out: This time it’s Graphical!

The new version supports a Graphical User Interface. The features/tweaks are WAY too numerous to list, but the essential change is that it’s in graphical mode now. Quite a few features are still not working.

Features not working/not yet implemented with the GUI version:
-Elimination matches
-Practice matches
-Loading pre-existing results

If you find something that should be working but isn’t please please please let me know! The more feedback I have the better I can make this project.

Additionally, if you’re planning to/are interested in using this software for your off-season event, I would love to hear from you! (or by CD PM, or by replying here). You can reach me at <myusername>@gmail.com. Things I’d be interested in hearing include but are not limited to: features you’d like to see added, WHEN your event is so I know what your deadline is, and support requests for the software.

Notes on this version:

This is basically the “Version 0.1” of the GUI versions. It’s very unpolished and probably has a lot of bugs. In terms of reliability and features, Version 0.3 is actually better. However, moving towards a graphical interface will allow much better flexibility in terms of user input.

Sorry it actually is up now (I forgot to upload the file).

(www.team1719.org -> Library to get the file)