The DINternet platform is a simple, yet expandable way of introducing a 'smart'system to your home or industry.
There are two core devices to the platform; the Hub and the Controller.
The Controller Unit is the main part of the system. Containing many IO pins to interface with its surroundings the Controller Unit can be used. Programmable from its WebGUI, the Controller Unit is easy to set up and extremely versatile. Expandable with sensor/relay add-on packs.
The Hub Unit ties all of the Controller Units together and simplifies the Management of data in the setup, scraping any and all data from the Controller Units in the setup. This data can them be presented in one easy to use page, shared to an IoT site and much, much more!
Connecting to your home/work network, the Hub acts as an Access Point for all Controller Units in the setup, reducing the amount of devices on the network appearing in the network.
I have built various systems using the DIN rail as a simple way of tying together my modular designs, however I have always found myself relying on off-the-shelf enclosures for my projects.
In this project I aim to create a simple, modular setup that I can use to for a wide range of applications using common components.
Main Unit
Purpose
The main unit is the brains of the project. While there will be a few GPIO pins broken out The inputs and outputs of this unit will focus on communication; i2c, serial and wifi. Using these the unit will provide a WebGUI for the user, output data to an MQTT server, display information on an attached screen and co-ordinate the use of any additional slave units added to the board on the i2c bus.
Form Factor
A reasonably compact but simple to assemble design is the aim of the game here.
The screen used will be a 20x4 i2c lcd screen. All components will be mounted to a board the exact same size as the 20x4 display, using standoffs to screw the two together. The lower board will contain a NodeMCU header (to the right of the board to avoid the i2c backpack on the screen, USB port pointing out of the top, a 4 pin header for the screen to connect to the i2c bus, a row of screw terminals along the bottom edge of the board (vcc in, ground, tx, rx software serial pins and a few extra GPIO and grounds broken out), onboard 5v/3.3v regulators to power the NodeMCU and and two RJ45 connectors for attaching the slaves.
The RJ45 pins will carry: VCC, GND, 5v, GND, 3.3v, GND, SDA, SCL
Variations - I also aim to make a variation of this board featuring a Pi Zero as the main controller. Design would remain mostly the same with the headers and regulators hopefully being the only parts requiring movement.
Slave Units
Purpose
The slave units will act as expansion boards for the main controller. Relays, pH Sensors, temperature sensors, extra pins and more can easily be added using the slave units.
In order to handle the additional components I am planning to add a small microcontroller such as an AtTiny85 to control the slave device, act as an i2c slave and store basic information on the connected device. This information will allow the main Unit to utilise the attached peripherals and use it correctly.
Form Factor
This is pretty flexible depending on the components involved, however each board will contain the two rj45 connectors for daisychaining the boards, a socket for the AtTiny, and the actual components. Some Ideas for expansions are: Relay board, pH/Temp sensor board, LED board, Analog input board, opto-isolated io board, button boards etc
In order to make the board neat I will aim to keep them the same height as length as the Main unit, even if the width varies.
I've been putting a lot of thought into this project, and how to make hardware that will be compatible for as many applications as possible.
In order to do that I have come up with a series of modular boards that will make putting together a setup for almost any application easy.
I'm looking to design some PCBs for This however this will take some time to get to grips with the necessary software.
I'm looking for a collaborator to assist in this step to share my ideas with and to make sure it is feasible and also help me with the design phase of the boards.
If you would like to jump on board please get in touch!
I am entering one of the two components of this planned project into an IoT contest over on Hackster.io.
This contest entry focuses on the IoT Control Unit, which is ESP8266 driven so meets the criteria for the contest.
The Pi-powered Hub Unit will be documented over there for future contest use.
Soon I will be adding more documentation to the project here on Hackaday.io following some more work on the code; I'm happy with the builds using enclosures by the magnificent @Hartmut Wendt and am now currently focusing on integrating MQTT to have my network function as intended.
so you found a name already :) I just remembered that there was a comment I wanted to write a reply to... and that I'm late. If you want a cheesy name suggestion: DIN-O-CORE. Or maybe DINternet :D anyway, was cool to read the page. Reset, rebrand, redefining... makes sense :)
Thanks matey! My name was a stopgap; I much prefer your two suggestions :-D
Yeah the shakeup with the project is much needed. The Aquariumatic is essentially a project that I helped a friend achieve for a college project and then continued to work on. And in that process I've created a system with a much broader use than just for monitoring aquariums.
I love the idea of having a versatile set of core units that can be easily configures to operate in a variety of scenarios (garage door control, thermostat, aquariums, hot tubs, lights etc) and be chained simply into a system that makes it all work together nicely. It still certainly has an industrial application in there too. I've just started creating some systems for a local timber factory based on the 'DINternet' devices. So far its monitoring truck trailers and notifying their drivers when they are full, and next it's going to start creating a database to record pallet sizes going out for delivery.
I'm having loads of fun and getting some actual client work in so I'm really enjoying my tinkering at the minute.
DIN-O-CORE - we have a winner!
Thanks man!