A Home Assistant integration for Stopfinder by Transfinder. This integration allows you to track school bus schedules, pickup/drop-off times, and bus information for your students.
- Next Pickup Time: Shows the next scheduled bus pickup time
- Next Drop-off Time: Shows the next scheduled drop-off time
- Bus Number: Displays the assigned bus number
- School Information: Shows the student's school and grade
Each student registered in your Stopfinder account gets their own set of sensors in Home Assistant.
- Open HACS in your Home Assistant instance
- Click on "Integrations"
- Click the three dots in the top right corner
- Select "Custom repositories"
- Add
https://github.com/dakahler/ha_stopfinderas a custom repository with category "Integration" - Click "Add"
- Search for "Stopfinder" and install it
- Restart Home Assistant
- Download the latest release from the GitHub repository
- Copy the
custom_components/stopfinderfolder to your Home Assistant'scustom_componentsdirectory - Restart Home Assistant
- Go to Settings → Devices & Services
- Click + Add Integration
- Search for "Stopfinder"
- Enter your credentials:
- Transfinder Base URL: Your school district's Transfinder URL (e.g.,
https://www.mytransfinder.com) - Email: Your Stopfinder account email
- Password: Your Stopfinder account password
- Transfinder Base URL: Your school district's Transfinder URL (e.g.,
For each student, the following sensors are created:
| Sensor | Description | Attributes |
|---|---|---|
| Next Pickup | Next scheduled pickup time | stop_name, bus_number, trip_name |
| Next Drop-off | Next scheduled drop-off time | stop_name, bus_number, trip_name |
| Bus Number | Current bus assignment | - |
| School | Student's school | grade |
automation:
- alias: "Bus Arriving Soon"
trigger:
- platform: template
value_template: >
{{ (as_timestamp(states('sensor.john_doe_next_pickup')) - as_timestamp(now())) < 600 }}
action:
- service: notify.mobile_app
data:
title: "Bus Alert"
message: >
Bus {{ state_attr('sensor.john_doe_next_pickup', 'bus_number') }}
arriving in less than 10 minutes at {{ state_attr('sensor.john_doe_next_pickup', 'stop_name') }}type: entities
title: School Bus Schedule
entities:
- entity: sensor.john_doe_next_pickup
name: Pickup Time
- entity: sensor.john_doe_next_dropoff
name: Drop-off Time
- entity: sensor.john_doe_bus_number
name: Bus
- entity: sensor.john_doe_school
name: School- Verify your Transfinder base URL is correct for your school district
- Ensure you can log in to the Stopfinder mobile app with your credentials
- Check that your school district uses Stopfinder
- The integration fetches schedules for the next 7 days
- If no trips are scheduled, sensors may show as unavailable
- School holidays or breaks may result in no scheduled trips
This integration is based on the API implementation from Stopfinder-Integrator by Voltage Solutions.
This project is licensed under the MIT License.