Game Management System: The Impatient User’s Guide

Tablet Setup.. 1

The "Cloud" model. 2

The "Local" model. 3

Logging in to the laptop.. 5

Laptop Configuration.. 6

Event selection.. 7

Off Season & FTC Events.. 7

Managing Users.. 9

Making a Pit Map.. 10

Match Schedules.. 12

SSL Certificate.. 13

Resetting a server.. 14

Backup Server.. 14

Next steps.. 15

Appendix: Setup suggestions for tablets.. 17



This ‘short’ guide describes how to get started with GMS and set up the tablets and PCs.  GMS can be operated in one of two models: the "Cloud" and the "Local" model.  The Cloud model is easy and is described in the next 2 sections.  The rest of the document describes the local model (lots to read).  Setting up a "Backup" server is described along with the Local model instructions.

Tablet Setup

Tablets are set up in the same way for both Cloud and Local models.

GMS can run on any Android device.  However, a screen size of 5" and above works best for inspections and queuing.  A few Amazon Kindle Fire devices are also supported.

To install or update GMS, use Google Play on your mobile device and search for “GMS FRC“.  Select the app that looks like a robot with the FIRST logo on its tummy.  To install GMS on a Fire, get it from the Amazon Appstore.

Start GMS, click on the Menu icon (3 vertically aligned dots), click Setup.  Aim the camera at the QR Code (if available) until it is scanned.  GMS does the rest.  Ta da...  If you are not using the QR Code, then you will have to manually configure the following items into each phone:

When a team or district buys a wad of tablets, they can be set up as suggested here.

If you want to demo ONLY the mobile app, then you can run the it in standalone demo mode. Set both the username and password to “demo”.  Select a role and the “Offline” button and click Login.

The "Cloud" model

The GMS server is in the Internet "cloud" and does not need to be set up by event volunteers.  It will be set up by GMS developers at a remote site.  Typically, volunteers will only deal with setting up and using the tablets.  The event site should have a usable WiFi network that can access the Internet.

The cloud model is described further at  Prior to the event, the following information should be sent to

The email response sent back will contain a QR Code that can be used to quickly configure all tablets.  A QR Code looks as follows.

Of course, the event manager should discuss all this with the GMS staff way before the event.  User training should be addressed. 

The "Local" model

The rest of this document describes setup for the Local model.  It seems like a lot of work, but almost everything is optional.  The Local model is more flexible and powerful than the Cloud model.  It is typically used in off-season matches.

Follow these instructions to set up a local Backup server.  A backup server is a Local server running in Backup mode.  It is a copy of the main server that can be used if the main server becomes inaccessible.

In the Local model, the GMS system comprises three components: the GMS server that runs locally on one (or more) laptops, the GMS app running on mobile devices, and a WiFi network. 

A WiFi network is needed for the other two components to communicate. It must be set up before logging in to GMS.  Most event venues have an available WiFi infrastructure.  If WiFi is not readily available, it can be set up as described in  Set up the WiFi first, before proceeding.  If you are just doing a demo, then use any available AP.  Connect the laptop to the WiFi network.  An Ethernet cable to the AP is preferred, but a WiFi connection will also work.


For a Windows laptop, download the latest GMS server from, download the Windows zip file (about 34 MB.)  An Ubuntu Linux version is also available.

Unzip the file and copy the GMS folder to your hard drive.  It contains the program file "GMS.exe".  This program is supported on Windows 10 through XP.  You can install the folder to a thumb drive for a demo, but note that thumb drives are slower.  You could make a short cut to GMS.exe on your desktop.  Note that GMS will not access any files outside that folder. 

You need the following OPTIONAL files only if you need the specified functionalities.  Download them by clicking on the hyperlinks.  Make a note of where you install each item.  You probably want only the Pit map editor.

  1. If you want to monitor Voice Messages, install VLC.  Unzip the following file and copy the folder “vlc-2.1.0”, preferably to your “C:Program Files (x86)/” folder. 

A version of VLC is at  Newer versions may be available at:

  1. If you want to print PDF reports, you will need to install Adobe Acrobat.

