Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Rebuilt Scouting App 2026 FRC 167
Version: 1.0 Team: Iowa City Robotics Season: 2026 (Rebuilt)
An Android-based scouting application designed for offline data collection during FRC competitions. This app allows scouters to record match data, edit entries locally, and export data to a USB flash drive via JSON files.
Features
Match Scouting: Intuitive interface to track Auto, Teleop, and Endgame performance (Cycles, Defense, Climbing, etc.).
Data Persistence: Automatically saves all matches to internal storage to prevent data loss even if the app closes.
Data Editor: A text-based editor to view and modify previously saved match data to correct errors.
Smart Export:
One-Click Export: Automatically detects and exports only new (un-exported) matches to a USB drive.
Full Backup: If no new matches exist, prompts the user to perform a full re-export of the entire database.
Pit Scouting: (Planned) Interface for collecting static robot data (weight, drivetrain, etc.).
Project Structure
Backend (src/main/java/.../data/)
File Description
SetupScreen.java The main home screen. Handles scouter login, match selection, and the "Smart Export" logic.
GlobalVariables.java Holds the main dataList (ArrayList) in memory so all screens can access match data.
DataEntry.java The primary scouting interface. Records button presses and inputs during the match.
DataEditor.java Allows users to view and manually edit saved data fields using text boxes.
StorageManager.java Utility class for saving/loading JSON files to internal storage and writing exports to USB.
DataKeys.java Contains static constant strings (e.g., "auto_cycles") to ensure data tags are consistent.
Layouts (src/main/res/layout/)
setup_screen.xml: Home UI with name input, match list, and export button.
data_entry.xml: The match scouting interface (Counters, Checkboxes, etc.).
data_editor.xml: The text-based editor interface.
User Guide
1. Starting a Session
Open the app.
Enter your Name and the current Match Number.
Select your Assignment (e.g., Red 1) and Match Type (Qual, Practice, etc.).
Click "Go".
2. During the Match
Auto: Record starting position, movement, and climbing the tower.
Teleop: Track team strategy and notes.
Endgame: Record climb status.
Save: Click "Save & Exit" to write data to internal storage.
3. Exporting Data
Plug a USB-C Flash Drive (or adapter) into the device.
On the Setup Screen, click the "Export to USB" button.
If you have new data: The system file picker will open. Save the file.
If you have NO new data: A popup will ask if you want to re-export everything. If yes, save .
Once saved, the app marks those matches as "Exported" (indicated by the removal of the * in the match list).
4. Editing Data
Select a match from the dropdown list on the Setup Screen.
Click "Edit".
Modify the text fields as needed and click "Save".
Troubleshooting
"App crashes on startup":
Go to Phone Settings > Apps > RebuiltScoutingApp > Storage > Clear Storage/Data. Old/corrupt JSON files from previous versions can cause crashes.
"Export button does nothing":
Ensure you have a file manager app installed (like Files by Google).
Verify the USB drive is formatted correctly (FAT32 or exFAT).
Build Errors in Android Studio:
Go to Build > Clean Project, then Rebuild Project.
Go to File > Invalidate Caches / Restart.
Development Setup
IDE: Android Studio Otter (or newer)
Language: Java, XML
Min SDK: API 24 (Android 7.0 Nougat)
Target SDK: API 36.0 (Android 16)
Created by Ben, ZeeKonCal, and JamesA for Iowa City Robotics, 2026.