aboutsummaryrefslogtreecommitdiff
path: root/docs/design.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/design.md')
-rw-r--r--docs/design.md16
1 files changed, 15 insertions, 1 deletions
diff --git a/docs/design.md b/docs/design.md
index 1eb7c09..3b51bea 100644
--- a/docs/design.md
+++ b/docs/design.md
@@ -45,7 +45,21 @@ decodes the message back into a regular struct.
Exact specifications of the protocol can be found in the source tree in
markdown format, with included client and parser libaries.
-# Multitasking on nodes (niels)
+# Mesh network
+
+In mesh networking, there are a few choices made.
+
+## Nodes
+
+Every node has a total of three elements which consist of one button and two lights. The software is made to make the primary element always a generic on-off client with a configuration server and a health server. Additionally, the second and third elements are only generic on-off servers.
+
+## Provisioning
+
+The provisioner uses the PB-ADV instead of the PB-GATT provisioning protocol. This might change in the future depending on the beacon information and if there is enough time to switch from PB-ADV to PB-GATT.
+
+## Semaphore
+
+For now, there are two semaphores created in the provisioner software. The first one is created for an unprovisioned beacon signal from the provisionee. Also, the second semaphore is used for adding a node to the network. All these semaphores are to make sure there is only one signal at a time.
# Used software and library versions