# Homedig2 - "The home Digital Twin" project: six principles for design

**URL:** <https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699>\
**Category:** Share Your Projects\
**Created:** [28 April 2020 18:49 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699 "2020-04-28T18:49:03Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![IoTPlay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/iotplay/32/40_2.png) [@IoTPlay](https://discourse.nodered.org/u/IoTPlay)\
**Post date:** [28 April 2020 18:49 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699/1 "2020-04-28T18:49:03Z")

</div>

1st I want to thank all that helped me on my journey at playing with stuff I did not know about prior to 2016.

With the community's help, I have had many incarnations of home automation systems on Node-RED, none as elaborate and beautiful as some of the projects published here - thinking of Julian @TotallyInformation and others.

I was constantly thinking of the problems faced by big businesses in bringing disparate systems together, and tried to apply the principles I learnt during those days to something I call "home digital twin" or for short homedig2.

See the principles - that eminated from the problems of running a home automation system on Node-RED for 3 years, before I recrafted the solution the last 2 years, published on my new blog, on [https://iotplay.org](https://iotplay.org), post "_ **IoTPlay's home digital twin Solution - design principles, and why** _".

## Redesign Principles for a more maintainable solutions.

We ended up with six principles that guided us in our top-to-bottom re-design of the solutions that runs our house. They are:

1. Improve Continous Development & Integration practices of the solution.
2. IoT Devices Central vs. Local Control to a mandate.
3. Not configuring IoT Devices in Node-RED flows, but rather in a settings file.
4. A standardised communications Protocol.
5. Standardising storage structure of all IoT device events and information.
6. Separate loosely coupled systems integrated trhough a message bus

Enjoy! What do you think?

---

<div class="post-metadata">

**Author:** ![dceejay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dceejay/32/38_2.png) [@dceejay](https://discourse.nodered.org/u/dceejay)\
**Post date:** [28 April 2020 22:52 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699/2 "2020-04-28T22:52:48Z")

</div>

That there will always be off by one errors.... 😁

---

<div class="post-metadata">

**Author:** ![IoTPlay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/iotplay/32/40_2.png) [@IoTPlay](https://discourse.nodered.org/u/IoTPlay)\
**Post date:** [29 April 2020 06:42 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699/3 "2020-04-29T06:42:00Z")

</div>

In the code or the blog? I know about so many issues to resolve in my code still, do not tell me I have spelling mistakes in the blog too? 🤪

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [29 April 2020 08:32 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699/4 "2020-04-29T08:32:19Z")

</div>

A clue...

> [@IoTPlay](#):
>
> five principles

---

<div class="post-metadata">

**Author:** ![IoTPlay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/iotplay/32/40_2.png) [@IoTPlay](https://discourse.nodered.org/u/IoTPlay)\
**Post date:** [29 April 2020 08:35 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699/5 "2020-04-29T08:35:20Z")

</div>

Ahhh... (last minute edits without thinking it through... added a principle at the end).

Thanks! /// now fixed.....

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [27 June 2020 18:49 UTC](https://discourse.nodered.org/t/homedig2-the-home-digital-twin-project-six-principles-for-design/25699/6 "2020-06-27T18:49:05Z")

</div>

This topic was automatically closed after 60 days. New replies are no longer allowed.
