/iot-system

IoT content management system created for Capgemini for college graduation thesis.

Primary LanguageJavaScript

iot-system

Codacy Badge Build Status

IoT system for thesis by Atilla Bosma.

Prerequisites

Software

Node JS (system tested on LTS (v12.18.0))

MQTT Broker (any broker works, system tested with Mosquitto)

Postgres Database (version doesn't matter)
Database Schema for Postgres Database

SFTP Server (any kind works, system tested with OpenSSH)

Security Certificates

Certificates for MQTT (CA, Client Certificate and Client Key)
Tutorial for setting up Mosquitto with TLS encryption

Certificates for Postgres (only the Client Certificate and Key are needed for this)
Tutorial for setting up Postgres with TLS encryption

If you don't want to use certificates, you can remove the certificate loading code from mqtt_connector and database_connector

Setup

  1. Clone the Git into an empty folder.

  2. Run the command 'npm install'. This will install all needed dependencies.

  3. Make a copy of the .sample-env file, and rename it to .env.

    • Fill in all of the variables, the .sample-env file explains what needs to be filled into every variable.
  4. Start the Postgres, MQTT and SFTP servers.

  5. Run the program with Node JS. (The command for that is: 'node ./bin/www')