From 3c8898269807821c7d405e9b1634af3c5f220aa1 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 18 Nov 2022 11:50:36 +0100 Subject: WIP lunch pause --- .gitignore | 1 + docs/pve.md | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/.gitignore b/.gitignore index 6dfc8fd..a2ab9cd 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ confui/confui docs/gen/paged.polyfill.js docs/gen/start.html docs/*.html +.obsidian diff --git a/docs/pve.md b/docs/pve.md index d9d2600..e4daf3a 100644 --- a/docs/pve.md +++ b/docs/pve.md @@ -1,9 +1,47 @@ # Introduction +node = one node that contains both a button and a LED +SE = self explanatory # Goal # Requirements ## Functional requirements +| ID | Name | Description | MoCoW | +| --- | ----------------------------- | ------------------------------------------------- | ----- | +| 01 | 3 Nodes | Have atleast 3 or more nodes in the network | Must | +| 02 | Button and LED | Each node has 1 button and 1 LED | Must | +| 09 | Nodes are mesh network | SE | Must | +| 10 | Client connection | Client is connected to both the mesh and internet | Must | +| 13 | Node sensor/actuator | A node contains atleast one sensor or actuator | Must | +| 14 | Node send/receive other nodes | SE | Must | +| | | | | + + ## Technical requirements +| ID | Name | Description | MoCoW | +| --- | ------------------------------- | --------------------------------------------------------------------- | ----- | +| 03 | Controlling mulitple nodes | One or more buttons can control one or more LEDs | Must | +| 04 | Simulate node | The application can at least simulate 1 button and 1 LED | Must | +| 05 | Virtual node | The simulated node can interect and be interacted with physical nodes | Must | +| 06 | Dynamic node (un)registration | Nodes can dynamically be registered during runtime | Could | +| 07 | Nodes can register other nodes | | Could | +| 08 | Smart interface node and client | | Could | +| 11 | Monitor and control | Client can monitor and control mesh network | Must | +| 12 | Groups | Nodes (inputs/outputs) can be bound to groups | Must | +| 15 | Nodes can sign (in/out) | (via Client) | Must | +| 16 | Read sensor via mesh network | SE | Must | +| 17 | Read actuator via mesh network | SE | Must | +| 18 | Nodes share configuration | Nodes share configuration over mesh network | Must | +| 19 | Client read and control nodes | SE | Must | +| 20 | Border router in mesh network | SE | Must | +| 21 | Client can connect nodes | SE | Must | +| 22 | Dynamically (dis)connect nodes | Nodes functionality can be (dis)connected during runtime | Must | +| | | | | + + ## Boundary conditions +| ID | Name | Description | MoCoW | +| --- | ------------ | ------------- | ----- | +| 23 | Git/gitflow | Mandatory use | Must | +| 24 | Raspberry PI | SE | Won’t | -- cgit v1.2.3 From f805e8c9b29012e274a30894ed16eb9ef302e0d0 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 18 Nov 2022 12:50:56 +0100 Subject: pve --- docs/pve.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/docs/pve.md b/docs/pve.md index e4daf3a..127f7bf 100644 --- a/docs/pve.md +++ b/docs/pve.md @@ -15,8 +15,6 @@ SE = self explanatory | 10 | Client connection | Client is connected to both the mesh and internet | Must | | 13 | Node sensor/actuator | A node contains atleast one sensor or actuator | Must | | 14 | Node send/receive other nodes | SE | Must | -| | | | | - ## Technical requirements | ID | Name | Description | MoCoW | @@ -25,8 +23,8 @@ SE = self explanatory | 04 | Simulate node | The application can at least simulate 1 button and 1 LED | Must | | 05 | Virtual node | The simulated node can interect and be interacted with physical nodes | Must | | 06 | Dynamic node (un)registration | Nodes can dynamically be registered during runtime | Could | -| 07 | Nodes can register other nodes | | Could | -| 08 | Smart interface node and client | | Could | +| 07 | Nodes can register other nodes | Nodes can be provisioned by other nodes | Could | +| 08 | Smart interface node and client | Wireless conection over BLE or J-link | Could | | 11 | Monitor and control | Client can monitor and control mesh network | Must | | 12 | Groups | Nodes (inputs/outputs) can be bound to groups | Must | | 15 | Nodes can sign (in/out) | (via Client) | Must | @@ -37,8 +35,6 @@ SE = self explanatory | 20 | Border router in mesh network | SE | Must | | 21 | Client can connect nodes | SE | Must | | 22 | Dynamically (dis)connect nodes | Nodes functionality can be (dis)connected during runtime | Must | -| | | | | - ## Boundary conditions | ID | Name | Description | MoCoW | -- cgit v1.2.3 From 824a89de03a010c34c96099b626e1c019be7963e Mon Sep 17 00:00:00 2001 From: lonkaars Date: Fri, 18 Nov 2022 12:52:36 +0100 Subject: WIP pva --- docs/gen/style.css | 2 +- docs/pva.md | 50 +++++++++++++++++++++++++++++++++++++++----------- 2 files changed, 40 insertions(+), 12 deletions(-) diff --git a/docs/gen/style.css b/docs/gen/style.css index f94cf0e..43012db 100644 --- a/docs/gen/style.css +++ b/docs/gen/style.css @@ -26,7 +26,7 @@ text-align: center; } - figcaption { + figcaption, p { text-align: justify; text-justify: auto; } diff --git a/docs/pva.md b/docs/pva.md index 1e029f1..329798b 100644 --- a/docs/pva.md +++ b/docs/pva.md @@ -1,10 +1,14 @@ # Backgrounds -## Organization - ## Project -## Parties +The concept of mesh structure already existed at the beginning of the turn of the millennium. The first step in this is internet standard 802.15.4. This includes both the physical layer and the mac layer. + +The protocols evolved in the years that followed. 6LowPan, Zigbee and other implementations were the results. Zigbee has evolved and Thread/OpenThread has been added with major companies supporting it. + +Zigbee has been on the market for some time, being used in products such as the Philips HUE and IKEA's Trådfri. The number of products made with OpenThread is more limited. BT mesh applications are still mostly in development. + +In the project we use a mesh network to realize a home automation system. # Project result @@ -34,29 +38,53 @@ ## Quality of product +- The mesh network once established is stable, and packets can be sent and received reliably (>95% of the time). +- Actions within the network should be propagated after less than 500ms. + ## Quality of documentation +- Source code usage is documented using doxygen-style comments in the header files, describing usage, call signature and optionally edge cases, example usage and/or other details. +- Obscure or ambiguous syntax usage is explained using line comments in source files. +- General software architecture will be documented in following design documents. +- Design documents will be proofread by peers to verify if the explanation is comprehensible. + # Confidentiality # Project organization ## Organization +This project has three main roles: developer, integrator and scrummaster. In the following section, a fourth role "Project owner" is also included for completeness. Because the project owner is not involved during project development, "all" roles in the following sections refers to only the main three. + ## Roles and personal details +| Name | Role | +| ------ | ----------------------------------- | +| Joan | Project owner | +| Joshua | Developer | +| Loek | Integrator, scrummaster & developer | +| Niels | Developer | + ## Information -# Schedule +While the roles in the table above describe a hierarchial system, all planning and architecture decisions are made democratically. -# Project boundaries +### Developer +- Research (during sprint 1) +- Implement user stories in code +- Send pull requests to integrators -# Cost-benefit +### Integrator +- Merge pull requests +- Version tagging +- Verification -## Risks +### Scrummaster +- Track and manage project progress +- Create user stories -### Technical risks - -### Project management risks +# Schedule -### Measures +As mentioned before, we're using Trello for managing a scrum-based planning. The user stories are scheduled a week before the sprint assessment by default. For a detailed up-to-date version of the schedule, see [Trello](link missing). +# Project boundaries -- cgit v1.2.3