Benoît Durand
Tech @duraben

Tech @duraben

Datasocks : Realtime IoT made simple ✅

Monitor and control remotely in real time your IoT devices without the pain of dealing with networking.

Benoît Durand's photo
Benoît Durand
·Jun 26, 2022·

2 min read

IoT Made simple

Demo

Test An account, an API Key and you are good to go !

The idea behind Datasocks is to provide an easy way to connect, monitor and control multiple IoT devices without having to setup a web server and deal with networking.

Study Case

  • You want to get the temperature and the humidity level of your room to be sure that your plants will survive 🌱. You also want to be able to water them at any moment.
  • For that you decide to go with a singleboard computer (like a Raspberry Pi) or an Arduino.
  • Once done, you realise you need to setup a web server/app in your house,deal with opening your home network to the internet and the security issues that are implied to it.

Here's come Datasocks : After setting up Datasocks on a VPS (on Linode let's say 😉) with minimal requirements, generating an API Key for your device and embed it into a script into your device , you are good to go.

Your plants will thank you. 🌱😋

Deploy

Thanks to Linode's Stackscript feature you can quickly setup an instance with datasocks pre-installed

cloud.linode.com/stackscripts/1018923

The only thing to set up next is an .env file and start the docker compose process

docker-compose --env-file ./.env up

Features

  • Create and own multiple dashboards
  • Create cards to display the last value of a metric
  • Create graphs (Lineplot for now) to measure the evolution on a time period
  • Create buttons to activate functions on your devices (Still in dev)
  • Manage mutiple devices

Why Websockets

  • No need to setup a web server on the device itself and expose it to the Internet
  • Bi-Directionnial communications
  • Asynchronous system

Tech Stack

  • Backend using Django, DRF and Channels
  • Frontend in vanilla js using Bootstrap and Chartjs
  • Docker and Docker-compose
  • NGINX
  • Redis

Github Repo : github.com/duranbe/datasocks

It's for now designed as a self-hosted and private application only, hence for now the support for only one admin user.

This project was made during and for the Linode x Hashnode Hackathon

 
Share this