Skip to content

Installation

andrew jewell edited this page May 24, 2026 · 2 revisions

Installation

Automated Installer (Headless)

curl -fsSL https://nexusedgehailo.automatanexus.com/install.sh \
  | sudo bash -s -- \
    --email you@example.com \
    --password yourpassword \
    --accept-eula

Installer Flags

Flag Required Description
--email Yes Account email for AN Console registration
--password Yes Account password
--accept-eula Yes Accept the EULA non-interactively
--config No Path to a pre-built site.toml (skips the Setup Wizard)
-h8 No Force Hailo-8 mode (skip NPU auto-detect)
-h10 No Force Hailo-10H mode (skip NPU auto-detect)

2-Phase Auto-Reboot

If the installer needs to install kernel modules (hailort, I2C overlay), it will:

  1. Install kernel modules and schedule phase 2
  2. Reboot automatically
  3. Resume installation after reboot (phase 2: binary deploy, config generation, service creation)

No manual intervention is required. The installer is idempotent -- if interrupted, re-run the same command.

Automated Installer (GUI)

The GUI installer runs in a browser at http://localhost:8080 and walks through the same 8-step wizard:

  1. Site name, location, ZIP code
  2. Board detection (8 board types on I2C bus)
  3. Equipment configuration
  4. I/O mapping (inputs/outputs to equipment)
  5. Algorithm selection and parameters
  6. Notification setup (email recipients via FerrumMail)
  7. Alarm thresholds
  8. Review and deploy

The GUI installer is HTML/JSX and lives at crates/nexusedge-installer/installer/ in the source tree.

Manual Installation

1. Flash Raspberry Pi OS

# Use Raspberry Pi Imager with latest Bookworm arm64 image

2. Enable I2C

sudo raspi-config  # Interface Options -> I2C -> Enable
# Or manually:
echo "dtparam=i2c_arm=on" | sudo tee -a /boot/firmware/config.txt
sudo reboot

3. Install Dependencies

sudo apt-get update
sudo apt-get install -y i2c-tools hailort

# Tailscale (remote access)
curl -fsSL https://tailscale.com/install.sh | sudo sh
sudo tailscale up --hostname=<controller-name>

# Cloudflared (HTTPS tunnel)
sudo apt-get install -y cloudflared

4. Install I/O Board CLI Tools

# MegaBAS
cd /tmp && git clone https://github.com/SequentMicrosystems/megabas-rpi.git
cd megabas-rpi && sudo make install

# Repeat for other board types as needed (megaind-rpi, 16univin-rpi, etc.)

5. Download Binary

Download the latest release from the Releases page:

wget https://github.com/AutomataNexus/NexusEdgeHailoEdition/releases/latest/download/nexusedge-hailo-pi5-bookworm-aarch64.tar.gz
tar xzf nexusedge-hailo-pi5-bookworm-aarch64.tar.gz
sudo install -m 755 nexusedge /usr/local/bin/nexusedge

6. Create Config Directories

sudo mkdir -p /etc/nexusedge/config \
              /var/lib/nexusedge/vault \
              /var/lib/nexusedge/aegisdb \
              /var/log/nexusedge
# Copy and edit site.toml from the example:
sudo cp config/site.toml.example /etc/nexusedge/config/site.toml

7. Create Systemd Service

# /etc/systemd/system/nexusedge.service
[Unit]
Description=NexusEdge Hailo Edition
After=network.target hailort.service

[Service]
Type=simple
User=root
WorkingDirectory=/etc/nexusedge
Environment=NEXUSEDGE_HEADLESS=1
ExecStart=/usr/local/bin/nexusedge
Restart=always
RestartSec=10
LimitNOFILE=65536
MemoryMax=512M

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now nexusedge

8. Verify

curl http://localhost:8000/        # Should return HTML
curl http://localhost:6100/health  # Talos daemon health

MegaBAS Firmware Update

Boards should run firmware v2.07+:

cd /tmp/megabas-rpi/update
echo "yes" | sudo ./update64 <stack>  # One board at a time, service stopped

Supported Board Types

NexusEdge supports 8 Sequent Microsystems I/O board types. See Equipment Types for the full board table.

NexusEdge Hailo Edition


Home

Getting Started

Platform

Data & Deploy

Security


Landing Page | Console

AutomataNexus LLC

Clone this wiki locally