This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
hellohome:protocol:node-gateway:home [2015/09/15 14:42] – [Message Type] vdesmedt | hellohome:protocol:node-gateway:home [2015/09/15 16:20] (current) – [Message Type] vdesmedt | ||
---|---|---|---|
Line 3: | Line 3: | ||
* Message based protocol. | * Message based protocol. | ||
* First byte contains the message type | * First byte contains the message type | ||
+ | |||
+ | ===== Initialisation ===== | ||
+ | |||
+ | When a node starts, it sends a NodeStarted message containing a generated signature and a boolean indicating if it requires a new NodeId to be assigned to it. If it does, the gateway assigns a new NodeId and send a NodeConfig command containing the signature and the new NodeId. The signature is used to avoid that different nodes having the same nodeId keep on having the same by processing the same ConfigCommand. | ||
===== Message Type ===== | ===== Message Type ===== | ||
Line 16: | Line 20: | ||
| | 1 | PulseReport | Number of pulse detected since last sent message | | | | 1 | PulseReport | Number of pulse detected since last sent message | | ||
| | 2 | Environment data | Temperature, | | | 2 | Environment data | Temperature, | ||
+ | | | 3 | [[NodeStarted]] | Sent by nodes when they boot to initialise | | ||
| 1 | | **Query** | When one node want to ask information to another | | | 1 | | **Query** | When one node want to ask information to another | | ||
| 2 | | **Command** | When one node want another one to perform an operation | | | 2 | | **Command** | When one node want another one to perform an operation | | ||
| | 0 | [[UpdateConfig]] | Used by gateway to indicate its new config to a node | | | | 0 | [[UpdateConfig]] | Used by gateway to indicate its new config to a node | |