IP Library Granted Patent US 12,176,009
Granted Patent B2
US 12,176,009 · App. 18/091,004 · Granted Dec 24, 2024

Systems and methods for synchronizing workout equipment with video files

Inventor: Kade Cox (Logan, UT)
Assignee: iFIT Inc.
G11B27/10A63B71/0622A63B22/02A63B2225/20A63B2225/50
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,176,009
App. No.
18/091,004
Granted
Dec 24, 2024
Kind
B2
Abstract

A method for synchronizing exercise equipment with workout video files to reduce latency may include executing a workout video file to display a workout video on a display; retrieving a configuration change command and a configuration change criterion from the workout video file; generating a message comprising the configuration change command and the configuration change criterion; and transmitting, over a communications network, the message to the workout device. The workout device may aggregate the configuration change command and the configuration change criterion into a queue of one or more configuration change commands that is stored in a memory of the workout device; and change operation according to the configuration change command in response to determining the configuration change criterion is satisfied.

Claims (60)

1. A method for synchronizing a workout device with a workout video file to reduce latency, comprising:

executing, by a processor of a computing device, a workout video file to display a workout video on a display;

retrieving, by the processor, a configuration change command and a configuration change criterion from the workout video file;

generating, by the processor, a message comprising the configuration change command and the configuration change criterion; and

transmitting, by the processor over a communications network, the message to the workout device, the message causing the workout device to:

aggregate the configuration change command and the configuration change criterion into a queue of one or more configuration change commands that is stored in a memory of the workout device; and

change operation according to the configuration change command in response to determining the configuration change criterion is satisfied.

2. The method of claim 1 , further comprising:

establishing, by the processor, a connection with an external device; and

synchronizing, by the processor, an internal clock of the processor with an external clock stored in the external device.

3. The method of claim 2 , wherein retrieving the configuration change criterion comprises:

retrieving, by the processor, a configuration change timestamp from the workout video file; and

determining, by the processor, a global configuration change command timestamp based on a start time of the workout video file, the configuration change timestamp, and the internal clock,

wherein transmitting the message to the workout device comprises transmitting, by the processor, the message comprising the configuration change command and the global configuration change command timestamp to the workout device.

4. The method of claim 3 , wherein receipt of the configuration change command and the global configuration change command timestamp causes the workout device to change operation according to the configuration change command based on the global configuration change command timestamp.

5. The method of claim 3 , wherein the workout device:

receives an input indicating the workout video is paused;

determines a pause length in which the workout video remained paused;

determines a second global configuration change command timestamp by aggregating the pause length with the global configuration change command timestamp; and

replaces the global configuration change command timestamp with the second global configuration change command timestamp in the queue.

6. The method of claim 3 , further comprising:

receiving, by the processor, an input to pause the workout video;

determining, by the processor, a pause length in which the workout video remained paused;

determining, by the processor, a second global configuration change command timestamp by aggregating the pause length with the global configuration change command timestamp; and

transmitting, by the processor, a second message comprising the configuration change command and the second global configuration change command timestamp to the workout device, receipt of the second message causing the workout device to replace the global configuration change command timestamp with the second global configuration change command timestamp in the queue.

7. The method of claim 2 , wherein establishing the connection with the workout device over the communications network comprises establishing, by the processor, the connection with the workout device via a wireless communication interface.

8. The method of claim 1 , wherein retrieving the configuration change criterion comprises retrieving, by the processor, a configuration change distance from the workout video file, and

wherein transmitting the message to the workout device comprises transmitting, by the processor, the message comprising the configuration change command and the configuration change distance to the workout device.

9. The method of claim 1 , further comprising:

transmitting, by the processor, a reset command to the workout device, receipt of the reset command causing the workout device to remove each configuration change command from the queue.

10. The method of claim 9 , further comprising:

determining, by the processor, the workout device has changed operation for each configuration change command of the workout video file,

wherein transmitting the reset command to the workout device is performed in response to the determination.

11. The method of claim 1 , further comprising:

transmitting, by the processor, a second configuration change command and a second configuration change criterion to the workout device; and

receiving, by the processor, a message from the workout device indicating the workout device does not have enough memory to add the second configuration change command and the second configuration change criterion to the queue.

12. The method of claim 11 , further comprising:

determining, by the processor, a predetermined amount of time has passed since the processor received the message indicating the workout device does not have enough memory; and

in response to the determination, retransmitting, by the processor, the second configuration change command and the second configuration change criterion to the workout device.

13. The method of claim 12 , wherein receipt of the retransmitted second configuration change command the second configuration change criterion causes the workout device to add the second configuration change command and the second configuration change criterion to the queue in response to determining there is enough memory in the queue for the second configuration change command and the second configuration change criterion.

