Goal-driven provisioning in IoT systems
US-9800468-B2 · Oct 24, 2017 · US
US11269608B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11269608-B2 |
| Application number | US-202017068024-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 12, 2020 |
| Priority date | Feb 19, 2016 |
| Publication date | Mar 8, 2022 |
| Grant date | Mar 8, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
System and techniques for an internet-of-things device blank are described herein. An IoT blank device may be tested to determine whether it is in an initial state. In response to a determination that the IoT blank device is in the initial state, a cloud endpoint may be contacted, via a transceiver, to retrieve a package. Here, the contact includes a message with an identifier of the IoT blank device. The package may be received, the package including an application. The package may be installed. The installation including registering the application with a message queue of the IoT blank device. The application may also be run after installation. Data from the application running on the IoT blank device may be received via a message queue. The data may then be transmitted to the cloud endpoint via the transceiver of the IoT blank device.
Opening claim text (preview).
What is claimed is: 1. A networked computing device, the computing device comprising: at least one communications circuitry configured to receive and transmit data via a network; at least one memory configured to store instructions; and at least one processor circuitry, wherein the instructions, when executed by the processor circuitry, configure the processor circuitry to: evaluate a state of the computing device to determine whether the computing device requires configuration to perform a task with at least one hardware component of the computing device, based on a data value maintained in the at least one memory which indicates that the computing device is in an initial and uninitialized state; obtain configuration data received via the network, the configuration data including a software application and a library, and the library configured to enable the software application to interface with the at least one hardware component; perform installation of the configuration data within a software environment of the computing device, the installation including: registration of the software application within the software environment, wherein the software environment enforces isolation of the software application from an architecture of the computing device, wherein the architecture of the computing device includes the at least one hardware component, wherein the software environment is configured to manage communications with the software application such that to enforce isolation of the software application from the architecture of the computing device, the software application cannot directly communicate with the at least one hardware component outside the software environment; and registration of the library within the software environment, the registration of the library enabling the software application to perform communications with the at least one hardware component; and enable execution of the software application within the software environment, in response to successful installation of the configuration data. 2. The computing device of claim 1 , wherein the instructions further configure the processor circuitry to provide notifications about a state of the computing device to a service or network associated with the computing device. 3. The computing device of claim 2 , wherein the state of the computing device is at least one of: a hardware state, a kernel state, an operating system state, an application state, a management component state, a security circuitry state, a library state, a transceiver state, a certified state, or a server component state. 4. The computing device of claim 1 , wherein the configuration of the computing device includes wiping the software application from the computing device and reinstalling the software application, and wherein wiping the software application includes rolling the computing device back to a certified state. 5. The computing device of claim 1 , wherein the configuration of the computing device includes installing an additional software application on the computing device. 6. The computing device of claim 1 , wherein the configuration is obtained from a server of a network provider, wherein the configuration causes an operating environment of the computing device to conform to a network configuration associated with the network provider. 7. The computing device of claim 6 , wherein the configuration further causes the computing device to receive an update from the server of the network provider, and install the update. 8. The computing device of claim 7 , wherein communications with the server of the network provider are performed via a licensed carrier band of the network provider. 9. The computing device of claim 8 , wherein the licensed carrier band is one of: an ultra-narrowband carrier band, a low band carrier band, a high band carrier band, or a third generation partnership project long-term evolution (3GPP LTE) carrier band. 10. The computing device of claim 1 , wherein the instructions further configure the processor circuitry to cause transmission of a request for the configuration data, the request including an identifier of the computing device. 11. The computing device of claim 10 , wherein the instructions further configure the processor circuitry to obtain an additional software application, using the identifier of the computing device. 12. At least one non-transitory machine-readable medium including instructions for a networked computing device, the instructions, when executed by when executed by at least one processor of the networked computing device, cause the at least one processor to perform operations to: evaluate a state of the computing device to determine whether the computing device requires configuration to perform a task with at least one hardware component of the computing device, based on a data value maintained by the computing device which indicates that the computing device is in an initial and uninitialized state; obtain configuration data received via the network, the configuration data including a software application and a library, and the library configured to enable the software application to interface with the at least one hardware component; perform installation of the configuration data within a software environment of the computing device, the installation including: registration of the software application within the software environment, wherein the software environment enforces isolation of the software application from an architecture of the computing device, wherein the architecture of the computing device includes the at least one hardware component, wherein the software environment configured to manage communications with the software application such that to enforce isolation of the software application from the architecture of the computing device, the software application cannot directly communicate with the at least one hardware component outside the software environment; and registration of the library within the software environment, the registration of the library enabling the software application to perform communications with the at least one hardware component; and enable execution of the software application within the software environment, in response to successful installation of the configuration data. 13. The at least one machine-readable medium of claim 12 , wherein the instructions further configure the processor to provide notifications about a state of the computing device to a service or network associated with the computing device. 14. The at least one machine-readable medium of claim 13 , wherein the state of the computing device is at least one of: a hardware state, a kernel state, an operating system state, an application state, a management component state, a security circuitry state, a library state, a transceiver state, a certified state, or a server component state. 15. The at least one machine-readable medium of claim 12 , wherein the configuration of the computing device includes wiping the software application from the computing device and reinstalling the software application, and wherein wiping the software application includes rolling the computing device back to a certified state. 16. The at least one machine-readable medium of claim 12 , wherein the configuration of the computing device includes installing an additional software application on the computing device. 17. The at least one machine-readable medium of claim 12 , wherein the configuration is obtained from a server of a network provider, wherein the configuration causes an
involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title
specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks · CPC title
in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title
Updates (security arrangements therefor G06F21/57) · CPC title
Installation · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.