Setting up the ESCTL Master Controller typically involves preparing a Linux-based server (such as a Raspberry Pi with Debian/Raspbian) to host the management services.

Looking for a faster way? We highly recommend using our Docker Deployment Guide for a containerized setup that includes the database and identity provider.


Prerequisites (Bare Metal)

Before starting a manual installation, ensure your system is up to date and you have root or sudo access.

1. Install Support Tools

sudo apt-get update
sudo apt-get install subversion links minicom vim-gtk

2. Install Perl Libraries

The Master Controller software is written in Perl and requires several modules to interact with hardware and the database.

sudo apt-get install libdevice-serialport-perl libclass-dbi-mysql-perl libnet-ldap-perl

3. Identity Provider (LDAP)

ESCTL uses LDAP (OpenLDAP) for managing users and tokens.

sudo apt-get install slapd ldap-utils

Note: During installation, a configuration wizard may appear. You can reconfigure this at any time using:

sudo dpkg-reconfigure -plow slapd

Software Deployment

  1. Clone the Repository: Download the latest version of the ESCTL software from the central repository.

  2. Configure Permissions: Ensure the service user has access to serial ports if you are using direct serial connections.

  3. Initialize Database: Import the schema files located in the server/trunk/schema/ directory into your MySQL/MariaDB instance.

Node Connectivity

Once the Master Controller is running, you can begin connecting Door Controllers and Temperature Monitors over the network. Each node should be configured to point to the IP address of your Master Controller.