ControlHub โ€“ updates and security

Install during a maintenance window

Checking and downloading do not install software. Back up, check prerequisites and plan a maintenance window before manual installation.

For offline systems, open this page on a connected computer. Download only an approved release and verify its publisher, checksum and prerequisites. The installation instructions describe backup and recovery.

Downloads ยท Installation instructions

ControlHub โ€“ updates and security

Installation instructions

Preparation and backup

Compare the installed version, runtime mode, data location, Windows and XProtect versions with the selected release prerequisites. Do not update unknown or unsupported source states. Plan a maintenance window and the responsible Windows identity.

Create a complete, recoverable customer backup including snapshot archives, configuration and protected keys before starting. The additional update backup does not contain a full copy of snapshot archives. Check free space for the package, backup and recovery.

Manual installation

Use only an explicitly approved package. Before running it, compare SHA-256 with the published evidence and check the file properties for a valid digital signature from the approved publisher. A checksum alone does not replace a signature. Do not run an untrusted or withdrawn package.

Run Setup in the maintenance window with the intended administrative identity and check the detected installation. Keep the service account, data location and keys. Setup backs up the bound installation before replacement and checks its restart. Retain the backup and journal. Then verify login, licence rights, camera data, snapshots and the intended runtime mode.

Failure and recovery

On failure, retain the backup and journal. Do not uninstall, initialize a new database or reset keys or licensing. Recovery requires the same machine and Windows SID as the backup. It resets the database to the backup time; later changes are not automatically included.

Select the correct operation directory under %ProgramData%\EITS-ControlHub-UpdateBackups. Verify the saved recovery.exe against recovery-tool.json and run the command below in elevated PowerShell under the same identity. Replace the placeholder with the actual operation directory. On failure, continue the same operation and contact support; do not delete the backup.

$operation = 'C:\ProgramData\EITS-ControlHub-UpdateBackups\<installation-id>\<operation-id>'
$proof = Get-Content -LiteralPath (Join-Path $operation 'recovery-tool.json') -Raw | ConvertFrom-Json
$helper = Join-Path $operation 'recovery.exe'
if ((Get-FileHash -LiteralPath $helper).Hash.ToLowerInvariant() -ne $proof.sha256) {
    throw 'Recovery helper hash mismatch'
}
& $helper setup-update restore --backup-root (Split-Path $operation -Parent) `
    --operation-id (Split-Path $operation -Leaf) `
    --result-file (Join-Path $operation 'restore-result.ini')
$restoreExit = $LASTEXITCODE
Get-Content -LiteralPath (Join-Path $operation 'restore-result.ini')
if ($restoreExit -ne 0) { throw 'Recovery incomplete; retain backup and journal' }

After successful recovery, verify the previous application version, login, data and runtime mode. This local recovery procedure does not cover changing the machine or identity. For offline systems, transfer approved information and the verified package from a connected computer; perform the same checks on the destination.