Game Management System for Teams
Do the following to get a quick demo of this Android app.
Besides scouting, GMS enhances a team's experience at robotics events. GMS allows a team to:
Scouting is simplified because all the team information and match schedules are automatically downloaded. Game specific Rubrics allow scouts to gather information quickly and precisely. Detailed information on participating teams are conveniently available.
GMS runs on most Android tablets and phones. It uses Android Beam (NFC) or Bluetooth to share data between devices, or a USB cable to share data with a Windows PC. It can work without WiFi in offline mode.
One way to use GMS would be to have a "Scout Leader" who would set up all devices and coordinate the team members who do the actual scouting. There is no limit to the number of scouts.
The Scout Leader would develop a strategy for scouting. It includes deciding what information needs to be collected, how it should be analyzed and prioritized, and how the analyzed data should influence alliance selection. GMS will help with these steps.
GMS comes with a default set of rubrics for Match Scouts and Pit Scouts. These rubrics help scouts collect the required information precisely. The Scout Leader can optionally customize the rubrics that are to be used. Customization requires a fair amount of thought and should be done prior to the event. The customization can be improved for subsequent events.
The Scout Leader would have a "Master" device (tablet or PC) used to merge information gathered by the scouts. It is also used to setup the devices used by scouts.
Though GMS is optimized for Android Beam, information gathered by scouts can also be merged in other ways. You could use Bluetooth or merge to a PC using a USB cable. Details are described in section Syncing.
The Scout leader would direct Pit scouts by assigning them teams to interview. Each scout would highlight the assigned teams on their tablets. The leader would also direct Match scouts to observe teams in matches. A simple way is to assign one scout to observe teams in position Red 1 in all events, another scout to observe position Red 2, etc. A scout may observe multiple teams per match.
During the event, scouts would periodically "Sync" their data with the Master device. This helps protect the data in case a tablet gets lost. GMS can also be configured to periodically save the collected data to a backup file.
Most importantly, the Scout Leader can analyze the merged data to help make alliance selection decisions. GMS can summarize data in useful ways. Data can also be uploaded to a PC and then exported to Excel. However, GMS is only a tool, not a genii or an oracle. You need to get familiar with it to hone your skills and perfect your strategy.
The following steps can be used to set up GMS for an event.
Select the event. Verify that the latest Qualifications schedules are downloaded. If schedules will not be available, create schedules as described in Setting Schedules. If a scout's device does not support Android Beam or Bluetooth, then repeat these steps for that device. The details are described in section Starting GMS.
There are two modes displayed on the login screen: Online and Offline.
For Online mode, Teams must select "Shared Server". ("Dedicated Server" is for Volunteers.) GMS will periodically fetch the latest event status from the Internet. The update frequency can be configured via Settings: Update Period. The downloaded information can include: current match number, scores & rankings, Pit Admin announcements, inspection status, match schedule changes, etc. If Internet access is lost in online mode, then an annoying error message will periodically pop up.
GMS can be used in Offline mode, where it will operate autonomously without WiFi communications. It will not try to update itself or communicate with external servers. This mode is useful when Internet access is not available. GMS continues to use the information obtained from the previous online login or merged data. It can be used to gather new data and sync the data with other devices using Beam or Bluetooth.
To login, select the Team role. Choose a user name and a password. Any name and password can be chosen, however the same credentials must be used to access the scouting data previously recorded by that user. The name and password are not sent anywhere. Each scout should ideally choose a unique name as it will identify their comments. While setting up GMS, the device must be able to access the Internet over WiFi. Select Online and Shared Server. Press the Login button.
On the first login, each user will be asked to select an event. This screen can be bypassed on subsequent logins. Each column can be sorted by touching the column header.
GMS may ask to enable NFC and Notifications. This enables scouting report merging using NFC.
When an event is selected, GMS downloads all available information, including match schedules, pit maps, and details of participating teams. While in Online mode, GMS will continue to periodically download updates, including match scores and rankings, team inspection states and Pit Administrator announcements. The Match Schedule and Pit Map may not be available until a few hours before the start of the Event.
A Test Event is available in the list of events. It has a sample schedule and pit map.
After GMS is set up, logout and log back in Offline mode. GMS will not use WiFi in this mode.
There are 2 types of scouting: Match scouting and Pit scouting. Match scouting allows multiple scouts to observe and report on teams' performances in matches. Pit scouting allows scouts to report on robot attributes based on interviews with the teams. All reports can be merged to the Master device (tablet or PC).
The Match scouting page displays the current match and the team alliances that will be competing. The alliances and schedules will be pre-configured by the procedure described in the Setup section.
Match scouts can review and edit comments on previous matches by clicking on the Previous or Next button. Touch the large button labeled "Start Observing" to start entering comments. This will display the data entry screen for 6 teams and the Match. Pages for other teams come into view when the screen is swiped sideways. Alternatively, long press on a team and select "Observe Team". This allows only one team to be observed. Long pressing the "Start Observing" button allows you to enter observations on the match.
Free form comments can be entered into the upper part of the team area. Text can be entered using the soft keyboard, Swype, or via voice transcription. A noise cancelling headset is recommended for voice transcription in the presence of rowdy spectators in the stands.
The Rubrics displayed can be scrolled vertically. Select the buttons that apply. Buttons can be unchecked by long-pressing them.
Match Scouts can view up to 4 teams simultaneously in Landscape mode. Select the number of teams by clicking: Settings: Display: Teams per page.
If a previously played match is being reviewed, comments made by other observers for that match will be displayed. These comments cannot be modified or deleted, but additional comments can be added as explanations.
The left most screen contains rubrics for the match itself. It can contain information like whether that match was replayed, or if the robots were waiting for a long time before the match started.
Exiting this screen automatically advances the current match number.
Pit scouting allows team members to gather information about a team and their robot. It uses a different set of customizable rubrics. Click on the Interview button on the team page to start the Pit Interview. Clicking on the Resume button displays only the unanswered rubrics.
Clicking on a team button displays the Team Page. This screen summarizes information about the selected team which may be useful while preparing to interview them. Additional award history is available by clicking on Details button. Private notes on each team can be entered and viewed on the Team Notes page. Click on the Match Notes button to see all available match comments made on a specific team.
Both Pit scouts and Match scouts can take notes on teams. Notes include pictures, videos, finger drawings and text. Notes can be merged or shared between team members if Android Beam (or Bluetooth) is used. You can also annotate pictures. Notes can be searched. It would be easy to find the team that had a note containing the word 'flamingo'.
A Pit map will be available if the event publishes it. The teams will be color coded to indicate whether the team is on the field (Red), queuing (Yellow), or if it is on the personal list (Orange). When the Match schedule is available, swiping the pit map horizontally changes the displayed match number and the teams that are being queued. Swiping to the right increases the match number and swiping to the left reduces it. Have fun. Try long pressing on a team.
Swiping the Pit map vertically displays the Team List. This list is color coded similarly. Try touching or long-pressing a team.
All data entered by scouts can be easily merged with the Master device. The Master device can be a tablet or a PC. Data from the scout device is sent to the Master device for merging. There are three ways for syncing.
Data is transferred from a sender to the receiver. Both devices must have Android NFC Beam capability. Both parties must be logged-in to GMS, and the GMS app must be in the foreground. At the end of the operation, the receiver will have merged data and notes from the sender.
All Beam operations follow the same sequence. There are two steps:
The Beam operation is useful in the following cases:
Scouts should be warned not to accept Beams from other teams that may have incompatible rubrics. This may corrupt the Master device.
As a safety feature, "Terse / Expert" mode should be enabled only on the Master device. Select Menu: Settings and check on Expert Mode. This skips importing rubrics and match schedules from the sender and prevents the Master device from getting corrupted by a potentially messed up scout. The scout devices should not have this setting enabled.
This function is similar to Syncing with Beam, but the steps are different. The sender and receiver must have Bluetooth capability. Both parties must be logged in into GMS and must click the "Share" icon to get to the Bluetooth Share screen. The receiver should first click on the Receive button and enable Bluetooth visibility. The sender should then click Transmit. After a few seconds, the available receivers will be displayed to the transmitter. The receiving device will display its name and address. Wait for the target receiver to appear and select it. Verify the MAC addresses. Both parties may now need to verify Bluetooth pairing. Lastly, the receiver must click a button to accept data from the transmitter. The "Terse / Expert" setting is used as in Beam.
The PC must have GMS installed for this function. Copy your pit and match rubrics into the event folder. Specifically, your Match rubrics should replace the file called moRubrics.txt and your pit rubrics should be in RIChecklist.txt.
Connect the device to the PC using a USB cable. You may need to install USB drivers for the device on the PC. You may also need to explicitly allow Android to open a USB connection.
On the GMS app on the PC, login using the id: team, password is team, role is Team. Select your event and click Back. Select File à Import from USB Device. You will need to browse to the Android device, into the com.pejaver.gms/ folder, and into the folder with the scout's name. Select the file called state.txt. Verify importing by clicking on a team number (Team column) or team nickname. You should see the Match comments and Pit checklist respectively.
If you do not see a directory with the scout's name or if you get an error, restart the scout's device and try again. Recent Android versions use the Media Transfer Protocol to transfer files over the USB cable. This screws things up severely while uploading data. You may need to power off and restart the Android device just before syncing to a PC. Also, unplug the USB cable and plug it back in. Restart the PC. Stand on one foot and hop 3 times. For me, it works eventually, just before I am ready to send the tablet to the next room through the wall.
GMS will try to sync the merged data back to the scout's device. It will fail if the Android version is newer and uses MTP. It may succeed for older devices that use honest USB. One way to Sync data to a tablet is to create a state.txt file via File à Export to Android, and copying that file to the tablet.
Scouts can gather a lot of data. After merging, the data is available on the Master device (tablet or a PC) for analysis.
The merged data is organized by teams. A team can be selected by touching the team number on the pit map or on other screens. This displays the Team page.
The screens here show a demo match with simulated data. Note that ‘moe’ and ‘molly’ on the screens are the names of two fictitious scouts. All comments are imaginary and do not relate to any team living or dead. The data on the screens scroll vertically and horizontally.
In Match Notes, all free form comments are collected at the top. Each comment is annotated with the match number and the comment writer.
Each rubric question is summarized below the comments. It lists the counts for each choice for that team. The line below shows the total counts for all teams.
When properly constructed, the checklist provide useful “quantitative” information. It can be used to answer questions like: “how effective was team XYZ in catching the ball?” It can provide an answer like:
In the 10 matches they played, team XYZ attempted to catch the ball in 8 and were successful in 6; In comparison, other teams in the field attempted to catch the ball 100 times and were successful 21 times.
This indicates that team XYZ has a 75% (6 out of 8) success rate with catching compared to the event average of 21%. The “10 matches” may not be relevant since they may not have had alliance partners capable of throwing a ball.
GMS can drill down even further and provide useful information. If asked the question: “which team was most effective in catching the ball?” touching a checklist summary on the tablet will display a list of all teams sorted by their effectiveness for that checklist question. Each column can be sorted in ascending or descending order by touching the column header.
Pit scouting information is summarized on the "Team List" page. Each team is listed as a row. There is a column for each Pit rubric. The column can be sorted by touching the column header.
Data is collected and merged, but cannot be analyzed on the GMS server. It must be exported to an Excel CSV file by selecting File à Export Match Observer and File à Export . Match and Pit data are exported into separate files. Sample CSV files are at http://gms.pejaver.com/setup/matchReport.csv and http://gms.pejaver.com/setup/pitReport.csv.
Analyzing these files is out of the scope of this note, i.e., your problem. Learn about Tableau for advanced analytics and visualizations.
Team notes cannot be exported to or viewed on a PC. Maybe in a later implementation.
Rubrics help scouts gather consistent data and record precise responses. They need to be worded appropriately to be effective. Scouts should also be trained to record data consistently. A trial run will help, and of course, rubrics can be fine tuned after each event. A rubric can have several Sections, and each section can have multiple lines. Each line can be an Instruction or a Question. There are two forms of Questions: a question can have Options for responses, or it can be a Counter.
Rubrics should not be changed during an event: if they are, all collected data may be lost.
The questions in the rubric can be left unanswered, or a response can be selected by checking a button. Long press on a button to clear it.
Examples of Option Questions are:
Balls Thrown? 1, 2, 3, 4, 5
Gracious Professionalism? Abominable, Passive, Admirable
Main Strategy? Defense, Passer, Shooter
Counters can replace options in a Question. Use the keyword $COUNTER. For example, the following can be displayed on a Match Scout's tablet:
Balls Thrown?
3
Blocked Opponent's shot?
12
Clicking on the arrows will increment or decrement the counter by 1. Examples of Counter Questions are:
Balls Thrown? $Counter =0 >0 <5
Blocked Opponent's shot? $Counter =0, <19, >0
Blocked Alliance's shot? $Counter =0, <5
In the "Balls Thrown" question, the value of the question will be between 0 and 5 depending on the number of times the arrow buttons are pressed. The starting value is 0, the minimum value is 0 and the max value is 5. Those who program will note that '>' really acts like '>=' and '<' acts like '<='.
The Rubric will have a value only if it is keyed. Long-pressing on a arrow button will reset the question.
The Survey Analysis pages will display the Total, Min, Max and Average values for Counters.
Each line in a rubric can be a Section title, Question or Instruction.
QuestionText? [ optionText1 [: value] [, optionText2 [: value] ... ] ]
QuestionText? $Counter [ =start ] [ <max ] [ >min ]
· start: 0 (initial value)
· max: 5
· min: 0
· factor : 1.0
The following fragment of checklist rubrics generate the screen shown below.
<<<Autonomous>>>
Initial Activity? Dead, Moved, Mobility Zone
Did it detect the Hot Goal? No, Yes
Did it score in Auto? Attempted, Low Goal, High Goal
Extra credit? Attempted, Low Goal, High Goal
<<<TeleOp Period>>>
General efficiency? 1, 2, 3, 4, 5
Main Strategy? Defensive, Passer, Shooter
There are two separate rubrics: one for Pit scouts and another for Match scouts. The default sets provided can be easily modified or customized for each team.
The Pit Rubrics are summarized in the Team List page as shown above. To save space, only the first word of the rubric question is used as the column header. Make the first word representative of the rubric. See the sample rubrics file pit_rubrics.txt for examples. Note that the first word of each rubric is unique and describes the rest of the rubric.
Lastly, there can be special section in the Match rubrics file. The rubrics listed after a header called "<<<Match>>>" are used as match rubrics. These collect data on each match, independent of teams and alliances. . This section must be last, following all other sections.
The customized rubrics must be installed on the Master Android device in 2 files. If it is not already there, create a directory called com.pejaver.gms on the Android. A simple way of creating this directory is to start GMS. The rubrics must be copied to the GMS directory on the Master Android device. Their contents will be automatically transferred to scout devices during setup using Beam or Bluetooth.
The files must be called match_rubrics.txt and pit_rubrics.txt. GMS will read these files only when logging in to an account. If you make changes to the files, you will have to logout and login again on the Master device.
Copy the customized rubric files into this directory. One way is to connect the device to a PC using a USB cable. If you don't see the directory from Windows, restart the Android device (not a GMS bug!) Connect the Master device to the PC using a USB cable. You may need to install USB drivers for the device on the PC. You may also need to press a button to allow Android to open a USB connection.
You can also create or edit the files directly on the Master tablet.
Repeat this procedure for Scout devices that do not have NFC Beam/Bluetooth, since the rubrics are not copied automatically to them.
The default rubrics for the 2016 Recycle Rush game are listed below. They can be downloaded from http://gms.pejaver.com/setup/match_rubrics.txt and http://gms.pejaver.com/setup/pit_rubrics.txt
<<<OUTERWORKS DEFENSE SETUP>>>
Category A? Portcullis, Cheval de Frise
A Position? 2, 3, 4, 5
Category B? Moat, Ramparts
B Position? 2, 3, 4, 5
Category C? Draw Bridge, Sally Port
C Position? 2, 3, 4, 5
Category D? Rock Wall, Rough Terrain
D Position? 2, 3, 4, 5
<<<AUTONOMOUS PERIOD>>>
Start Location? 1, 2, 3
Robot Movement? Reaches Defense, Crosses Defenses, Did Nothing
Defense Position? 1, 2, 3, 4, 5
Shot a Boulder? Scored Low, Scored High, Attempted, Did Nothing
Autonomous Points? 0, 5, 10
<<<TELE-OP PERIOD - Robot>>>
Which defenses could the robot traverse:
Defense A? Cheval de Frise, Portcullis, None
Defense B? Rampart, Moat, None
Defense C? Drawbridge, Sallyport, None
Defense D? Rock wall, Rough Terrain, None
Lowbar? Yes, No
Goal capabilities? Low, High, Both, None
Goal Accuracy? Poor, Fair, Good, Excellent
Match Ending? Challenge, Scale, None
Block opponents? Yes, No
Hold doors open? Yes, No
Does Robot Damage Defense? 1, 2, 3, 4, 5
How may defenses did robot damage? $COUNTER =0 >0 <10 *1
Steal Boulder? Yes, No
Boulder management? Herds, Shoots Low, Shoots High, Carries
Assists other bots damage defense? 1, 2, 3, 4, 5
<<<TELE-OP PERIOD - Alliance>>>
Ranking Points? $COUNTER =0 >0 <9 *1
How many fouls did this alliance cause? $COUNTER =0 >0 <21 *1
<<<OVERALL ASSESSMENT>>>
Failures? Tipped over, Died, Part fell off, Communication Error
Liabilities? Penalties, Disorganized, Got in the way
Driving speed? Poor, Fair, Good, Excellent
Driving agility? Poor, Fair, Good, Excellent
Human Player (write about specifics in comments i.e. how consistent were they, how far could they throw, etc.)? Poor, Fair, Good, Excellent
<<<Match>>>
Match replayed? Scoring issues, Field reset, Comms
Excessive starting delay?
High scores in match?
Rating? 1, 2, 3, 4, 5
<<<ROBOT TECH>>>
Wheel type? Track, Standard, Pneumatic, Mecanum, Omni, Swerve, Other
Boulder Manipulator? Forklift, Claw, Vacuum, Rollers
<<<GAME STRATEGY>>>
Autonomous Mode? No, Yes
Strategy? Defense, Offense, Both
Cross Defenses? No, Yes
Shoot Boulders Low? No, Yes
Shoot Boulders High? No, Yes
Challenge Tower? No, Yes
Scale Tower? No, Yes
Boulder Management? None, Shoots, Herds
<<<OVERALL ASSESSMENT>>>
Friendliness? Foes, Neutral, Friends
Helpful - Graceful Professionalism? Yes, No
In the ideal situation, match schedules are automatically downloaded for the selected event. However, there will be times (like in off-season events or during practice matches) when the schedule is not published online. The Scout Leader would need to manually enter the schedule. To do this, select Settings: Terse/Expert Mode. This enables the Schedule buttons in the home page. The Terse/Expert setting is meant to discourage scouts from messing with the schedule. You can also get to the Schedule page by long pressing on the title on the Team List page.
To insert an event after the current event, construct the alliances by selecting a driver station (Red 2, Blue 3, etc) before selecting a team. Press Confirm to save the selections.
After a schedule has been configured, it can be shared with all other scouts using Beam or Bluetooth. Devices without these capabilities lose out and need to be configured individually.
When logged in (online), the tablet displays Pit Administration announcements as shown below. Touching a message changes it from red to black indicating that you have already seen it.
Someone silly suggested starting section subjects similarly as S as a sick stunt.... so sue us.
(c) Raj, Dec 2014