Table of contents
Robot Scouter's laser focus on empowering teams to easily and efficiently scout has helped us realize that we can significantly improve the on-site scouting experience. The two core ideas behind Auto Scoutβ’ are minimizing friction between the lead scout and his/her scouters; and making the end-to-end scouting experience effortless.
Auto Scout provides a completely guided and self-managed scouting solution from getting devices setup all the way to the final export. Some key features include:
- Pre-loading and caching scouting templates and teams that will be attending a given event such that they are fully available offline
- Managing a set of "slave" devices from one "master" device
- Monitoring scouting activity
- Tracking scouting progress and stats for the # of teams scouted, etc.
- Display alerts about key information during scouting session
- Full offline data retrieval and automated exporting
The main UI for Auto Scout will be the second destination in home. It'll be like Google Photos or YouTube: there will be bottom navigation to switch between the main team list and Auto Scout.
In general, the UI is card-based and provides actionable information. Wherever possible, animations are used to enhance clarity.
Cards are the user's primary mode of interaction with Auto Scout. They should be tasteful and specific to a given action.
Cards are grouped in stages, each of which is applicable to a unique period of time in the build season. Each stage will have an intro card to help the user understand how the cards are tied together. To further enhance flow clarity, the stage name will become the toolbar title when Auto Scout is focused.
The order in which cards appear is determined by the order in which they are presented in this document. Card order is not user customizable.
Completing the final action of a card is marked with a "Done" button at the bottom. Should the card include nested navigation, it will be achieved through onboarding style panels with dots at the bottom to indicate flow progress. The button at the bottom will say "Next" instead of "Done." Swiping left returns to the previous state and swiping right only proceeds if inputs are valid.
Loading states should use Facebook style fake placeholder content whenever possible. Should that not be applicable, a centered indeterminate ProgressBar
will do.
Card and stage states will be saved across devices and should be real-time like everything else in Robot Scouter.
Completed cards will be can't be restored, but their actions may be found in settings.
Intro cards explain what Auto Scout is all about and teach the user how to progress through the different stages.
If the user ventured into Auto Scout and hasn't signed in yet, the first card should be this one with the following text:
Signing in lets you sync your team's scouting data across devices and enables Auto Scout.
Mock
This card explains the what and how of Auto Scout:
Auto Scout strives to be our vision of a perfect scouting system. It aims to guide you through the baby steps of initially setting up Robot Scouter all the way through that final data export before alliance selection.
You are currently in the intro stage. To move on to the next stage, mark every card as completed by pressing βDone.β Some cards are required and cannot be marked as done without first completing their action.
Try it with this one! Press βDone.β
Mock
Setup cards help prepare the user for the competition and can be completed early in the season.
Intro card:
Setup cards help you help usβyou'll be guided through device and account configuration.
This card will use The Blue Alliance API to gather a whole bunch of event info. There will be 3 steps:
- Get the user's team
- Get the events that team is going to
- Get all the teams going at each event
To get the user's team, we'll have to check for connectivity and verify that the downloaded team data is correct. We'll display an explanation:
Help Auto Scout tailor the experience to your team and the events you will be attending. To get started, enter your team number:
Once the team is verified, we'll display the team's events with their display name, type, and city. If none are found, we'll show a message saying No events found for ${team}, enter your event keys manually.
A link to TBA events will be provided. Even if the event fetch succeeds, we'll show the link and provide a text box to add events since TBA data may not be perfectly accurate. We'll also add trash icons to the right of each event like in the spinner metric editor.
Getting all the teams should be a piece of cake, it's just displaying progress that will be unpleasant. We should show a determinate linear ProgressBar
along with which team is being downloaded.
Offline and error icons. The offline error will say Your results will be ready once you're back online.
Mock
This card lists all the devices the user has registered (simply by signing in on said device) with the option to edit each device's name. In addition, it will have the following text under the list of devices:
To add a device, simply install Robot Scouter. If you aren't automatically signed in, be sure to use your [EMAIL OR PHONE] account.
Mock
This card will have a link to download the GSheets app if it isn't installed. Text:
Exported Excel spreadsheets can be easily imported into Google Sheets and uploaded to Google Drive via the Sheets app.
Mock
Checklist cards have tips and tooling to get the most out of Robot Scouter. As opposed to setup cards, checklist cards should be most relevant immediately before leaving for a competition.
Intro card:
Checklist cards ensure you're ready to do your best at competition. These should preferably be completed right before leaving home base while you still have a reliable internet connection.
This card ensures match and pit templates are assigned. If no template is assigned to a type, it will have a red X. Otherwise, a green check.
The template type will need to be stored with the template such that both the match and pit scout templates are shown in the card. The template editor will need to add an option to change the template type via a bottom sheet. This same bottom sheet will be available with a settings icon besides each item in the card. Setting a template to a type which already has one will unassign the pre-existing template.
Mock
This card ensures that everything is wrapped up. Completing the action on it indicates that this is the master device as explained with the following text:
By continuing on this device, you are indicating that you are the head scout and plan on monitoring scouting progress with it. This device will then become the "master," allowing you to manage "slave" devices throughout the competition. If that is not the case, please inform the head scout that they must finish setting up Auto Scout on their device and bring it to competition.
The "Prepare devices" button will hide the aforementioned text and show each device's status. Prep includes:
- Caching
- Teams (including media)
- Templates
- Shared settings, especially the template lock status
- Lock templates for "slave" devices
- Geofencing event locations to start Auto Scout in competition mode
- Ensuring Robot Scouter is up-to-date
If a device doesn't respond within 30 seconds, it will be marked as failed. Failed devices will include an info button to get details about the failure and troubleshooting steps. Until all devices pass inspection, this card cannot be marked as done.
Mock
TODO
Event cards primarily provide an overview of scouting status. They contain information and management tools to effectively coordinate active devices.
While cards' order shouldn't change dynamically, some information may be more relevant than other at different times. For example, the device status card becomes more relevant if it notices that a device lost comms or the battery is getting dangerously low. Therefore, cards may be reordered programmatically should an action or status become more important.
In a similar change, most cards won't have a primary action and therefore cannot be marked as done. The event stage should resemble a sci-fi dashboard (without the holograms π).
Intro card:
Event cards help you monitor scouting status throughout the competition. They provide information about your current progress and device management tools to help you get the most high quality data possible with your available devices.
TODO
- Pit scout tracker card, which teams have been scouted
- Pretty progress circle with percentage in center
- Offer to export pit data?
- Look into uploading it directly to Google Drive
- Person tracker to see if they're really scouting
- Add card with a bunch of TBA links: rankings, schedule, livestream
- Assign team to device
- Add card with upcoming match and the teams that will be scouted with options to change them
- Match #
- Teams competing in the match
- The team a given device should be scouting will be highlighted or otherwise marked to stand out from the crowd.
- Expected match starting time
- Card with current devices and their statuses and which teams are being scouted with options to send teams to be scouted
- # of connected devices
- Which teams they are scouting
- If the device is "active" i.e. a
ScoutActivity
is past its onStart
stage
- Battery level
- If we lose comms with a device, use a playful message like:
Man down! Lost comms with [DEVICE NAME].
- A card with a list of teams who still need pictures for the current year, ordered by who's going to be scouted first.
- A stats card with the number of teams scouted and a progress bar, maybe a bar graph of the most scouted teams, the number of scouts collected, man hours per device (person), and collective man hours. Also a button to export data.
- A way to automatically export data after every match that includes all the latest data from every team we're play against/with.
- A games card that lets scouters bet on what the alliance score will be with a leaderboard. See also #248.
- If templates are updated at competition, some way to sync them across devices
- Add a tips card
- Add simple ranking support to be able to swipe away teams as they go. Ideally two Robot Scouters could bump devices and get a ranking merge.
TODO
- Suggestion to export data at the end of the day without WiFi
- Share stats card with link to install Robot Scouter for word-of-mouth growth
- Look into supporting BPR
Endgame cards provide tools to help teams competing in eliminations.
TODO
- Some way to take notes about the teams competing in a match and send it to the driveteam.
TODO
- Send notification to link devices when geofenced into competition
- Hive mind icon with π or something?
- Add buttons to start pit or match scouting
- Tapping the notification starts a pit scout if the day is the same as the first day of competition and a match scout otherwise.
- Notification has field drawing and devices can be assigned to position on field
- It should have a picture of the field and which booth the team is at.
TODO
- Button to change current match
- A way to star teams and mark them as important
- Option to send custom text in notification
- Name the exports folder after the competition
- Also add a TBA formatted match number field for JSON exporting
- Support grouping/exporting the teams in chunks grouped by competition instead of having to delete them each time.
- Add ability to add teams to pick and plague lists
- Add ability to export spreadsheet for specific match
- Automatically queue all on-demand modules for download in the background if the device is a Master
- Look into the possibility of adding an local, realtime mesh DB. It'd be incredibly cool and powerful to have a live instance of the mesh's collective data.
- Share feedback card with feature and bug reporter links
- Some sort of schedule builder
Auto Scout will have its own dedicated section with options to:
Each item will go one level deeper and use the same infrastructure as the cards.