Skip to main content

Watch a session with Replay Mode

Replay Mode lets you watch historical F1 sessions with full Home Assistant integration. When you play back a recorded race or qualifying from F1 TV or another service, your automations and dashboards can follow the session in a way that is much closer to a live broadcast.

Your lights can react to a red flag. Your dashboard can show live timing. Race Control messages can still drive notifications while you watch the session later. Likely on-track incident detection can also follow replayed sessions, so incident notifications and the On-track Incident binary sensors can behave like they do during live timing. If the replay includes Track Map data, incident events can include the same optional location summary used during live sessions.

Replay Mode is the normal historical playback feature

Use Replay Mode when you want to watch a completed session later. Do not switch the integration to Developer mode or provide a replay dump for this workflow.

Replay seek behavior

Replay Mode includes seek controls for catching up with your broadcast. Rewinding can replay historical events again, so replay-driven automations and notifications may run again by design.

Watching it later? Keep your dashboard spoiler-free

If you cannot watch a session live, turn on No Spoiler Mode before the session starts. Your dashboard stays frozen until you are ready. Then load the session in Replay Mode, press play when your broadcast begins, and follow the archived timing. Keep the switch on until you are ready to reveal current results.


  1. Select

    Choose a season, event and completed session.

  2. Load

    Download the available archived timing streams.

  3. Align

    Find the same session moment in your TV replay.

  4. Play

    Start playback, then pause or seek as needed.

What to expect​

Replay Mode downloads completed session data from Formula 1's public archive and plays it back through your Home Assistant entities. By starting playback at the same moment the session begins on your TV, your dashboard and automations can follow the broadcast closely.

You do not need a local replay dump, a developer build, or F1TV Auth. Replay Mode provides its own selectors, load controls, media player, pause, and seek support.

Standard entity IDs

This page uses the standard Replay Mode entity IDs for new installations, such as select.f1_replay_year and media_player.f1_replay_player.

If you upgraded from an older release and already have different registry IDs, keep using those existing entities. The integration does not rename installed entities automatically.


Using Replay Mode​

Step 1 - Select a session​

  1. Use select.f1_replay_year to choose the season
  2. Use select.f1_replay_session to pick a session from that year

The session list shows all completed sessions from the selected year, with the most recent first.

Data availability

Archive publication is controlled by Formula 1. A completed session may not be available immediately; refresh the session list later if it is missing.

Step 2 - Choose the start reference​

Use select.f1_replay_start_reference to choose where playback begins:

  • Formation start (race/sprint) - Playback starts from the formation lap. This is the default and recommended for races and sprints, since you can focus on watching the start rather than pressing a button at lights out.
  • Session live - Playback starts from lights out (races) or pit exit open (practice/qualifying). This is the most precise option but requires you to press play at the exact moment.
info

The formation start option only applies to race and sprint sessions. For practice and qualifying, playback always starts from when the session went live.

Formation lap timing

The formation lap start point is estimated. If the archive does not provide a usable earlier formation marker, playback starts at the session-live reference instead. Compare the loaded start with your recording and adjust playback if needed.

Step 3 - Load the session​

Press button.f1_replay_load to download the session data.

The sensor.f1_replay_status shows download progress. Session data is cached locally, so loading the same session again is faster.

Step 4 - Sync with your broadcast​

Start the session on your TV or streaming service. When you see the session begin, press button.f1_replay_play or use media_player.f1_replay_player at that exact moment.

For races and sprints (with formation start reference): Press play when the formation lap begins.

For races and sprints with Session live: press play at lights out.

For practice and qualifying: press play when the session goes live at pit exit opening.

From this point, the replayed live sensors follow what you see on screen.

Step 5 - Control playback​

If you pause your TV, pause the replay to stay in sync. When you resume, resume the replay.

  • Pause - Press button.f1_replay_pause or pause media_player.f1_replay_player
  • Resume - Press button.f1_replay_play or play media_player.f1_replay_player
  • Seek with the playbar - Drag the playbar in the F1 Replay Control card and release it at the target position
  • Back 30 seconds - Press button.f1_replay_back_30 to move replay back 30 seconds
  • Forward 30 seconds - Press button.f1_replay_forward_30 to move replay forward 30 seconds
  • Stop - Press button.f1_replay_stop to end playback and return to idle

Replay Seek Controls​

Replay events can run again