14. The method of claim 1 , further comprising:

transmitting, by the processor, a second message comprising a second configuration change command without a configuration change criterion to the workout device,

wherein the second message causes the workout device to change operation according to the second configuration change command immediately instead of adding the second configuration change command to the queue in response to the second message not including a configuration change criterion.

15. The method of claim 1 , wherein transmitting the message to the workout device is performed in response to determining, by the processor, the workout device is in a ready and waiting state.

16. The method of claim 1 , wherein transmitting the message to the workout device comprises transmitting, by the processor, the message to the workout device via an intermediary server.

17. The method of claim 16 , wherein transmitting the message to the workout device is performed in response to determining, by the processor, the workout device is in a ready and waiting state, and wherein determining the workout device is in the ready and waiting state comprises retrieving, by the processor, a current state of the workout device from the intermediary server.

18. A system for synchronizing a workout device with a workout video file to reduce latency, the system comprising a computing device comprising a processor, wherein the processor:

executes the workout video file to display a workout video on a display;

retrieves a configuration change command and a configuration change criterion from the workout video file;

generates a message comprising the configuration change command and the configuration change criterion; and

transmits, over a communications network, the message to the workout device, the message causing the workout device to:

aggregate the configuration change command and the configuration change criterion into a queue of one or more configuration change commands that is stored in memory of the workout device; and

change operation according to the configuration change command in response to determining the configuration change criterion is satisfied.

19. The system of claim 18 , wherein the processor further:

establishes a connection with an external device; and

synchronizes an internal clock of the processor with an external clock stored in the external device.

20. The system of claim 19 , wherein the processor retrieves the configuration change criterion by:

retrieving a configuration change timestamp from the workout video file; and

determining a global configuration change command timestamp based on a start time of the workout video file, the configuration change timestamp, and the internal clock,

wherein transmitting the message to the workout device comprises transmitting, by the processor, a message comprising the configuration change command and the global configuration change command timestamp to the workout device.

Assignments (14)
RELEASE OF SECURITY INTEREST Recorded Jun 25, 2025
From: ICON PREFERRED HOLDINGS, L.P.
To: IFIT INC.
Reel/Frame 071709/0273 →
RELEASE OF SECURITY INTEREST Recorded Jun 25, 2025
From: ICON PREFERRED HOLDINGS, L.P.
To: IFIT INC.
Reel/Frame 071705/0382 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY INTEREST (4TH LIEN) Recorded May 28, 2025
From: LC9 CONNECTED HOLDINGS, LP
To: IFIT INC.; ICON IP INC.
Reel/Frame 071429/0479 →
RELEASE OF SECURITY INTEREST Recorded May 27, 2025
From: LC9 CONNECTED HOLDINGS, LP
To: IFIT INC.; ICON IP INC.
Reel/Frame 071407/0001 →
RELEASE OF SECURITY INTEREST Recorded May 23, 2025
From: PLC AGENT LLC
To: IFIT INC.; ICON IP, INC.
Reel/Frame 071358/0584 →
SECURITY INTEREST Recorded May 13, 2025
From: IFIT, INC.
To: CERBERUS BUSINESS FINANCE AGENCY, LLC
Reel/Frame 071278/0707 →
CHANGE OF NAME Recorded Oct 14, 2024
From: ICON HEALTH & FITNESS, INC.
To: IFIT INC.
Reel/Frame 069175/0540 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2024
From: COX, KADE
To: IFIT INC.
Reel/Frame 068890/0081 →
SECURITY INTEREST Recorded Dec 20, 2023
From: IFIT INC.; ICON IP, INC.
To: LC9 CONNECTED HOLDINGS, LP
Reel/Frame 066094/0529 →
SECURITY INTEREST Recorded Apr 6, 2023
From: IFIT INC.
To: LC9 CONNECTED HOLDINGS, LP
Reel/Frame 063250/0746 →
SECURITY INTEREST Recorded Mar 16, 2023
From: IFIT INC.
To: ICON PREFERRED HOLDINGS, L.P.
Reel/Frame 063002/0468 →
SECURITY INTEREST Recorded Mar 16, 2023
From: IFIT INC.
To: ICON PREFERRED HOLDINGS, L.P.
Reel/Frame 063002/0407 →
SECURITY INTEREST Recorded Mar 14, 2023
From: IFIT INC.
To: PLC AGENT LLC
Reel/Frame 062978/0235 →
SECURITY INTEREST Recorded Mar 13, 2023
From: IFIT INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 062965/0281 →