METHODS, SYSTEMS, AND DEVICES FOR EFFICIENT REUSE OF INTERNET OF THINGS (IOT) DEVICES DEPLOYED IN TEMPORARY APPLICATIONS
20210075680 ยท 2021-03-11
Inventors
- Brendan Younger (Greensboro, NC, US)
- Matt Hannam (Brown Summit, NC, US)
- Paul Cameron (Oak Ridge, NC, US)
Cpc classification
H04L2463/101
ELECTRICITY
G06K7/10297
PHYSICS
Y02D30/70
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G06F21/10
PHYSICS
H04L63/108
ELECTRICITY
H04L41/0853
ELECTRICITY
International classification
G06F21/10
PHYSICS
G06K7/10
PHYSICS
G06K7/14
PHYSICS
Abstract
Disclosed herein are methods, systems, and devices for solving the problem of efficient reuse of internet-of-things (IoT) devices deployed in temporary applications. According to one embodiment, a method is implemented on a computing device. The method includes receiving, over a wide area network (WAN) from a mobile device, a device identification (ID) associated with an IoT device. The method further includes determining first digital rights management (DRM) privileges for the IoT device based on the device ID. The first DRM privileges are associated with a first entity and a first timestamp. The method further includes receiving, over the WAN from the mobile device, a first request to provide second DRM privileges for the IoT device. The second DRM privileges are associated with a second entity and a second timestamp. The method further includes granting the second DRM privileges based at least partially on a permission from the first entity.
Claims
1. A method implemented on at least one computing device; the method comprising: receiving, over a wide area network (WAN) from a mobile device, a device identification (ID) associated with an Internet-of-Things (IoT) device; determining first digital rights management (DRM) privileges for the IoT device based on the device ID, wherein the first DRM privileges are associated with a first entity and a first timestamp; receiving, over the WAN from the mobile device, a first request to provide second DRM privileges for the IoT device, wherein the second DRM privileges are associated with a second entity and a second timestamp; and granting the second DRM privileges based at least partially on a permission from the first entity.
2. The method of claim 1, wherein: the IoT device is a global positioning system (GPS) tracking device; the first DRM privileges include read access limited to first location data recorded by the IoT device between the first timestamp and the second timestamp; and the second DRM privileges include read access limited to second location data recorded by the IoT device after the second timestamp.
3. The method of claim 2, wherein: the first DRM privileges further include read access limited to first environmental data recorded by the IoT device between the first timestamp and the second timestamp; and the second DRM privileges include read access limited to second environmental data recorded by the IoT device after the second timestamp.
4. The method of claim 2, wherein: the first DRM privileges further include read access limited to first dynamic position data recorded by the IoT device between the first timestamp and the second timestamp; and the second DRM privileges include read access limited to second dynamic position data recorded by the IoT device after the second timestamp.
5. The method of claim 2, wherein: the first DRM privileges further include read access limited to first device health data recorded by the IoT device between the first timestamp and the second timestamp; and the second DRM privileges include read access limited to second device health data recorded by the IoT device after the second timestamp.
6. The method of claim 5, wherein the first device health data includes a first battery status and the second device health data includes a second battery status.
7. The method of claim 1, wherein the second entity is a business entity.
8. The method of claim 1, wherein the second entity is a user associated with the mobile device.
9. The method of claim 1 further comprising transmitting to a first backend server a first entity unique ID and the second timestamp, wherein the first backend server is configured for customer billing management.
10. The method of claim 9 further comprising: receiving WAN usage information associated with the IoT device between the first timestamp and the second timestamp; and transmitting to the first backend server the WAN usage information.
11. The method of claim 1, wherein the computing device is at least one server.
12. The method of claim 1, wherein the computing device is hosted in a cloud computing environment.
13. The method of claim 1, wherein the mobile device is at least one of a smart phone, a smart watch, a tablet, or a laptop.
14. The method of claim 1, wherein: the IoT device comprises a machine readable code; and the mobile device is configured to determine the device ID based on the machine readable code.
15. The method of claim 1 further comprising: adjusting a first entity device credits value based on the second timestamp, wherein the first entity device credits value was previously adjusted based on the first timestamp; and transmitting to a first backend server a first entity unique ID and the first entity device credits value, wherein the first backend server is configured for customer billing management.
16. The method of claim 1, wherein the permission is granted from another mobile device associated with the first entity.
17. The method of claim 16 further comprising receiving over the WAN the permission from the another mobile device, wherein the permission includes the device ID.
18. The method of claim 17 further comprising transmitting, over the WAN, a second request to the another mobile device to grant the permission, wherein the second request includes the device ID.
19. A computing device comprising: a memory; and at least one processor configured for: receiving, over a wide area network (WAN) from a mobile device, a device identification (ID) associated with an Internet-of-Things (IoT) device; determining first digital rights management (DRM) privileges for the IoT device based on the device ID, wherein the first DRM privileges are associated with a first entity and a first timestamp; receiving, over the WAN from the mobile device, a first request to provide second DRM privileges for the IoT device, wherein the second DRM privileges are associated with a second entity and a second timestamp; and granting the second DRM privileges based at least partially on a permission from the first entity.
20. A non-transitory computer-readable storage medium, the non-transitory computer-readable storage medium storing instructions to be implemented on at least one computing device including at least one processor, the instructions when executed by the at least one processor cause the at least one computing device to perform a method of: receiving, over a wide area network (WAN) from a mobile device, a device identification (ID) associated with an Internet-of-Things (IoT) device; determining first digital rights management (DRM) privileges for the IoT device based on the device ID, wherein the first DRM privileges are associated with a first entity and a first timestamp; receiving, over the WAN from the mobile device, a first request to provide second DRM privileges for the IoT device, wherein the second DRM privileges are associated with a second entity and a second timestamp; and granting the second DRM privileges based at least partially on a permission from the first entity.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0030] The present embodiments are illustrated by way of example and are not intended to be limited by the figures of the accompanying drawings. In the drawings:
[0031]
[0032]
[0033]
[0034]
[0035]
DETAILED DESCRIPTION
[0036] The following description and drawings are illustrative and are not to be construed as limiting. Numerous specific details are described to provide a thorough understanding of the disclosure. However, in certain instances, well-known or conventional details are not described in order to avoid obscuring the description. References to one embodiment or an embodiment in the present disclosure can be, but not necessarily are, references to the same embodiment and such references mean at least one of the embodiments.
[0037] Reference in this specification to one embodiment or an embodiment means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the disclosure. The appearances of the phrase in one embodiment in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not for other embodiments.
[0038] The terms used in this specification generally have their ordinary meanings in the art, within the context of the disclosure, and in the specific context where each term is used. Certain terms that are used to describe the disclosure are discussed below, or elsewhere in the specification, to provide additional guidance to the practitioner regarding the description of the disclosure. For convenience, certain terms may be highlighted, for example using italics and/or quotation marks. The use of highlighting has no influence on the scope and meaning of a term; the scope and meaning of a term is the same, in the same context, whether or not it is highlighted. It will be appreciated that same thing can be said in more than one way.
[0039] Consequently, alternative language and synonyms may be used for any one or more of the terms discussed herein, nor is any special significance to be placed upon whether or not a term is elaborated or discussed herein. Synonyms for certain terms are provided. A recital of one or more synonyms does not exclude the use of other synonyms. The use of examples anywhere in this specification, including examples of any terms discussed herein, is illustrative only, and is not intended to further limit the scope and meaning of the disclosure or of any exemplified term. Likewise, the disclosure is not limited to various embodiments given in this specification.
[0040] Without intent to limit the scope of the disclosure, examples of instruments, apparatus, methods and their related results according to the embodiments of the present disclosure are given below. Note that titles or subtitles may be used in the examples for convenience of a reader, which in no way should limit the scope of the disclosure. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains. In the case of conflict, the present document, including definitions, will control.
[0041] Disclosed herein are methods, systems, and devices related to the management of internet-of-things (IoT) devices including the efficient reuse of the IoT devices while deployed in temporary applications.
[0042]
[0043] In step 102 the computing device is configured to receive, over a network, a device identification (ID) associated with the IoT device. The network may be a wireless network. For example, the wireless network may be a 2G network, a 3G network, a 4G network, a 5G network, or the like. The device ID may be represented as a machine readable code located on or within the IoT device. For example, the machine readable code may be a barcode, a QR code, a near field communication (NFC) tag, Bluetooth Low Energy (BLE) advertisement packet, or the like. The device ID may also be stored in one or more databases and/or on one or more backend servers.
[0044] In step 104 the computing device is configured to determine first digital rights management (DRM) privileges for the IoT device based on the device ID. The first DRM privileges are associated with a first entity and a first timestamp. The first DRM privileges may include access to data recorded by the IoT device after the first timestamp. For example, the first DRM privileges may include read access limited to location data recorded by a global positioning system (GPS) receiver on the IoT device. The first DRM privileges may also include read access to environmental data recorded by the IoT device. The data may be available directly from the IoT device or may be available from one or more backend servers.
[0045] In step 106 the computing device is configured to receive, over the network from the mobile device, a first request to provide second DRM privileges for the IoT device. The second DRM privileges are associated with a second entity and a second timestamp. The second DRM privileges may include access to data recorded by the IoT device after the second timestamp. This data may be available directly from the IoT device or may be available from one or more backend servers.
[0046] In step 108 the computing device is configured to transmit, over the network to another mobile device associated with the first entity, a second request for permission to provide the second DRM privileges. The second request may include the device ID and the second timestamp.
[0047] In step 110 the computing device is configured to receive, over the network from the another mobile device, permission to provide the second DRM privileges. The permission may include the device ID.
[0048] In step 112 the computing device is configured to grant the second DRM privileges based at least partially on the permission from the first entity.
[0049] In step 114 the computing device is configured to adjust a first entity device credits value based on the second timestamp. The first entity device credits value may have been previously adjusted based on the first timestamp.
[0050] In step 116 the computing device is configured to transmit to a customer billing management server a first entity unique ID, the second timestamp, and the first entity device credits value.
[0051] In other steps not shown in
[0052]
[0053] The IoT device 202 includes a plurality of sensors 210. The sensors 210 may include a microphone, a temperature detector, a humidity detector, a barometric detector, a stress detector, a proximity detector, an ambient light detector, a three-axis accelerometer, and/or a three-axis gyroscope. The three-axis accelerometer and the three-axis gyroscope may be configured to provide dynamic position data associated with movements of the IoT device 202. A plurality of analog-to-digital converters (ADCs) may be used to interface the sensors 210 with the processor 206. The ADCs may be integrated with the sensors 210 and/or the processor 206. The sensors 210 may also be configured to monitor a health status of the IoT device. For example the health status may include a status of the battery 204. The IoT device 202 also includes a real time clock 212 for providing timestamps associated with data recorded by the sensors 210. A global positioning system (GPS) receiver 214 is included with the IoT device 202 to provide location information.
[0054] The IoT device 202 includes one or more wide area network (WAN) radios 216 for communication over a wireless network. The wireless network may be a 2G network, a 3G network, a 4G network, a 5G network, or the like. The IoT device 202 also includes one or more subscriber identity module (SIM) cards. The IoT device 202 has a device ID and the device ID may be associated with the one or more SIM cards. For example, the device ID may be associated with at least one of an integrated circuit card identifier (ICCID), an international mobile subscription identification number (IMSI), or the like.
[0055] The IoT device 202 includes a machine readable label 220 and an enclosure 222. The enclosure 222 provides a surface area for the machine readable label 220. The machine readable label 220 contains the device ID and may be a barcode, a QR code, BLE advertisement packet, or the like. The machine readable label 220 is positioned on the enclosure 222 such that the device ID may be read by a camera on a mobile device. The device ID may also be provided in a human readable format on the machine readable label 220 (e.g. a printed serial number). In certain embodiments the IoT device 202 may include a near field communications (NFC) tag allowing the device ID to be obtained by an NFC receiver on a mobile device. In other embodiments, the device ID may be provided by a personal area network (PAN) interface not shown in
[0056]
[0057] A network 308 provides connectivity between the server 304, an IoT device 310, and mobile devices 314A and 314B. The network 208 may be a wireless network and may include 2G, 3G, 4G, and/or 5G technologies. The network 208 may include the Internet.
[0058] The IoT device 310 may include all or at least a portion of the IoT device 202 of
[0059] The mobile devices 314A and 314B are representative of the mobile device and the another mobile device described in the method of the flowchart 100 of
[0060] The network 308 may also provide connectivity between the server 304 and back-end services 320. The back-end services 320 include the one or more servers of
[0061]
[0062] The mobile device 402 also includes a processor 406 and a memory 408. In some embodiments the memory 408 or a portion of the memory 408 may be integrated with the processor 406. The memory 408 may include a combination of volatile memory (e.g. random access memory) and non-volatile memory (e.g. flash memory). In certain embodiments, the processor 406 may be a mobile processor such as the Qualcomm Snapdragon mobile processor. For example, the processor 406 may be the Snapdragon 855 mobile processor. The mobile device 402 also includes a user interface (UI) 410 and a display 412. The UI 410 and the display 412 may be integrated within a touchpad display.
[0063] The mobile device 402 includes WAN radios 414, LAN radios 416, and PAN radios 418. The WAN radios 414 may include 2G, 3G, 4G, and/or 5G technologies. The LAN radios 416 may include Wi-Fi technologies such as 802.11a, 802.11b/g/n, and/or 802.11ac circuitry. The PAN radios 418 may include Bluetooth and/or BLE technologies, and may also be used to read device IDs. The mobile device also includes a GPS receiver for identifying and/or verifying its location.
[0064] The memory 408 includes program instructions (i.e. one or more mobile apps) when executed by the processor 406 allow the mobile device 402 to access and display data recorded by IoT devices, read device IDs associated with the IoT devices using the camera 404 and/or the NFC receiver, and request/obtain DRM privileges associated with the IoT devices.
[0065]
[0066] In step 502, the mobile device receives a device ID associated with the IoT device. The device ID may be represented as a machine readable code located on or within the IoT device. For example, the machine readable code may be a barcode, a QR code, an NFC tag, a BLE advertisement packet, or the like. The device ID may also be received via a GUI associated with the mobile device (e.g. entered by a user of the mobile device). At time of receiving the device ID, the IoT device has first DRM privileges for accessing the information associated with the IoT device. The first DRM privileges are associated with a first entity and the first entity is not associated with the mobile device. The mobile device is associated with a second entity. The first entity and/or the second entity may or may not be business entities. The first DRM privileges may include read access limited to location data recorded by a GPS receiver on the IoT device. The first DRM privileges may also include read access to environmental data recorded by the IoT device. The data (i.e. information) may be available directly from the IoT device or may be available from one or more backend servers.
[0067] In step 504, the mobile device transmits over a network to a server the device ID, a second entity unique ID, and a request for second DRM privileges to be established for the second entity to receive the information associated with the IoT device. The network may be a wireless network. For example, the wireless network may be a 2G network, a 3G network, a 4G network, a 5G network, or the like.
[0068] In step 506, the mobile device receives over the network from the server second DRM privileges for the second entity to gain access to the information associated with the IoT device. The second DRM privileges are associated with a timestamp and the timestamp is associated with a billing cycle for the second entity for usage of the IoT device. The second DRM privileges may also include read access limited to location data recorded by the GPS receiver on the IoT device. The first DRM privileges may also include read access to environmental data recorded by the IoT device. The data may also only be available as recorded by the IoT device for times after the timestamp.
[0069] In step 508, the mobile device receives a first portion of the information for the IoT device over the network.
[0070] In step 510, the mobile device receives a second portion of the information from the IoT device. The mobile device may receive the second portion of the information via a Bluetooth signal, a Wi-Fi signal, or the like.
[0071] In step 512, the mobile device displays the information via the GUI.
[0072] In certain embodiments (e.g. shipment tracking) the previously described methods, devices, and systems may provide: [0073] 1. Battery powered tracker with GPS and cellular antenna which periodically obtains a GPS position and reports its location to a central server over an available cellular network. [0074] 2. Barcode/QR code on tracker to uniquely identify it. Human readable serial number as well. [0075] 3. Mobile phone application which may: [0076] a. Scan barcode on device and accept payment for exclusive use of the tracker for a fixed period of time [0077] b. Accept input of planned time and location of shipment completion as well as additional information such as shipment description or associated tracking numbers (i.e. production lot number) [0078] c. Generate a shipment tracking number that allows bearer to see the locations of the device for the agreed upon above length of time. This tracking number/link can be shared with other people as well. Viewing can happen on website or mobile app. [0079] d. Show current and previous locations of the tracker to authorized users (those in possession the shipment tracking number or those who purchased access to the tracker) [0080] e. Inform user via mobile push notifications, text message, or email when the tracker will/will not reach its destination in time [0081] f. Invite other users to view the tracker's locations [0082] 4. Backend server and billing system which keeps track of which user(s) can see the location of the tracker for a given time period. The system also associates/disassociates the additional shipment information to the tracker during its paid usage period. [0083] 5. Billing system capable of applying credits to original purchaser of the tracker when it is re-used by a different person/account. These credits can be used to purchase additional trackers. [0084] 6. A buyback program whereby users can ship a used/found tracker back to Logistimatics for credits towards additional trackers or tracker usage. [0085] 7. After shipment is complete, provide a map-based snapshot of all the relevant information from the duration of the shipment that can be retrieved by anyone with the shipment tracking number. This digital artifact can be emailed or viewed on any web browser. [0086] 8. During periods of non-use, the SIM card must be kept active, which means keeping an IMSI number registered on the SIM. Generally speaking, an active IMSI costs money each month. When in an inactive state, the SIM card can be re-programmed to have a cheaper IMSI. When in active use, the IMSI can be changed to be one with a higher monthly cost but cheaper data rates or better carrier roaming agreements. [0087] 9. At any time, a user can scan the barcode on the tracker to look up whether it's in use or not. If it is in use, they can anonymously request access to the tracking data from the current owner.
[0088] As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a circuit, module or system. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
[0089] Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium (including, but not limited to, non-transitory computer readable storage media). A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
[0090] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
[0091] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0092] Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including object oriented and/or procedural programming languages. For example, programming languages may include, but are not limited to: Ruby, JavaScript, Java, Python, Ruby, PHP, C, C++, C#, Objective-C, Go, Scala, Swift, Kotlin, OCaml, or the like.
[0093] Aspects of the present invention are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions.
[0094] These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0095] These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
[0096] The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0097] The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
[0098] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms a, an and the are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms comprises and/or comprising, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0099] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
[0100] The descriptions of the various embodiments of the present invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.