Seeking backward can replay historical state changes again. Automations, notifications, and incident alerts that react to replayed events may run again when those events are replayed.

The replay seek controls help you line up Home Assistant with the F1 broadcast you are watching. You can use the draggable playbar for larger adjustments, or the 30-second buttons for small catch-up steps.

Dragging the playbar​

The F1 Replay Control card shows a draggable playbar when media_player.f1_replay_player supports seek. Drag the handle to preview the target position, then release it to seek.

The card sends the seek command only when you release the handle. It does not send a service call for every drag movement, so the dashboard stays responsive while you choose the target point.

During a seek, the replay status may briefly show seeking. Longer jumps, especially with Track Map data available, can take a little longer while Replay Mode restores the correct session state.

How the 30-second buttons work​

The Back 30 seconds and Forward 30 seconds buttons are still useful for small adjustments when your TV or streaming replay is slightly ahead or behind Home Assistant.

When you press Forward 30 seconds, Replay Mode does not simply skip to a new position and ignore what happened in between. It applies the events inside that 30-second window first, then continues from the new position.

That means important state changes still land correctly. If a red flag, Race Control update, session clock change, or other tracked event happens inside those 30 seconds, the related entities still end up in the right state after the jump.

When you press Back 30 seconds, Replay Mode restores replay state for the new position and then continues from there.

What to expect​

  • The playbar is available in the F1 Replay Control card when the replay media player supports seek
  • The playbar sends media_player.media_seek only after you release the slider
  • The 30-second buttons remain available for quick manual adjustments
  • The feature is intended to make manual catch-up simpler, not to guarantee perfect sync with every broadcaster
  • Rewinding can replay the same historical event again, which means automations and notifications may trigger again by design

Best way to use it​

If your TV or streaming replay is slightly out of sync, pause Replay Mode and use the playbar or 30-second buttons until the on-screen action matches your Home Assistant entities again. A practical reference point is the session clock, track status, or the latest Race Control message.

info

Seek controls are designed to preserve the visible replay state after the jump. If a session has a large amount of Track Map data, you may still see a short seeking period before playback resumes.


Replay improvements​

Loading and seeking restore the session's accumulated timing state. Large jumps can still briefly show seeking; wait for that operation to finish before sending another command. Cached session data is bounded and older cached downloads can be removed automatically, so a previously watched session may need downloading again.

The selectors, playback buttons and media player remain the controls for Replay Mode. You do not need to recreate them after updating. Rewinding can still emit the same historical events again, so keep the notification behavior described above in mind.

A loaded replay also supplies selected-lap comparisons in Weekend Hub Telemetry. Browsing Results Archive is a separate operation: it displays classifications and does not load or start a replay.

Replay Mode vs Developer mode​

Replay Mode and Developer mode both send recorded timing data through live entities, but they solve different problems.

ChooseWhen you should use it
Replay ModeYou want to watch a completed F1 session and keep Home Assistant synchronized with the broadcast
Developer modeYou are developing or testing F1 Sensor and need to reproduce a known sequence from a local replay dump
BehaviorReplay ModeDeveloper mode
Data sourceFormula 1's completed session archiveLocal replay dump file
Normal audienceHome Assistant usersMaintainers and contributors
Session selectionYear and session selectorsFile path configured before integration reload
Playback startManual Load and Play controlsStarts automatically when the integration loads
Pause and seekSupportedNot supported for the local dump
Typical goalFollow a TV or streaming replayReproduce bugs and run repeatable tests
AvailabilityNormal releasesOnly builds with the developer interface enabled
Simple decision

Watching a race, sprint, qualifying, or practice session later? Use Replay Mode.

Testing the integration with a dump supplied or captured for development? Use Developer Mode with Replay Dumps.


Replay Mode vs live F1TV Auth​

Replay Mode is separate from live F1TV Auth. Public live timing works without a token, optional F1TV Auth can unlock extra live features during a real live session, and Replay Mode can use archived data after the session has completed.

This means Replay Mode can sometimes show data that public live timing did not show during the live session. For example, Pit Stops, Team Radio, Championship Prediction, Track Map, and incident location context can work in replay when the archive contains the needed data.

What Replay Mode can replay​

DataReplay behavior
Public live timingSession status, track status, Race Control, weather, driver timing, tyres, and top three can replay when available in the archive
Pit StopsWorks when the replay archive contains pit stop data
Team RadioWorks when the replay archive contains team radio clips
Championship PredictionWorks when the replay archive contains prediction data
Formation StartWorks for race and sprint sessions when the replay data supports it
Track MapBest effort when the replay archive contains car position data
Incident DetectionWorks from replayed public timing and can use replay Track Map location context when available

