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.
Download · Features · Installation · Usage · Build
| 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. |
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.
- 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
- Launch
NiagaraSwitch.exe. - Select an existing installation or use Aggiungi to add a new one. You can provide either the installation root or its
binfolder. - Select an installation and press Host ID to read the local Niagara Host ID.
- Press Avvia to install and start that installation's daemon. Confirm the UAC prompt when requested.
- 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.
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.
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
Contributions and installation-path reports are welcome.
- Fork the repository.
- Create a branch (
git checkout -b feature/my-change). - Test on the Niagara versions you support.
- Open a Pull Request with the observed Niagara output when changing daemon or Host ID handling.
Found a problem? Open an issue.
Built for the less glamorous side of switching Niagara versions.