IP Library Granted Patent US 12,346,193
Granted Patent B2
US 12,346,193 · App. 18/519,312 · Granted Jul 1, 2025

Management of internet of things devices

Inventors: Sumedh Pramod Degaonkar (Sammamish, WA); Amit Mitkar (Manalapan, NJ)
Assignee: Commvault Systems, Inc.
G06F11/0736G06F11/0778G06F11/1461
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,346,193
App. No.
18/519,312
Granted
Jul 1, 2025
Kind
B2
Abstract

A method and system for communicating with IoT devices to gather information related to device failure or error(s) is disclosed. The system makes a copy of at least a portion of the device's non-volatile memory and/or receives IoT device data (e.g., sensor data and/or log files etc.) from an IoT device that recently failed. The system determines which log files and/or sensor data, for example, the IoT device created before and/or after a failure. After gathering this information, the system stores the information in a database, sends it to the IoT device manufacturer, for further analysis and diagnostics to troubleshoot the failure and send a fix or software update to the IoT device.

Claims (52)

1. A computer-implemented method to manage an Internet of Things (IoT) device, the computer-implemented method comprising:

according to a schedule indicated in an information management policy, establishing a connection with an IoT device,

wherein the information management policy is a collection of preferences or settings for performing data management operations on production data assigned to the information management policy,

wherein the information management policy is assigned to production data associated with the IoT device,

wherein the IoT device comprises nonvolatile memory;

generating a copy of, at least a portion of, the IoT device nonvolatile memory, wherein the copy is one of: a replica and a snapshot;

receiving IoT device data from the IoT device, and

wherein the IoT device data comprises operational data generated by the IoT device.

2. The computer-implemented method of claim 1 , wherein the IoT device data is one of:

log files, minidump files, processor memory dump data, register information, dynamically allocated memory data, hard disk images, state conditions, time stamps, data points, configuration files, message queues, API logs, supervisory control, and data acquisition data.

3. The computer-implemented method of claim 1 , further comprising:

determining that a triggering event has occurred,

wherein the triggering event, at least in part, relates to an error, a failure, or a malfunction of the IoT device.

4. The computer-implemented method of claim 3 , wherein the determining that the triggering event has occurred is based, at least in part, on polling received from an enhanced router or an IoT monitor.

5. The computer-implemented method of claim 3 , wherein:

the triggering event occurs when an operating condition of the IoT device is outside a range of a threshold conditions, and

the threshold conditions are associated with at least one:

current, voltage, temperature, and power.

6. The computer-implemented method of claim 3 , wherein the determining that the triggering event has occurred further comprises: receiving from the IoT device an alert of a possible malfunction.

7. The computer-implemented method of claim 3 , further comprising:

receiving a response comprising of instructions on how to fix the error, the failure, or the malfunction of the IoT device associated with the triggering event.

8. The computer-implemented method of claim 1 , wherein establishing a connection with an IoT device further comprises:

determining a communication protocol of the IoT device based on user input device information and a database query; and

communicating with the IoT device using the determined communication protocol.

9. The computer-implemented method of claim 1 , further comprising:

initiating a transmission of the IoT device data to one or more storage devices.

10. A computing system to manage an Internet of Things (IoT) device, the computing system configured to:

with one or more computer processors:

according to a schedule indicated in an information management policy, establish a connection with an IoT device,

wherein the information management policy is a collection of preferences or settings for performing data management operations on production data assigned to the information management policy,

wherein the information management policy is assigned to production data associated with the IoT device,

wherein the IoT device comprises nonvolatile memory;

generate a copy of, at least a portion of, the IoT device nonvolatile memory, wherein the copy is one of: a replica and a snapshot; and

receive IoT device data from the IoT device,

wherein the IoT device data comprises operational data generated by the IoT device.

11. The computing system of claim 10 , wherein the IoT device data is one of:

log files, minidump files, processor memory dump data, register information, dynamically allocated memory data, hard disk images, state conditions, time stamps, data points, configuration files, message queues, API logs, supervisory control, and data acquisition data.

12. The computing system of claim 10 , further configured to:

determine that a triggering event has occurred, wherein the triggering event, at least in part, relates to an error, a failure, or a malfunction of the IoT device.

13. The computing system of claim 12 , wherein the determining that the triggering event has occurred is based, at least in part, on polling received from an enhanced router or an IoT monitor.

14. The computing system of claim 12 , wherein:

the triggering event occurs when an operating condition of the IoT device is outside a range of a threshold conditions, and

the threshold conditions are associated with at least one:

current, voltage, temperature, and power.

15. The computing system of claim 12 , further configured to:

receive a response comprising of instructions on how to fix the error, the failure, or the malfunction of the IoT device associated with the triggering event.

16. The computing system of claim 10 , further configured to: receive from the IoT device an alert of a possible malfunction.

17. The computing system of claim 10 , further configured to:

initiate a transmission of the IoT device data to one or more storage devices.

18. The computing system of claim 10 , wherein establishing a connection with an IoT device further comprises:

determining a communication protocol of the IoT device based on user input device information and a database query; and

communicating with the IoT device using the determined communication protocol.

Assignments (2)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2023
From: DEGAONKAR, SUMEDH P.; MITKAR, AMIT
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 065728/0043 →
Continuity (6)
Continuation 17682733 · Feb 28, 2022
Continuation 16875854 · May 15, 2020
Continuation In Part 16732271 · Dec 31, 2019
Continuation 15915000 · Mar 7, 2018
Provisional Application 62479755 · Mar 31, 2017
Related Publication 20240086301A1 · Mar 14, 2024
References Cited (16)
US 7155514B1 · Milford · 2006 [cited by examiner]
US 9989942B2 · Glickfield · 2018 [cited by examiner]
US 10061663B2 · Vijayan et al. · 2018 [cited by applicant]
US 10228962B2 · Dornemann et al. · 2019 [cited by applicant]
US 10592357B2 · Vijayan et al. · 2020 [cited by applicant]
US 10887082B2 · Chamarajnager et al. · 2021 [cited by applicant]
US 11210183B2 · Navon · 2021 [cited by applicant]
US 11212129B1 · Sipcic et al. · 2021 [cited by applicant]
US 11294786B2 · Degaonkar et al. · 2022 [cited by applicant]
US 11314618B2 · Degaonkar et al. · 2022 [cited by applicant]
US 11704223B2 · Degaonkar · 2023 [cited by applicant]
US 11853191B2 · Degaonkar · 2023 [cited by examiner]
US 20050060607A1 · Kano · 2005 [cited by examiner]
US 20150205696A1 · Hanckel · 2015 [cited by examiner]
US 20200334125A1 · Degaonkar et al. · 2020 [cited by applicant]
US 20220206926A1 · Degaonkar et al. · 2022 [cited by applicant]