The present invention relates generally to an interconnected device network and related methods.
In recent years, the use of Internet-of-Things (“IoT”) interconnected devices has become more and more prolific. Generally speaking, IoT interconnected devices operate using a common machine language or protocol so that messages or actions may be communicated with devices utilizing low processor usage, small memory footprint, and minimal battery requirements. Separately, the use of traditional communication devices and networks, and in particular, traditional two-way radios (i.e., push-to-talk (“PTT”) radios), employ a communication protocol distinct from devices on an IoT interconnected device network. These two technologies have not intersected.
The background description disclosed anywhere in this patent application includes information that may be useful in understanding the present invention. It is not an admission that any of the information provided herein is prior art or relevant to the presently claimed invention, or that any publication specifically or implicitly referenced is prior art.
A common machine language or protocol to allow multiple devices from multiple proprietary sources to “speak” the same machine language is implemented. In an embodiment, the machine language or protocol is MQ Telemetry Transport, and may be implemented utilizing Node-RED, a programming tool for wiring together hardware devices, APIs and online services, and ESP 32, a development board, a System-on-a-Chip (SoC) designed to provide physical interconnectivity between devices and processing capabilities to the interconnected device network, among other things. The interconnected device network can provide edge monitoring, mobile command monitoring, NOC services, AI systems, RDAC message-capable nodes, and monitoring of remote equipment, among other things.
In accordance with a first aspect of the present invention, there is provided an interconnected device network that includes a first remote device configured to transmit a telemetry message, a telemetry control station configured to receive the telemetry message comprising a unique identification associated with the telemetry control station, a telemetry feature, and an action command, a control module configured to receive the telemetry message from the telemetry control station, decode the telemetry message, and generate a machine language protocol payload from the telemetry message in accordance with the action command, and a machine language broker configured to receive the machine language protocol payload and transmit the machine language protocol payload to at least one second remote device.
The interconnected device network may include an event-driven application configured to provide accessibility between the control station, the at least one remote device, and application programming interfaces, wherein at least two of the control station, the at least one remote device, and the application programming interfaces do not communicate through the same machine language protocol.
The control module may be configured to receive a voltage input, wherein the machine language protocol payload is generated by the control module when the control module receives a change in the voltage input. The interconnected device network may include a repeater configured to relay the telemetry message from the first remote device to the telemetry control station. The telemetry control station may be an MQ telemetry transport control station. The event-driven application may be node-RED.
The machine language broker may be further configured to maintain a subscribed list, wherein the subscribed list tracks a topic and the at least one second remote device subscribed to the topic. The machine language protocol payload may be a portion of a machine language protocol packet configured to be transmitted and received through a wireless network.
In accordance with another aspect of the present invention, there is provided a method of providing a common machine language network including steps of transmitting a telemetry message from a first remote device, the telemetry message comprising a unique identification associated with a telemetry control station, a telemetry feature, and an action command, receiving the telemetry message at the telemetry control station, the telemetry control station configured to decode the telemetry message and change a voltage output in response to the action command, generating a machine language protocol payload in response to the voltage output change, wherein the payload is configured to be transmitted to a machine language protocol broker, receiving the payload at the machine language protocol broker, and transmitting the machine language protocol payload to at least one second remote device via the machine language protocol broker. The method may include the step of relaying the telemetry message from the first remote device to the telemetry control station.
The invention may be more readily understood by referring to the accompanying drawings in which:
FIG. is 9 a diagram of a telemetry command programming tool in accordance with a preferred embodiment of the present invention.
Like numerals refer to like parts throughout the several views of the drawings.
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 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. If a component is not shown in a drawing then this provides support for a negative limitation in the claims stating that that component is “not” present. However, the above statement is not limiting and in another embodiment, the missing component can be included in a claimed embodiment.
Reference in this specification to “one embodiment,” “an embodiment,” “a preferred embodiment” or any other phrase mentioning the word “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 and also means that any particular feature, structure, or characteristic described in connection with one embodiment can be included in any embodiment or can be omitted or excluded from any embodiment. 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 and may be omitted from any embodiment. Furthermore, any particular feature, structure, or characteristic described herein may be optional. Similarly, various requirements are described which may be requirements for some embodiments but not other embodiments. Where appropriate any of the features discussed herein in relation to one aspect or embodiment of the invention may be applied to another aspect or embodiment of the invention. Similarly, where appropriate any of the features discussed herein in relation to one aspect or embodiment of the invention may be optional with respect to and/or omitted from that aspect or embodiment of the invention or any other aspect or embodiment of the invention discussed or disclosed herein.
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 the same thing can be said in more than one way. Consequently, alternative language and synonyms may be used for any one or more of the terms discussed herein. No special significance is 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.
Without intent to further 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.
It will be appreciated that terms such as “front,” “back,” “top,” “bottom,” “side,” “short,” “long,” “up,” “down,” “aft,” “forward,” “inboard,” “outboard” and “below” used herein are merely for ease of description and refer to the orientation of the components as shown in the figures. It should be understood that any orientation of the components described herein is within the scope of the present invention.
In a preferred embodiment of the present invention, functionality is implemented as software executing on a server that is in connection, via a network, with other portions of the system, including databases and external services. The server comprises a computer device capable of receiving input commands, processing data, and outputting the results for the user. Preferably, the server consists of RAM (memory), hard disk, network, central processing unit (CPU). It will be understood and appreciated by those of skill in the art that the server could be replaced with, or augmented by, any number of other computer device types or processing units, including but not limited to a desktop computer, laptop computer, mobile or tablet device, or the like. Similarly, the hard disk could be replaced with any number of computer storage devices, including flash drives, removable media storage devices (CDs, DVDs, etc.), or the like. The server may be implemented on a cloud or cloud-based computing system.
The network can consist of any network type, including but not limited to a local area network (LAN), wide area network (WAN), and/or the internet. The server can consist of any computing device or combination thereof, including but not limited to the computing devices described herein, such as a desktop computer, laptop computer, mobile or tablet device, as well as storage devices that may be connected to the network, such as hard drives, flash drives, removable media storage devices, or the like.
The storage devices (e.g., hard disk, another server, a NAS, or other devices known to persons of ordinary skill in the art), are intended to be nonvolatile, computer readable storage media to provide storage of computer-executable instructions, data structures, program modules, and other data for the mobile app, which are executed by CPU/processor (or the corresponding processor of such other components). The various components of the present invention, are stored or recorded on a hard disk or other like storage devices described above, which may be accessed and utilized by a web browser, mobile app, the server (over the network), or any of the peripheral devices described herein. One or more of the modules or steps of the present invention also may be stored or recorded on the server, and transmitted over the network, to be accessed and utilized by a web browser, a mobile app, or any other computing device that may be connected to one or more of the web browser, mobile app, the network, and/or the server.
References to a “database” or to “database table” are intended to encompass any system for storing data and any data structures therein, including relational database management systems and any tables therein, non-relational database management systems, document-oriented databases, NoSQL databases, or any other system for storing data.
Software and web or internet implementations of the present invention could be accomplished with standard programming techniques with logic to accomplish the various steps of the present invention described herein. It should also be noted that the terms “component,” “module,” or “step,” as may be used herein, are intended to encompass implementations using one or more lines of software code, macro instructions, hardware implementations, and/or equipment for receiving manual inputs, as will be well understood and appreciated by those of ordinary skill in the art. Such software code, modules, or elements may be implemented with any programming or scripting language such as C, C++, C#, Java, Cobol, assembler, PERL, Python, PHP, or the like, or macros using Excel or other similar or related applications with various algorithms being implemented with any combination of data structures, objects, processes, routines or other programming elements.
Referring now to the drawings, which are for purposes of illustrating the present invention and not for purposes of limiting the same, the drawings show an interconnected device network facilitating a common machine language between traditional devices of a communication network protocol and IoT interconnected devices.
The remote device 12 is not limited to portable radios, but may include remote cameras, thermometers, or other sensors that use proprietary communication and/or transport protocols. The remote device 12, for example, is an Artificial Intelligence (“AI”) enabled device such as Amazon's Alexa AI voice assistant or other proprietary AI systems. Still further, the remote device 12 may be a security system control, door panel control, or the like, such that a user using a first remote device 12 (e.g., a PTT radio) may control a second remote device 12 (e.g., a restricted access door control).
Preferably, the repeater 14 is a two-way digital radio repeater configured to improve two-way radio communication coverage, and eliminate or reduce dead spots caused by infrastructure interference. The repeater 14 can function to handle communication traffic between multiple remote devices 12 and/or a single site. One of ordinary skill in the art would understand that other suitable replacements, such as an analog repeater, may be utilized without departing from the scope of the present invention.
Preferably, the telemetry control station 16 includes a mobile radio 18 (e.g., a MOTOTRBO™ digital mobile radio), a control module 20 (e.g., an ESP8266/ESP-12F NodeMcu Mini D1 Module), a step-down voltage converter 22 (e.g., a 12V/24V to 5V 3A USB Charger Module DC Buck Step Down Converter), and a wiring harness 24 (e.g., a Motorola rear accessory connector kit). In another embodiment, the telemetry control station 16 does not utilize a mobile radio 18, but instead utilizes the repeater 14 and its rear accessory connector 26.
The mobile radio 18, in a preferred embodiment, is a digital mobile radio including a rear accessory connector 26. The rear accessory connector 26 provides access to General Programmable Input Output (GPIO) pins that may be utilized to allow a user to control and/or monitor external hardware from the mobile radio 18 and/or a remote device 12 configured to communicate with the mobile radio 18, preferably via the repeater 14.
The control module 20 is preferably a nodeMCU control module including wireless connectivity implemented on an integrated system-on-a-chip (“SoC”), such as that offered by the ESP8266/ESP-12F NodeMcu Mini D1 Module, depicted in
The step-down converter 22 is configured to provide DC power to the control module 20 using the mobile radio's 18 power output. For example, the step-down converter 22 is configured to step down DC voltage from 12V to 5V at 3A, suitable to power the ESP8266/ESP-12F NodeMcu Mini D1 Module, for example.
The wiring harness 24 is configured to utilize the rear accessory connector 26 pinout and provide signal and power connectivity to/from the control module 20 and the step-down converter 22.
Referring now to
The handheld mobile device 30 and the personal computer 32 are each examples of the remote device 12. The handheld mobile device 30 and the personal computer 32 preferably receive “published” messages (see below regarding the MQTT protocol), and display the published messages on their respective displays 38.
Referring now to
The temperature sensor 34 can be any type of thermometer, temperature monitor or sensor, or the like, that is configured to publish a message to the MQTT broker 36. For example,
The MQTT broker 36 is software running on a computer (either at a location in physical proximity to the user and/or other hardware depicted in
Referring now to
As described above in connection with
The step-down voltage converter 22 depicted in
The rear accessory connector 26 depicted in
To provide 12-volt power to the step-down voltage converter 22, the SW B+ pin 82 and the 12V+ input terminal 88 are wired together, and the Power Ground pin 74 and the 12V− input terminal 90 are wired together. To provide 5-volt power to the control module 20, the 5V+ OUT terminal 92 and the 5V pin 56 are wired together, and the Power Ground pin 74 and the GND pin 54 are wired together. The wiring harness 24 is utilized to wire these pins together.
Still referring to
Referring to
Referring now to
Once the corresponding action command 140 of “On Toggle Voltage Command” is received, the voltage is toggled from “HIGH” to “LOW” and visa versa through an additional telemetry message. In this example, Pin No. 19 shown in
As can be seen from
The telemetry command programming tools 128, 136, as depicted in
Referring now to
Using the telemetry control station 40, for example, a user may control GPIO pins of their own PTT radio 12 or another radio, including a mobile radio 18 or control station 16, 40. The external hardware attached to the control station 40 as depicted in
At Step 112, a telemetry message is transmitted from a first remote device 12. As an example, the telemetry message includes a unique identification 152 of a telemetry control station 16, a telemetry feature 130, and an action command 140. The telemetry message is a message hereinbefore described as being generated by the remote device 12. For example, the telemetry message is generated by a PTT radio 12.
At Step 114, the telemetry message is received at the telemetry control station 16. The telemetry control station 16, in this embodiment, is the telemetry control station 40. At Step 116, the telemetry message is decoded by the telemetry control station 40. For example, the mobile radio 18 decodes the telemetry message. In another embodiment, the repeater 14 decodes the telemetry message.
At Step 118, a voltage output of the telemetry control station 40 is changed in response to an action command 140 of the telemetry message. For example, as described in connection with the telemetry command programming tools 128, 136, the voltage output of accessory pin GPIO2 (Pin No. 19) is changed from active “HIGH” to active “LOW” (e.g., ground). In this example, the action command 140 is “On Toggle Voltage Command”.
At Step 120, a machine language protocol payload is generated in response to the voltage output change. Preferably, the machine language protocol payload is an MQTT payload configured to be transmitted to an MQTT broker 36. As described herein, the MQTT packet includes a fixed header, and optionally, a variable header and a payload. In this example, the MQTT packet includes at least a fixed header and an MQTT payload. Thus, the machine language protocol payload is configured to be transmitted to the machine language protocol broker 36. Subsequently, at Step 122, the machine language protocol payload is transmitted to the machine language protocol broker 36. At Step 124, the machine language protocol payload is received at the machine language protocol broker 36.
At Step 126, the machine language protocol payload is transmitted by the machine language protocol broker 36 to a second remote device 12. In an embodiment, the broker 36 transmits the machine language protocol payload to a plurality of second remote devices 12. As described herein, the MQTT broker 36 provides the MQTT packet, including the MQTT payload, to all subscribers to a particular topic. In an example, and in connection with
While many embodiments are described herein, at least some of the described embodiments provide an apparatus, system, and method for an interconnected device network.
Although the operations of the method(s) herein are shown and described in a particular order, the order of the operations of each method may be altered so that certain operations may be performed in an inverse order or so that certain operations may be performed, at least in part, concurrently with other operations. In another embodiment, instructions or sub-operations of distinct operations may be implemented in an intermittent and/or alternating manner.
Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise,” “comprising,” and the like are to be construed in an inclusive sense, as opposed to an exclusive or exhaustive sense; that is to say, in the sense of “including, but not limited to.” As used herein, the terms “connected,” “coupled,” or any variant thereof, means any connection or coupling, either direct or indirect, between two or more elements; the coupling of connection between the elements can be physical, logical, or a combination thereof. Additionally, the words “herein,” “above,” “below,” and words of similar import, when used in this application, shall refer to this application as a whole and not to any particular portions of this application. Where the context permits, words in the above Detailed Description of the Preferred Embodiments using the singular or plural number may also include the plural or singular number respectively. The word “or” in reference to a list of two or more items, covers all of the following interpretations of the word: any of the items in the list, all of the items in the list, and any combination of the items in the list.
The above-detailed description of embodiments of the disclosure is not intended to be exhaustive or to limit the teachings to the precise form disclosed above. While specific embodiments of and examples for the disclosure are described above for illustrative purposes, various equivalent modifications are possible within the scope of the disclosure, as those skilled in the relevant art will recognize. Further, any specific numbers noted herein are only examples: alternative implementations may employ differing values, measurements or ranges.
Although the operations of any method(s) disclosed or described herein either explicitly or implicitly are shown and described in a particular order, the order of the operations of each method may be altered so that certain operations may be performed in an inverse order or so that certain operations may be performed, at least in part, concurrently with other operations. In another embodiment, instructions or sub-operations of distinct operations may be implemented in an intermittent and/or alternating manner.
The teachings of the disclosure provided herein can be applied to other systems, not necessarily the system described above. The elements and acts of the various embodiments described above can be combined to provide further embodiments. Any measurements or dimensions described or used herein are merely exemplary and not a limitation on the present invention. Other measurements or dimensions are within the scope of the invention.
Any patents and applications and other references noted above, including any that may be listed in accompanying filing papers, are incorporated herein by reference in their entirety. Aspects of the disclosure can be modified, if necessary, to employ the systems, functions, and concepts of the various references described above to provide yet further embodiments of the disclosure.
These and other changes can be made to the disclosure in light of the above Detailed Description of the Preferred Embodiments. While the above description describes certain embodiments of the disclosure, and describes the best mode contemplated, no matter how detailed the above appears in text, the teachings can be practiced in many ways. Details of the system may vary considerably in its implementation details, while still being encompassed by the subject matter disclosed herein. As noted above, particular terminology used when describing certain features or aspects of the disclosure should not be taken to imply that the terminology is being redefined herein to be restricted to any specific characteristics, features or aspects of the disclosure with which that terminology is associated. In general, the terms used in the following claims should not be construed to limit the disclosures to the specific embodiments disclosed in the specification unless the above Detailed Description of the Preferred Embodiments section explicitly defines such terms. Accordingly, the actual scope of the disclosure encompasses not only the disclosed embodiments, but also all equivalent ways of practicing or implementing the disclosure under the claims.
While certain aspects of the disclosure are presented below in certain claim forms, the inventors contemplate the various aspects of the disclosure in any number of claim forms. For example, while only one aspect of the disclosure is recited as a means-plus-function claim under 35 U.S.C. § 112, ¶6, other aspects may likewise be embodied as a means-plus-function claim, or in other forms, such as being embodied in a computer-readable medium. (Any claims intended to be treated under 35 U.S.C. § 112, ¶6 will include the words “means for”). Accordingly, the applicant reserves the right to add additional claims after filing the application to pursue such additional claim forms for other aspects of the disclosure.
Accordingly, although exemplary embodiments of the invention have been shown and described, it is to be understood that all the terms used herein are descriptive rather than limiting, and that many changes, modifications, and substitutions may be made by one having ordinary skill in the art without departing from the spirit and scope of the invention.
This application claims the benefit of U.S. Provisional Application No. 63/068,505, filed on Aug. 21, 2020, which is incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
63068505 | Aug 2020 | US |