Replay Track Map is best effort. If the loaded session does not contain usable car position data, the Track Map card waits instead of showing misleading car positions.


Entities​

Replay Mode adds several control entities to Home Assistant.

Configuration entities​

EntityPurpose
select.f1_replay_yearSelect the season year
select.f1_replay_sessionSelect which session to replay
select.f1_replay_start_referenceChoose where playback starts
button.f1_replay_loadDownload and prepare the selected session
button.f1_replay_playStart or resume playback
button.f1_replay_pausePause playback
button.f1_replay_stopStop playback and return to idle
button.f1_replay_back_30Move replay back 30 seconds
button.f1_replay_forward_30Move replay forward 30 seconds
button.f1_replay_refreshRefresh the session list

Media player​

EntityPurpose
media_player.f1_replay_playerStandard media player with play, pause, stop, seek, and position tracking

The media player entity lets you control replay using any media player integration or remote control. It supports normal media seek actions, reports current position, duration, and playback state, and makes it easy to integrate replay with other media players in your setup.

Status sensor​

EntityPurpose
sensor.f1_replay_statusShows current replay state and progress

Dashboard card​

Add the Replay module to the F1 Sensor card. It combines the Replay Mode selectors, load/play/pause/stop controls, drag-to-seek playbar, 30-second seek buttons, refresh button and progress display in one module. Add Replay telemetry when you also want to compare recorded driver laps.


Media Player Entity​

Use media_player.f1_replay_player for standard play, pause, stop and seek. The Replay control reference lists its states and attributes.

Replay Status Sensor​

sensor.f1_replay_status reports loading, ready, playing, paused and seeking. See status fields and progress when building your own dashboard.

Example: Sync with Apple TV​

This example follows play/pause changes; it does not match the playback position automatically. First load the F1 session and align it manually. The Replay Sync blueprint provides the same basic workflow without writing YAML.

automation:
- alias: "Pause F1 replay when Apple TV pauses"
trigger:
- platform: state
entity_id: media_player.apple_tv
to: "paused"
condition:
- condition: state
entity_id: media_player.f1_replay_player
state: "playing"
action:
- service: media_player.media_pause
target:
entity_id: media_player.f1_replay_player

- alias: "Resume F1 replay when Apple TV plays"
trigger:
- platform: state
entity_id: media_player.apple_tv
to: "playing"
condition:
- condition: state
entity_id: media_player.f1_replay_player
state: "paused"
action:
- service: media_player.media_play
target:
entity_id: media_player.f1_replay_player

Replace media_player.apple_tv with your actual media player entity. This works with any media player that reports play and pause states.


Additional entities in Replay Mode​

Replay Mode sends supported archived timing through the integration’s live entities. This can include data that public live timing does not provide. Enabled entities can update when the archive contains the required data, and some can also update live with optional F1TV Auth.

EntityDescription
sensor.f1_pitstopsPit stop events and timing per car
sensor.f1_championship_prediction_driversPredicted Drivers Championship standings
sensor.f1_championship_prediction_teamsPredicted Constructors Championship standings
binary_sensor.f1_formation_startFormation start detection for race and sprint sessions

Enabled entities can remain registered before playback starts. Outside Replay Mode, availability depends on the live session, optional F1TV Auth and the published data. See the availability matrix.

The F1 Track Map card is not a normal entity. It can show replay car positions when the replay archive contains the needed position data.

For full details on each entity, see the Live Data reference.


Limitations​

  • While replay is active, the integration does not receive live data. Stop the replay to return to live mode.
  • Replay does not replace every entity with historical data. In particular, Starting Grid keeps the current or upcoming weekend context instead of being overwritten by an older replay.
  • The live delay calibration feature is disabled during replay.
  • Long seeks can briefly show the replay state as seeking while the integration restores the correct session state.
  • Rewinding can replay historical events again, so replay-driven automations and notifications may run again.
  • Rewinding can also replay historical incident events again, including possible on-track incident notifications.
  • Replayed Track Map location context is best-effort and may be missing for sessions without usable car position data.
  • Replay Mode does not protect you from spoilers on its own. Use No Spoiler Mode to keep your dashboard frozen until you are ready to watch.