Skip to content

Repository files navigation

Niagara Switch

Switch the active Niagara daemon, start Workbench, and read the local Host ID from one focused Windows utility.

Built with PowerShell 5.1 + WinForms. Supports multiple Niagara 4, Niagara 5, and Optimizer Supervisor installations without manually changing terminals or service paths.

Niagara Switch with multiple Niagara installations and Host ID reader

Windows PowerShell Release Downloads WinForms PS2EXE

Download · Features · Installation · Usage · Build

Buy Me A Coffee

Features

Feature What it does
Multiple installations Add, edit, remove, or scan Niagara and Optimizer Supervisor installations from one list.
Daemon switch Runs plat installdaemon for the selected installation, then opens Workbench after a configurable delay.
UAC-aware Relaunches itself as administrator when the Windows service operation needs elevation.
Host ID reader Calls nre.exe -hostid and recognizes legacy IDs plus Niagara 5 WINN5-... IDs.
No console window The release EXE runs as a native WinForms application with its own icon.
Persistent settings Saves the installation list and Workbench delay in %APPDATA%\Niagara Switch.
Legacy migration Imports an existing niagara-installations.json next to the script on first run.

Installation

Download (recommended)

Download NiagaraSwitch.exe from the latest release and place it anywhere convenient.

The executable is self-contained. On its first launch it creates its configuration under:

%APPDATA%\Niagara Switch\niagara-installations.json

The executable is not code-signed. Windows SmartScreen may ask for confirmation on first launch. Download only from this repository's releases and review the source when required by your IT policy.

Requirements

  • Windows 10 or Windows 11
  • A locally installed Niagara 4 / Niagara 5 / Optimizer Supervisor runtime
  • Administrator approval only when changing the Windows Niagara daemon service

Usage

  1. Launch NiagaraSwitch.exe.
  2. Select an existing installation or use Aggiungi to add a new one. You can provide either the installation root or its bin folder.
  3. Select an installation and press Host ID to read the local Niagara Host ID.
  4. Press Avvia to install and start that installation's daemon. Confirm the UAC prompt when requested.
  5. Workbench opens after the delay configured in the details panel.

The app detects a successful daemon setup from Niagara's output even when plat installdaemon returns a non-zero exit code after reporting that the service was installed and startup was initiated.


Build from source

Clone the repository on Windows and run:

git clone https://github.com/zEhmsy/NiagaraSwitch.git
cd NiagaraSwitch
powershell.exe -NoProfile -ExecutionPolicy Bypass -File ".\Build-NiagaraSwitch.ps1"

The build script installs the ps2exe module for the current user if needed, then creates:

dist\NiagaraSwitch.exe

The build is x64, STA, DPI-aware, packaged without a console, and uses NiagaraSwitch.ico as the application icon.

Source layout

NiagaraSwitch.ps1         # WinForms application and Niagara operations
Build-NiagaraSwitch.ps1   # Creates the distributable EXE with PS2EXE
NiagaraSwitch.ico         # Windows application icon
NiagaraSwitch.svg         # Editable icon source
niagara-installations.json # Legacy/default installation list

Contributing

Contributions and installation-path reports are welcome.

  1. Fork the repository.
  2. Create a branch (git checkout -b feature/my-change).
  3. Test on the Niagara versions you support.
  4. Open a Pull Request with the observed Niagara output when changing daemon or Host ID handling.

Found a problem? Open an issue.


Support

Buy Me A Coffee

Built for the less glamorous side of switching Niagara versions.

About

Windows utility for switching Niagara daemon installations, launching Workbench, and reading local Niagara Host IDs.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages