EnumerationRequest message

This commit is contained in:
Pavel Kirienko 2014-07-12 19:29:16 +04:00
parent af065e9ca9
commit ee4c191684

View File

@ -0,0 +1,26 @@
#
# Automated enumeration request; designed for broadcast transfers only.
#
# If the node supports direct input from the user (e.g. a button), it can be used for automated Node ID assignment:
#
# 1. The node subscribes to this message (normally this happens while the node is in passive mode, but that's
# not necessary). In many cases it might be wise to subscribe to this message automatically if Node ID is not
# yet assigned (for instance if the node is not configured yet).
#
# 2. Some configuration tool or other node (let's call it master node) selects an appropriate Node ID and
# broadcasts it via this message.
#
# 3. User performs a confirmation input on the node that is being configured (e.g. pressing a button).
#
# 4. The node saves the newly assigned Node ID and begins normal operation (possibly restarts).
#
# 5. The master node makes sure that the node with the specified Node ID is now online. If it is not, it waits till
# the timeout expires and asks the user to repeat the procedure.
#
# An example use case for this feature is enumeration of actuator nodes or multiple motor controller nodes.
#
uint8 TIMEOUT_INFINITE = 0
uint8 timeout_sec # If the confirmation input was not detected in this time, enumeration request will be aborted
uint7 node_id # This Node ID will be assigned if the confirmation input has been detected. Must be valid.