Skip to content

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.

About

A scouting app for the FRC 2026 Season Rebuilt

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages