The Master Controller includes several command-line utilities for security management, system testing, and manual overrides.

Security & Hashing

esctl-hash.pl

Used to generate secure hashes for card serial numbers and PINs before they are stored in the LDAP directory.

# Generate a hash for a card serial
./esctl-hash.pl 12345678

Diagnostics & Testing

emulate-node.pl

A powerful utility that simulates the behavior of a physical door controller. This is used to test Master Controller logic, LDAP permissions, and database logging without needing physical hardware.

# Emulate a node on a specific port
./emulate-node.pl /dev/pts/5

send-cmd.sh

The primary tool for sending manual commands to a running node from the server console.

# Manually unlock door 1 for 5 seconds
./send-cmd.sh 1 "U5"

Support Scripts

  • functions.pm: The core Perl library containing shared logic for network communication and data parsing.
  • raspi-install-cmds.txt: A reference list of Debian packages required for bare-metal installations.