Method and devices for managing constrained devices
US-2018359621-A1 · Dec 13, 2018 · US
US10809995B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10809995-B2 |
| Application number | US-201916390242-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 22, 2019 |
| Priority date | Feb 19, 2016 |
| Publication date | Oct 20, 2020 |
| Grant date | Oct 20, 2020 |
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 networking computing device, the device comprising: a processor; memory; a transceiver implemented by the processor to: receive and transmit data from an application running on the device; and a controller implemented by the processor to: test the device to determine whether the device requires a configuration by reading an initialization data value maintained in the memory, wherein a determination of whether the device requires configuration includes a determination that the device is in an uninitialized state; perform communication with a server, via the transceiver, in response to a determination that the device requires configuration, to retrieve configuration data, the communication including a message with an identifier of the device; receive the configuration data, the configuration data including the application and a library, the library including a device driver to interface with a hardware component of the device; install the configuration data, by performing an installation including: addition of the library to an operational environment of the device; registration of the application with a message component of the device that enforces isolation of the application from architecture of the device, wherein to enforce isolation from the architecture of the device, the application cannot communicate with the architecture of the device outside the message component; and registration of the library with the message component of the device to permit the application to interact with the hardware component connected to the device via the message component using the library; and run the application to complete the configuration of the device. 2. The device of claim 1 , wherein the device includes a notification component, wherein the notification component is not accessible to the application, and wherein the notification component is configured to provide notifications to the server about a state of the device. 3. The device of claim 2 , wherein the state of the 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 device of claim 1 , wherein the configuration of the device includes wiping the application from the device and reinstalling the application, and wherein wiping the application includes rolling the device back to a certified state. 5. The device of claim 1 , wherein the configuration of the device includes installing an additional application on the device. 6. The device of claim 1 , comprising a carrier component configured to: receive the configuration from the server, the configuration specifying device components for upper-level carrier operation; and configure an operating environment of the device to conform to the configuration. 7. The device of claim 6 , wherein the carrier component is further configured to: receive an update from the server; and install the update. 8. The device of claim 1 , wherein the communication with the server includes a request for configuration information. 9. The device of claim 1 , wherein the communication with the server is sent over a licensed carrier band. 10. The device of claim 9 , wherein the licensed carrier band is an ultra-narrowband. 11. The device of claim 1 , wherein the transceiver is further configured to receive an additional application from the server, using the identifier. 12. A method for customizing a networking computing device, the method including: testing the device to determine whether the device requires a configuration by reading an initialization data value maintained in memory on the device, wherein a determination of whether the device requires configuration includes a determination that the device is in an uninitialized state; performing communication with a server, via a transceiver, in response to a determination that the device requires configuration, to retrieve configuration data, the communication including a message with an identifier of the device; receiving the configuration data, the configuration data including an application and a library, the library including a device driver to interface with a hardware component of the device; installing the configuration data, by performing an installation including: addition of the library to an operational environment of the device; registration of the application with a message component of the device that enforces isolation of the application from architecture of the device, wherein to enforce isolation from the architecture of the device, the application cannot communicate with the architecture of the device outside the message component; and registration of the library with the message component of the device to permit the application to interact with the hardware component connected to the device via the message component using the library; and running the application to complete the configuration of the device. 13. The method of claim 12 , further comprising: receiving the configuration from the server, the configuration specifying device components for upper-level carrier operation; and configuring an operating environment of the device to conform to the configuration. 14. The method of claim 12 , further comprising: receiving an update from the server; and installing the update. 15. The method of claim 12 , further comprising: providing notifications to the server about a state of the device. 16. The method of claim 15 , wherein the state of the 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. 17. The method of claim 12 , further comprising: receiving an additional application from the server, using the identifier. 18. The method of claim 12 , wherein the configuration of the device includes wiping the application from the device and reinstalling the application, and wherein wiping the application includes rolling the device back to a certified state. 19. At least one non-transitory machine-readable medium including instructions for a networking computing device, the instructions, when executed by when executed by a processor of the networking computing device, cause the processor to perform operations to: test the device to determine whether the device requires a configuration by reading an initialization data value maintained in memory, wherein a determination of whether the device requires configuration includes a determination that the device is in an uninitialized state; perform communication with a server, via a transceiver, in response to a determination that the device requires configuration, to retrieve configuration data, the communication including a message with an identifier of the device; receive the configuration data, the configuration data including an application and a library, the library including a device driver to interface with a hardware component of the device; install the configuration data, by performing an installation including: addition of the library to an operational environment of the device; registration of the application with a message component of the device that enforces isolation of the application from architecture of the device, wherein to enforce isolation from the architec
Updates (security arrangements therefor G06F21/57) · CPC title
in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title
Installation · 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
involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.