Acrobat is available from

  1. If new SSL certificates need to be generated, download and install the following:

·         Win32OpenSSL_Light-1_0_1e.exe  or get it from

·         Microsoft C++ 2008 redistributable: vcredist_x86.exe

·         jre-7u25-windows-i586.exe  for keytool (to create certificates for Android) or from

Add the installation directory ...\Java\jre7\bin\ to Windows PATH variable.

  1. If the laptop is to be used for Judging, then disk encryption functionality must be installed.

·         Download and install TrueCrypt Setup 7.1a.exe

<<TBD: Describe how to create encrypted drive in a file and copy GMS directory into drive>>


Logging in to the laptop

By default, GMS operates on FRC events.  To change this to FTC or FLL, open the gms folder and run 'configure'.  Select your series under the Application tab.

Open the ‘gms’ folder and start the GMS program.  Ignore the black window in the background.  Login as a LRI (user: lri, password: lri) or JA (user: ja, password: ja).

Select your event.  Hit "Back".  Login again.  (Sorry, I'll fix this eventually.)

After logging in, Windows Firewall may warn about “blocking some features”.  Please click “Allow access.”  You may still need to disable or re-configure your PC firewall to allow the mobile device to connect to GMS on Windows.

Alternatively, on Windows 7, configure Windows Firewall on laptop to permit incoming connections on TCP port 4433:

A few login IDs have been created for demos.  These IDs should be deleted and should not be used at a real event.  Note that the user IDs are all in lower case and passwords are the same as user IDs.



User ID



Any role



Laptop or Mobile

Lead Robot Inspector



Laptop or Mobile

Judge Advisor







Laptop or Mobile

Inspection Manager



Laptop or Mobile

Queue Manager




Match Observer




Robot Inspector



Laptop or Mobile

Pit Administrator




Game Announcer




FIRST Tech Advisor





GMS functions vary based on the user’s role.  The Judge Advisor functions are available only to Judge Advisors. 

Change the JA password by selecting View àUsers à double click on user ja (Addy Wiser).  Enter a new password into the password field and click Save.

Laptop Configuration

Continue by selecting: Tools à Configuration.

The configuration screen on the GMS program allows various options and customizations.  There are three tabs: System, Notification and Application.



In the System tab, select

In the Application tab, select the FIRST Series (FRC, FTC or FLL) and the Season year.

If you installed any of the tools for added functionalities, complete the configuration by telling GMS where you stuck the files:

1.    Path to Qt Designer, browse to the ...\site-packages\PyQt4\ directory, select the designer.exe file.  Qt Designer is needed to make pit maps. To test this setting, click on Save, then try making a Pit Map.

2.    Path to Audio Player, browse to the ...\VideoLAN\VLC\ directory, select the vlc.exe file.  VLC is needed to play audio messages in the Messaging status screen.

3.    Path to Acrobat Reader, browse to the ...\Reader\ directory, select the AcroRd32.exe file.  Acrobat is needed for printing reports.

4.    Path to BC Provider, browse to the ...\Java\jre7\bin\ directory, select the bcprov file and save.  This is needed for creating SSL certificates.

Having connected the laptop to your WiFi network, find the IP address of your computer shown at the top of the panel.  On the mobile device (Android), you will enter this IP address as the host server.  Alternatively, use the QR method as described in the SSL section.

Click Save.  The application may terminate if you changed certain settings.  If it does, restart it.

Event selection

An event must be selected in order to do anything useful.  Click on View à Events.  Click on column headers to sort by that column.  Click on an event row to select it. 

The event table is pre-populated with FRC events from the FIRST web site.  2013, 2014 and 2015 events are available.  It usually does not make much sense to Modify or Delete a FIRST defined FRC event, but sometimes the team list changes at the last minute.  See the next section for changing the list of participating teams.  Teams attending FRC Season events can be updated using Tools à Download Updates

Off Season & FTC Events

Create a new Off Season Event by clicking on View à Events à Add Event. 

Fill in the Event Type, Dates, Name and Location.  Ask the FTA if FMS is posting the Match Results to FIRST.  If so, get the Match Results URL and enter it.

Next, add the participating teams from the panel on the left to the panel on the right.  Click on the word 'Team' in the left header to sort the available teams.  Select the participating teams and click Add.  Double-clicking a team also works.  If the table on the right has incorrect teams, select them and click Remove.  You can select multiple teams by pressing the Shift or Control keys while selecting them with the mouse.  You can use the left or right mouse button.  The scroll wheel is useful to find a particular team.  Use the scroll bar on the right to make major moves.

Teams can be added to the event via a CSV or Excel file.  The file must contain a list of team numbers, one per line.  Select File à Import teams for event.  Each line contains a team number as the first field.  These teams should have already been defined to GMS.

If a team that is not registered with FIRST is participating, then ask the FTA to assign it a number for this event.  While it is possible to add unregistered teams to FMS, most FTAs like to simply use the number of a team that is not attending.  If the FTA assigned it a new number, then you must first add the team to GMS using View àTeams à Add Team.

New teams can also be added to GMS via CSV or Excel file.  Each line must contain the following 4 items: Team Number, Nickname, Sponsor (or school) and Location.  Select File à Import new teams.

Press Save to save the new Event.

Managing Users

GMS can be accessed only by users that have been registered.  Each user has to be assigned specific roles at each event.  Roles include: Lead Robot Inspector, Robot Inspector, Judge Advisor, Judge, Match Observer, Judge Assistant, etc.  Each user has to log in using their userID, their role and their secret password.  The Select User screen allows you to Add, Modify or Delete users.  Click Add or Modify.

In the Add/Modify User screen, click on the button next to the password field until the word Reset appears.  This allows the user to specify their own password.  Alternatively, a password can be specified for the user.

Entering availability information for the event helps with scheduling.  The user’s role can be changed as necessary.  The userID must be unique.  Team affiliations information enables warnings for possible conflicts of interest.  The specific events where the user has volunteered can be configured.

While deleting a Judge, a warning will be generated about the Judge’s assignments that will be affected.  Instead of deleting a user, it may be better to de-assign the person from an event.


Users can also be defined by importing a user list file.  To select an import file, click File à Import user list.  The file type can be a CSV, XLS or XLSX.  Each line should contain 4 columns: FirstName, LastName, userId, and role.  Use multiple lines to assign a user multiple roles, as in Alan Jones below.  Additional columns past the 4th are ignored and can contain comments.  For example,

First Name

Last Name

User Id





Robot Inspector












Match Observer




Pit Administrator


Attributes like Experience and Affiliated Teams are left blank when new users are added via file import. Their passwords are set to Reset, which allows users to conveniently select their own password.

The Role should be EXACTLY one of the following choices.

Making a Pit Map

A pit map can be easily constructed at any time before the event, or modified during the event.  Select Tools à “Make PitMap”.  An editor screen will pop up allowing you to place the team pits in the correct order.  There will be a button for each the participating team and the team numbers will be already filled in.  The editor can help you line up and space the teams nicely.  You can re-size the Practice Area if you wish, or delete the Inspections or Parts tables. 

The pit colors will change automatically later.  When you are done, save the file and exit the application.  That is all you need to do.  You can modify the layout later, if needed, by selecting “Make PitMap” again.  Click on “No” to avoid overwriting the previous pit map and “Yes” at the next question to edit it.

If the PitMap editor does not pop up, verify that the editor is installed and the path to the editor is configured correctly under Tools à Configure. 

If an event has more than 60 participating teams, then a slightly different button style is used.  If you want to change the size of the team buttons, select all the buttons by clicking on one corner of the screen and moving the mouse to the diagonally opposite corner.  Open the Property Editor screen by typing control-I (or click View à Property Editor).  Under geometry, change the values of Width and Height as necessary (change it from 50 to 40).  This will give you more room for aisles.

The figure above shows an initial pit map.  It shows each registered team but does not represent the actual layout.  The figure below is what you can have within 10 minutes.  View that pit map to verify that everything is in the right order.  Note that team buttons may be green, since queuing data may not be available.



You can display the really cool pit map by selecting View à Pit Map from the menu bar.  This is nice if you have multiple screens or an overhead projector.  It is useful while the JA is assigning teams for Judge interviews; try to minimize how far Judges have to walk between teams.  If you leave this panel up, the colors will change as the matches progress.


Team on field or queuing


Team queuing soon


Team reported in practice field


Team in pits

An error message will be displayed if any registered teams were deleted or any unregistered teams were added.  Click on Logout to make this display go away.

Match Schedules

Match Schedules must be available before Queue managers, Match Observers, FTAs and Game Announcers can log in.  GMS can get Match Schedules from two sources: directly from FIRST or from files exported from FMS.  The FIRST option requires having Internet access and works only for FIRST sponsored in-season events.  Match scores and team rankings are also retrieved.

To enable this data download, select: Tools à Configure à Match Schedule Monitor à On.  Note that match schedules are usually not available till a couple of hours before the start of the event, so it would be nice to wait till then before enabling this feature.

For off-season events, Match Schedules must be imported for Qualification and Elimination phases.  Further, an import is needed when the schedule is available for Elimination Semi Finals and Finals, though no one bothers with GMS during Elimination Finals.

Match Schedules must be exported from FMS in XLS format; PDF is not yet supported.  This file can be written to a USB drive and copied to the GMS laptop.  To import the file, click File à Import match schedule and browse to the file location.  The file can also be in CSV, XML or XMLX formats.

For demos, a fake match schedule can be constructed by clicking Tools à Make fake match schedule.  This creates a schedule for the current match phase.  Login as LRI to change the current phase.  Import this fake schedule for demos or testing using File à Import match schedule.  Tools à Erase match schedule does as it says.

SSL Certificate

This section is optional.  SSL is turned off by default.  The system is packaged with SSL certificates for the recommended IP addresses ( and  If you are using one of these addresses, the enable SSL in the Configuration screen and configure the mobile devices appropriately.

When the recommended addresses cannot be used, usually due to the venue's WiFi system, you need to create new certificates for the event.  It is best to use the following sequence:

  1. Set up the WiFi network and connect the laptop to it.  In the Configuration screen, verify that the Server IP address is in the WiFi network range.
  2. Enter the WiFi SSID and WEP2 password into the Configuration screen.
  3. Create a new key and certificate for the laptop's IP address.  Select Tools à  Make SSL keys.  Select a key size, 1024 bits is recommended.  If you see an error like: "keytool error: java.lang.ClassNotFoundException", then check the path configured for bcprov-jdk15on-146.jar.
  4. Turn on SSL in the configuration screen: Select Tools à Configuration à "Enable TLS/SSL Security" for this server. Select the desired TCP port; 4433 is just fine.  Click Save.
  5. The new certificate must now be distributed to all mobile devices and peers.  Display the new certificate by View  à  QR Setup File. 
  6. On the mobile device login screen, touch Menu (3 dots) à Setting à  Setup Device.  (If asked, install the ZXing Barcode Scanner application and select it.)  The QR Code scanner will start.  Point the device's camera at the QR diagram on the screen.  The device will read in the certificate.  Note that the IP Address and port information are now filled in on the device.

If the WiFi SSID was configured into GMS, the device will automatically connect.  Otherwise, connect the mobile device to the WiFi network before trying to log in.

The QR plot is useful for setting up mobile devices even if SSL is not being used.  The plot will configure the IP address, the port number and WiFi information.

The QR plot can be printed.  This avoids tying up the laptop screen.  Note that the plot contains somewhat sensitive information, so it should not be distributed widely. 

Select a smaller SSL key size if you have problems while scanning the QR code.  This can happen on devices with low resolution cameras or if you print the QR code on a low resolution printer.

  1. If a backup laptop is configured to periodically sync, then the certificate must be manually copied to that laptop.  In the GMS installation directory state/keys/, find the file whose name starts with the laptop's IP address and has a ".Cert.pem" extension.  Copy this file to the similar directory in the backup laptop.  Configure the backup laptop to sync with this laptop.

Resetting a server

It is always nice to test your setup before an event by connecting to it with a tablet and simulating a few operations.  Like, make a Pit Map, inspect a few teams, send and receive a few messages, etc.  After you are sufficiently satisfied that all is OK, then you will need to reset everything in preparation for the real event.  The simplest way to do this is to stop GMS, delete a few files and start it again.  Starting with the folder where GMS is installed, go into state \ year \ series \ eventName \ .  Delete files starting with:

Backup Server

A Backup server (aka slave) maintains a copy of the main server and is useful if the main server becomes inaccessible.  It is usually a laptop at the event site.  To install a Backup server, download and unzip the files as described in the section "Local Model".  It will be useful to install the Pit Map editor. 

To set up the slave:

  1. Unzip a fresh GMS into a folder, start GMS.
  2. Find and click on your event... (you could sort by any column by clicking on the column header)
  3. Click on the "Back" button
  4. Login with default username: lri, password: lri, role: Lead Robot Inspector
  5. Select: Tools -> Configure
  6. Set: This Server is a "Backup"
  7. In the Backup Server Settings section,

Set: Master Server's Port: (Not "This Server's port")

Set: Master Server's Address  (get this from the GMS Administrator)

  1. Click "Save"

The Backup server will download event data from the Master.  This may take several minutes if you are connecting to a Master in the middle of an event. The "Match Schedule Monitor" will not be active on a Backup server.  It will get match updates from the Master, as with the pit map, user list and the message groups.

The Backup server can be used by the Inspection Manager or the Pit Administrator.  It can also be used for the following:

Next steps

Most roles (Lead Robot Inspectors, Robot Inspectors, Inspection Managers, etc.) are now ready for the event.  Additional steps like, customizing Inspection Checklists and Award Rubrics, are described separately.

Judge Advisors need to perform several additional steps prior to the event:

  1. Select awards to be judged in each period and review their rubrics,
  2. Form groups of judges for each period,
  3. Assign teams to each judge group in each period,

Pit Administrators need to initialize their event at Google Drive.  Select: Tools à Publish Event.

Queue Managers should discuss assigning stations to various staff.


During the event, the LRI can use GMS PC to perform the following functions:

  1. Select desired Inspection state (Unbagged, Weighed, Safety Checked …)
  2. Form queues of teams for inspections,
  3. Assign and dispatch Robot Inspector to teams,
  4. Click on teams to change their state,
  5. Enter their weights,
  6. Update their Inspection Checklists,
  7. View notes on teams by Inspectors,
  8. View Match Observer comments on teams’ performance on the field.

Robot Inspectors can use the app on their mobile devices to:

  1. Locate teams and see their inspection status
  2. See relevant information about each team (see list for Judges above)
  3. Conduct inspection using the checklist
  4. Take pictures and video notes (these are shared with all other RIs)
  5. Change a team’s inspection state.
  6. View and refer to the current Robot Rules
  7. Communicate with each other using the Walkie Talkie

Judge Advisors use GMS to:

  1. Track each judge group’s progress as they interview teams,
  2. Select teams for re-interviews and assign them to judge groups
  3. Discuss team finalists for each award.

Pit Judges use the app on their mobile devices to:

  1. Locate teams that they must interview during the current period
  2. See relevant information about each team, like:
    1. Their award history, location, age, etc.
    2. Observer comments on their current performance at the event
    3. Their match schedule
  3. Use rubrics to interview and rate the teams
  4. Take pictures and video notes (these are kept private)
  5. Rank and compare teams for awards
  6. Communicate with each other using the Walkie Talkie


Appendix: Setup suggestions for tablets

The text that was previously here has been moved to Best Practices: Setting up Devices.


© Rajaram Pejaver, July 2014

FIRST®, the FIRST® logo, FRC® and Gracious Professionalism® are registered trademarks of the United States Foundation for Inspiration and Recognition of Science and Technology (FIRST®) Everything else is mine, unless it is already someone else's, in which case it is theirs, whosoever they are.