A short orientation. Read this once and the rest of the manual
will make sense whichever part you jump to.
What it is
Engage Ops puts live screens, windows, and cameras onto a display wall over
the network. Someone at a desk shares their screen; a second later it is on the
wall. An operator decides what goes where. Nobody runs a cable, and nobody
installs a capture card.
It is built for rooms that stay on: command centers, network and security
operations, dispatch, briefing rooms, live event production.
There are three jobs to be done with it, and this manual is organized around
them. You probably only need one.
Sharing something
You want your screen on the wall. Read Part 02. Ten
minutes, no background needed.
Running the wall
You decide what appears and where. Read Part 03, and
skim Part 02 so you can help contributors.
Installing it
You set the system up and keep it running. Read
Part 04 and Part 05.
The pieces
One computer drives the wall. This manual calls it the
Engage Ops host. It runs everything: the web console people
sign in to, the signaling that introduces contributors to the wall, and the
renderer that actually paints the displays.
Operators work in a browser, or in the Control App
— the same console in an installed window, without the browser's certificate
warning.
Everything else is a browser or an app on somebody's machine — with one
exception. A machine with a camera or capture card can run the Capture
Device Server, which offers its inputs to the wall for an
operator to choose from, with nobody sitting at it. The host runs one for
its own hardware automatically. See Capture
Devices.
Two separate paths. Video and audio go straight from each
contributor to the host and never pass through the operator's browser. The
operator's console only sends layout instructions. This is why the wall keeps
running perfectly when the operator closes their laptop.
Worth knowing
Because the operator console is just a web page, you can run the wall from
a phone, a tablet, or any machine on the network. There is nothing to install
to operate a wall.
Canvas, tiles, sources, widgets
Four words appear constantly. They are worth two minutes.
Source
One thing somebody is sending: a screen, a window, a region of a screen,
or a camera. One person can send several.
Canvas
The operator's map of the wall. What you arrange in the console is a
scaled-down picture of the real displays, so a tile in the top-left of the
canvas appears in the top-left of the wall.
Tile
A source placed on the canvas. A source that is connected but not yet
placed has no tile and is not on the wall.
Widget
Something Engage Ops generates itself rather than receiving from a
contributor. Today that means clocks. Widgets are always available and cost
you nothing — see below.
The distinction that trips people up: connected is not the same as
on the wall. A contributor can be successfully sharing and still see
nothing on the wall, because the operator has not placed them yet.
How much fits
Nine sources on the wall at once, plus four widgets. That is
the number to plan a room around.
Separately, twelve sources can be connected. The gap is
deliberate and useful: three contributors can be signed in and streaming, ready
to go up the moment the operator wants them, without occupying space on the
wall.
Limit
Value
What happens at the limit
Sources on the canvas
9
A tenth cannot be placed. It stays connected and stays in the source
list — remove something from the canvas to make room.
Widgets on the canvas
4
Exempt from the nine. A wall can show nine sources and four clocks.
Connected sources
12
The next contributor is refused with All renderer slots in
use. Their client keeps retrying and joins when a slot frees.
Each layout gets its own nine
Freeform and Grid are counted independently. Nine tiles in your Freeform
layout does not use up any of the nine available in Grid, so you can keep both
arrangements fully populated and switch between them.
Connected is not the same as placed
This is worth saying twice. A contributor who is streaming happily but
cannot see themselves on the wall is usually not experiencing a fault —
the canvas is full, or the operator has not placed them yet.
Part 01
Getting Started
One screen on the wall, start to finish. This assumes Engage Ops
is already installed — if it is not, do Part 04 first.
First, connect to the console
Everything an operator does happens in the console, so start by getting into
it and confirming the wall is running.
Open the console
On the host machine, or any machine on the same network, browse to:
https://<host>:8443/control/
From the host machine itself you are signed in automatically. From
anywhere else you will be asked for the Control UI password, which on a new
system is password.
Change it as soon as you have finished looking around — see
Access control.
Seeing a certificate warning is expected on a fresh system. You can
click through it for now — see
Getting past the certificate warning below for
the two clicks. Certificates in Part 04 explains how to
make it stop happening at all.
Check the wall is alive
Look at the physical displays. An idle Engage Ops wall shows a welcome
screen with the logo and the address contributors should visit. If the
displays are black or the welcome screen only covers one monitor, set up
display placement before going further.
Find the PIN and the share link
In the console, open Settings → Control → Source
sharing. You will see a five-digit Source-client PIN
and a Source page URL, with a Copy button.
https://<host>:8443/source/
Send both to whoever is sharing. That is the whole invitation.
Keep the link and PIN handy
These two are all anybody needs to get onto the wall, and you will hand
them out constantly. The PIN changes only when you regenerate it.
Your first source
With the console open and the PIN in hand, put something on the wall.
Share a screen
On the contributor's machine, open the source page, enter the PIN, and
choose Add Source. Pick a screen or a window and
confirm. Their tile now says Streaming.
Put it on the wall
Back in the console, the source appears in the source list down the side.
Drag it onto the canvas. It is on the wall before you let go of the mouse.
If it went up by itself, Auto-place new sources is
switched on under Settings → Control →
Streams.
That is the whole loop
Share → appears in the list → drag to canvas. Everything else in
this manual is refinement on those three steps.
Getting past the certificate warning
On a system whose certificate has not been set up yet, Edge and Chrome both
block the page with Your connection isn't private and the code
NET::ERR_CERT_AUTHORITY_INVALID. Your browser is saying it does not
recognize who issued the wall's certificate — which, on a brand-new
install, is true and expected.
It takes two clicks to continue. They are the same in Edge and Chrome; only
one word of the link text differs.
Click here
Step 1 — click Advanced. The button is at the bottom
left, opposite the blue Go back button. Clicking it expands an extra
paragraph and a link. The address is masked in these two captures; you will
see your own wall's address in its place.
Click here
Step 2 — click the link at the bottom. Edge words it
Continue to … (unsafe); Chrome words it Proceed to …
(unsafe). Same link, same result — the console loads.
You will see it again
The exception usually lasts for the browser session, so the warning comes
back on other machines, in private windows, and after a browser restart. That
is the reason to fix it properly rather than living with it.
Only do this for a wall you know
Clicking through a certificate warning is safe here because you know what
is at the other end: your own Engage Ops host on your own network, warning you
only because nobody has installed its root certificate yet.
The same warning on any other site means what it says. Do not teach your
contributors to click through warnings as a habit —
install the root certificate instead, and the warning
disappears for everyone permanently.
Part 02
Sharing a Source
For contributors
Getting your screen, a window, or a camera onto the wall. You need
two things from whoever runs the wall: a link and a PIN.
Browser or app
There are two ways to share. The browser needs no install and handles most
situations. The Windows app does more.
Browser
Windows app
Install needed
No
Yes
Whole screen
Yes, on a computer
Yes
Single window
Yes, on a computer
Yes
Region of a screen
—
Yes, drag to select
Camera / capture device
Yes
Yes
Several sources at once
Yes
Yes
System sound
Limited — browser dependent
Yes
Mixing several audio inputs
—
Yes, live
Live thumbnails when picking
Browser's own picker
Yes
Choose the encoder
—
Yes
Use the browser if you are sharing once, from a machine you do not control,
or from a Mac or Linux box. Use the app if you share regularly, need system
audio, or need to send a region rather than a whole screen.
From a phone or tablet the browser is the only option, and it sends a camera or
a microphone rather than a screen — see
From a phone or tablet.
Getting in
Three ways, and the operator decides which are available.
With the PIN
Enter the five-digit PIN and you are in immediately. This is the normal path.
If you do not have it, the operator reads it off the top of the Settings pane in
Engage Ops Control.
With no sign-in at all
From the wall machine itself, or from an address the operator has put on the
trusted list, there is no PIN and no waiting: give a name and you are on. Somebody
sharing from the machine the wall runs on is already standing at the wall, so
reading a PIN off the screen in front of them is a pointless step.
Request to join
No PIN? Choose Request to join, give your name, and
wait. The operator gets a notification and approves or declines. You stay on a
waiting screen until they answer; approval connects you automatically.
Requests expire after about five minutes. If yours lapses, submit again.
Certificate warning
If your browser warns that the connection is not private, the wall is using
a certificate your machine does not trust yet. This is common and does not
mean anything is broken. Ask the operator for the root certificate —
installing it once removes the warning permanently.
Until then you can continue past it:
Getting past the certificate warning shows the two
clicks in Edge and Chrome. Operators who run the console every day have a third
option — the Control App, which has no warning
to click through.
From a browser
Open the link and sign in
Go to the source page URL and enter the PIN, or request to join.
Add a source
Choose Add Source. Your browser asks what to
share — a whole screen, an application window, or a browser tab. Pick
one and confirm.
To send a camera instead, pick the camera under
Video input. To send only sound, choose
Audio only.
Check it says Streaming
Your card should show Streaming. If it says Waiting,
the operator has not placed you on the wall yet — you are connected
and nothing is wrong.
Add more, or stop
Repeat for a second screen or a camera. Disconnect
all takes everything down at once.
From a phone or tablet
The same page, and the same PIN. What changes is what you can send: phone and
tablet browsers have no screen-sharing capability at all — the operating
system does not offer one — so the page offers what the device can
do, a camera or a microphone, and says in one
line why the rest is missing. Nothing is broken and there is no setting to find.
Cameras are listed by which way they face rather than by name, with the
back camera first: holding a phone up to show the room, a
whiteboard or a piece of equipment to the wall is the common case, not a selfie.
The fastest way onto a wall
Point the phone's camera at the QR code on the welcome screen, open the link,
type the PIN, and send the back camera. Nothing to install, no address to read
off a screen across the room.
One tab only
Engage Ops allows a single source tab per machine. Opening a second gives
you Engage is already open in another tab, with
Switch to that tab and Take
over. Take over moves the session to the new tab and ends the old one
— useful when the first tab is on a monitor you can no longer reach.
Leaving the page ends your share
Closing the tab, navigating away, or letting the machine sleep drops your
sources off the wall. Leave the tab open in the background.
From the Windows app
Connecting the first time
Launch the app and it asks you to Connect to your Engage Ops
system. Enter the address of the wall, then the PIN. Once accepted the
app shows Paired and remembers the system — next
launch it reconnects on its own.
Picking what to send
Add source opens the picker, which has three
sections:
Displays
Your monitors, with live thumbnails.
Application
Individual open windows, searchable by name.
Devices
Cameras and capture cards, with a live preview. Each one
lists every format it advertises — pick the resolution and frame rate you
want, and which audio input goes with it.
Click a tile or Full to send the whole thing. Choose
Area to drag out a region — only that rectangle
goes to the wall.
Sharing straight from the taskbar
On Windows 11, while the app is signed in, hovering any window's taskbar button
shows its thumbnail with a Share this window button on it
— the same place Teams puts one. Click it and that window goes to the wall
without opening the app's picker at all: it is added with the picker's defaults, 30
fps with audio and the cursor included. The thumbnail then reads
Stop sharing, which removes it again. A window that is
already a source will not be added twice.
If the button is not there
It needs Windows 11 — on Windows 10, or an older Windows 11 build, it
simply is not offered and everything else works as usual. You also have to be
signed in: with nothing signed in there is no wall to share to, so the button
goes away. And Windows itself can switch the feature off for every app, under
Settings → Personalization → Taskbar → Taskbar
behaviors → Share any window from my taskbar.
Reading the status badges
Each source card carries a badge. This is the most useful thing in the app,
because it tells you whether you are actually on the wall.
Badge
Meaning
What to do
ON AIR
Connected and visible on the wall right now.
Nothing. You are live.
READY
Connected, but the operator has not placed you.
Nothing is wrong. Ask the operator if you expected to be up.
PRIVATE
You have paused this source. The wall shows black.
Turn privacy off when you want to be seen again.
HELD
The window or region you were sending has gone away.
Reselect the window, or remove the source.
Not updating
The window you are sending is minimized, so it produces nothing new.
The wall is showing your last picture.
Restore the window. The operator sees this too.
Not responding
Windows says the application you are sending is hung.
Wait for it, or send something else in the meantime.
No desktop attached
Your remote session was disconnected without signing out, so there is
nothing on this machine to capture.
Sign back in to that machine.
No new frames
Nothing has changed in what you are sending. Normal for a static page
or a dashboard.
Nothing, unless it should be moving.
Connected is not the same as on the wall. Your client says
READY as soon as media is flowing; it only says ON AIR once the operator has
placed you on the canvas.
If the wall is full
With twelve sources already connected you will see All renderer slots
in use. The client keeps retrying by itself and joins the moment somebody
disconnects — there is no need to keep clicking.
Sending audio
The Windows app can send your system sound, a microphone, or both mixed
together, as a single audio stream. You can add and remove inputs while you are
live, and set gain or mute each one independently.
Audio is carried at full stereo quality rather than the voice-optimized,
heavily processed audio a conferencing tool would send, so music and alarm tones
come through as they actually sound.
A source that sends only sound still gets a tile if the operator places
it. It reads Audio Only over a sound wave that moves with what the
wall is playing from you — so the room can see at a glance that your feed is
alive, and that it is the one being heard.
One audio stream per person
Each connected client sends one audio track. Sharing three screens does not
give you three independent audio channels — it gives you one mix. That is
what the mixer is for.
Why nobody can hear you
Only one source at a time is audible in the room, and the operator chooses
which. If your audio is not coming through, you are almost certainly sending
it correctly and a different source currently owns the room's sound. Ask the
operator to switch it to you.
Quality settings
The defaults are correct for almost everyone. Engage Ops adapts resolution
and frame rate automatically when the network tightens. Change these only for a
specific reason.
Resolution
Caps how large a picture you send. Lower it if your upload is
constrained.
Frame rate
Leave high for video and moving dashboards; lower it for a static page to
free up bandwidth for detail.
Video codec
How the picture is compressed. Leave on the default unless you are
troubleshooting with support.
Encoder
Which piece of hardware does the compression. Auto
picks for you. Choosing a specific graphics card can help on a machine with
more than one.
Sending a 4K screen
High-resolution sources are supported and are scaled to the size of the tile
they land in. A source shown in a small tile does not need to be sent at full
resolution — if your upload is struggling, that is the first thing to
turn down.
Privacy and pausing
Privacy blanks your source on the wall without disconnecting it. The tile goes
black, your audio goes silent, and your slot stays reserved. Turning it off puts
you back instantly — there is no reconnection and no gap.
Use it when you need to check email, enter a password, or handle something
you would rather not put on a wall in a room full of people.
Nothing leaves your machine
Privacy stops the picture before it is encoded. While you are private, no
image of your screen is being sent anywhere — it is not just hidden at
the far end.
The operator has an equivalent control for the whole wall; see
Blank Screen.
When your network drops
You do not have to do anything. Both clients reconnect on their own, waiting
a little longer between each attempt, and your sources return to the same places
on the wall.
This covers dropped Wi-Fi, an unplugged cable, a disabled adapter, a VPN
reconnect, and the wall itself restarting.
What does not come back by itself:
A browser tab that was closed — open the page again.
A machine that went to sleep — wake it and check the client.
A shared window whose application quit — the app marks it
HELD; pick the window again.
Across networks
Contributors do not have to be on the same network as the wall. Sharing
works across subnets and over a VPN, provided the source page is reachable. If
your organization restricts peer-to-peer traffic, the administrator may need
to enable a relay — see Network and ports.
Part 03
Operating the Wall
For operators
Everything you do from the console: arranging the wall, letting
people in, and keeping it looking the way the room needs it to look.
Open https://<host>:8443/control/ from any machine on the
network — 8443 unless an administrator has moved the port. From the host
itself you are signed in automatically; from anywhere else you need the Control UI
password. On a system nobody has configured yet
that password is password, which your administrator should have
changed — if it still works, tell them.
Several people can have the console open at once. Everyone sees the same
canvas, and a change one operator makes appears immediately for the others.
Open it on a phone and you get a different interface built for a thumb —
see The phone remote.
Three regions. The toolbar sets the mode for the whole wall.
The canvas is a scaled map of the physical displays — a tile in the
top-left of the canvas is in the top-left of the room. The source list holds
everything connected, placed or not; you get things onto the wall by dragging
them left.
You can move the source list to the left, right, or bottom edge under
Settings → Control → Source list.
The phone remote
The same address on a phone gives you a wall remote, not the desktop console
squeezed onto a small screen: the things you do standing in front of the wall,
laid out for one hand. It talks to the same system as the desktop console, so anything you change
on it appears on every other operator's screen at once.
Which interface a browser gets is decided by what you are pointing with,
not by how wide the window is. A touch device with a small screen gets the remote;
a desktop window dragged narrow next to another application is still driven by a
mouse, so it keeps the full console and simply rearranges itself.
What is on it
Wall
A live picture of the wall with every placed source, and the list of what is
on it. Tap a source to manage it. In Freeform you can also arrange it with your
fingers: drag to move, pinch to resize. The gesture works
anywhere on the preview, not just on the tile, because a tile that small has no
room for two fingers. A locked tile can only be selected, not moved. The
Freeform / Grid switch and the blank-screen button are here too.
Sources
Everything connected, placed or not, and the way to put one on the
wall.
Environments
The same saved layouts as the desktop — which is the point of carrying
this in your pocket: you can load Incident from the doorway.
More
Users, Settings, sign out, and Switch to full console
for this device.
Tapping a source opens a sheet with its controls: add to the wall, spotlight,
mute, name label, lock, permanent, remove. In Grid you also get a cell picker and
span controls; in Freeform, snap presets, nudge arrows and smaller / larger.
What it deliberately leaves out
Staging, the projection and renderer-placement editors, monitor alignment, the
logs timeline, and the grid's own size are setup and precision work. They stay on
the full console, where there is room to do them properly.
The colors of your own console
Three more settings in Settings → Display → Control
UI change how the canvas looks to you, and never touch the wall:
Preview canvas color fills the wall preview,
Letterbox color fills whatever your wall's shape leaves
uncovered around it, and Guides color draws the dots and
grid lines, following the canvas color by default so the guides stay faint against
it. Type a hex value (#1a2b3c) or R, G, B numbers, or click the swatch
and pick. Like the theme, these are remembered on that device only — a dark
room and a bright office can each have what suits them.
Choosing the interface yourself
Settings → Display → Control UI →
Interface: Automatic, Full console or Phone
remote. Automatic is the rule above. The choice is remembered on that device
only, so putting one phone on the full console does not change anybody else's.
The remote's More tab has the same switch.
The wall's layout mode is shared, and the remote respects it
A phone signing in never changes Freeform or Grid on its own. The switch on
the Wall tab changes it only when you tap it — exactly like the toolbar
switch on the desktop.
The Control App
The console in a browser means a certificate warning on every machine that has
not been given the system's root certificate — see
Getting past the certificate warning. The
Engage Ops Control App is the way around that for the people who
operate a wall every day: an installed Windows application that runs the same
console in its own window, with no warning to click through and nothing to import
into Windows.
It is the operator's counterpart to the Windows source app, and it is a control
surface only — there is no + Add Source button in it.
Sharing still happens from the source app or the source page, which is what the
hint in its place says.
Signing in
Pick the system
Find systems on my network lists the walls that
answer on the local network; or type an address if discovery is not available
to you. On the wall machine itself there is nothing to sign in to — it
is already trusted, as the browser console is.
Enter the controller password
The same password the browser console asks for.
Remember password is on by default and keeps it in
Windows Credential Manager, so later launches show Saved password and
an empty submit signs you in.
After that, it opens on the wall
A remembered system reconnects at launch and goes straight to the console.
Sign out ends the session but keeps the saved password,
the way a browser does; the × on a saved system
forgets both.
Installing it
Copy its folder to the operator's PC — somewhere the signed-in user can
read, such as %LOCALAPPDATA%\Programs\EngageOps\Control\, which
needs no administrator rights — and make a shortcut to
engage-ops-native-control.exe. The ui folder beside it
must stay there. There is no installer, and no runtime to add: Windows 11 already
has the WebView2 component it needs, and on Windows 10 you may have to install
Microsoft's Evergreen WebView2 runtime if the window opens blank.
It needs the control port (8443 by default) to the system.
Find systems on my network also needs UDP 47820 on the
local network; typing the address works without it.
It removes the warning, not the risk behind it
The app accepts the certificate of the system you connect to, and only that
system's. What it does not do is check that the machine answering at
that address is the wall you meant — which is also true of clicking through
a browser's warning, and is exactly what importing the root certificate would
prevent. On a network where somebody could impersonate the wall, they could
collect the controller password. Use the app on networks you trust, and import
the root certificate where you need the stronger guarantee.
Freeform and Grid
The wall is always in one of two modes, chosen at the left of the toolbar.
Freeform
Put tiles anywhere, at any size, overlapping if you want. Full control,
and you do the arranging.
Grid
Tiles snap into an even grid you size yourself — up to 8 columns by
8 rows. Tidy by construction.
In Grid mode, Cols and Rows
fields appear in the toolbar. Change them and the wall re-flows immediately.
The two layouts are kept separately
Switching from Freeform to Grid does not destroy your Freeform arrangement.
Each mode remembers its own placements, so you can flip between a carefully
composed Freeform layout and a quick even Grid, and back, without rebuilding
either.
Placing sources
Drag a source from the list onto the canvas. In Freeform, drop it where you
want it and drag its edges to resize. In Grid, it snaps to a cell.
To take something off the wall, use Remove on the
tile. The contributor stays connected — they return to the source list and
can be placed again instantly.
Nine at a time
A layout holds nine sources. With nine placed, a tenth will not go on
— remove something first. Widgets do not count toward the nine, and the
Freeform and Grid layouts each get their own nine.
Nothing is wrong with the tenth source. It is connected and waiting in the
list; the wall is simply full.
Auto-place
Settings → Control → Sources → Auto-place new
sources puts every new arrival onto the canvas automatically. Good for an
open collaboration session; switch it off when you want to vet what reaches the
wall.
In Freeform it does more than place the newcomer. While it is on, Engage owns
the arrangement: every source joining or leaving repacks the whole wall into a
space-filling layout. You can still drag and resize by hand, but the next repack
overwrites that — use Lock on a tile to hold its
position and size while the rest keep repacking. In Grid, a newcomer takes the
first free cell and the tiles already placed stay where they are.
Lock every tile and there is nowhere to pack
With auto-place on and every tile locked, the next source to connect has no
space it is allowed to use. It stays in the source list, unplaced.
Sources that disconnect
When a contributor drops, their tile does not vanish. It becomes a
placeholder reading Waiting for connection, holding the spot, so that
when they reconnect they land back exactly where they were.
To clear those out automatically, turn on Expire missing
sources and set a timeout under Settings → Control
→ Sources. Off by default — a placeholder is held until you
remove it. With it on, the placeholder shows a live countdown to its own
removal.
Tile controls
Hover a tile on the canvas and its controls appear. On a small tile they
collapse behind the … button.
Control
What it does
Mute / Unmute
Chooses which source is heard in the room. See the note below
— this one has a rule attached.
Lock
Freezes position and size so the tile cannot be dragged by accident.
Use it on anything that must not move mid-incident.
Permanent
Pins the tile to the wall so it cannot be removed. Clear the pin
before you can take it down. For the feed that must never be closed by
a stray click.
Name label
Draws the source's name on the wall itself, so the room can see whose
screen is whose.
Spotlight
Blows one source up to fill the wall, as large as it will go
without distorting it — a source whose shape differs from the
wall's keeps its own shape and leaves the rest of the wall empty.
Click again to return everything to where it was.
Remove
Takes the tile off the canvas. The source stays connected.
Only one source is audible at a time
Unmuting a source mutes every other source on the wall. This is deliberate
— nine unmuted screen shares in a control room is noise, not
information. So audio is a single choice: whose sound is in the room right
now.
Each layout remembers its own audio choice, and audio only plays if that
source is actually connected and placed. If a contributor tells you their
audio is not coming through, it is almost always because a different source
currently owns the room.
An audio-only source on the canvas
A source with no picture can still be placed, and its tile says
Audio Only over a sound wave. The wave follows what the
wall is actually playing from that source, which makes it a live check on
the room's sound: it moves while you can hear it, and sits flat while the source
is silent, muted, or off the canvas. A flat wave on the source you just unmuted
means the contributor is sending silence, not that the wall dropped it.
Name labels
Text size and scroll direction for the on-wall labels are under
Settings → Control → Name labels. Set these
once for the room — from twenty feet away the default may be too
small.
When a source stops updating
A source that has stopped producing new pictures does not look any different
on the wall: capture keeps re-sending the last frame it had, so the tile is a
perfectly healthy stream of a picture that may be minutes old. Nothing at the wall
can work that out for itself, so sources report it, and the console puts a badge on
the card and on the tile.
The badges come in two kinds, and the difference is deliberate.
Something is wrong, and we know what
Not updating
The captured window has been minimized. It produces no frames while it is,
and the wall is showing the last picture it made. Ask the contributor to restore
the window.
Not responding
Windows reports the captured application as hung. The wall is showing the
last picture it made before it stopped answering.
No desktop
The source machine has no desktop to capture — a remote session was
disconnected without signing out. Nothing composites there, so no capture of any
kind can produce a frame. Somebody has to sign back in to that machine.
Region held
The display a region was drawn against is no longer at that resolution, so
the source is holding the region rather than streaming whatever reflowed into
it. The contributor reselects the region.
A statement of fact, not a fault
No new frames · 12 min
No new pixels for that long, and no reason available. This is exactly what a
genuinely static source looks like — a dashboard, a slide, a status board
— so it is reported without alarm. If that source should be moving, it has
stopped; if it is a wall-mounted duty roster, it is doing its job.
Private
The contributor has privacy on and the wall is showing a PRIVATE card. Real
pixels never leave their machine while it is on.
Times are coarse on purpose — "a few seconds", "5 min", "1 hr 20 min".
They are read to answer is this stuck, and they are stamped by the source's
own clock, not the wall's.
No badge is not a clean bill of health
A source client older than this feature never reports at all, and a source
that says nothing is shown as saying nothing rather than as healthy. What a badge
tells you is positive information; its absence is not.
The source list
Everything connected, split into Sources and
Widgets, each with a count so you can see how close to the
limit you are.
+ Add Source opens the source-join page in a new
tab — a quick way to put something up from the operator machine
itself.
+ Add Capture Device puts a camera or capture card
that is plugged into some other machine onto the wall. Once you have some it
reads Manage Capture Devices. See
Capture Devices.
Search matches on source name, contributor name, or
internal ID.
Sort reorders the list; useful once you are past a
handful of sources.
Two bulk buttons sit at the top of the panel. They are not the same button
with different wording, and the difference is the whole point:
Remove All
Clears the layout you are looking at. Tiles come off the canvas;
every source stays connected and can be placed again from the
panel whenever you want. The other layout is untouched, and pinned
(Permanent) tiles are left where they are — which
is why the button grays out on a layout holding nothing but pinned tiles.
Delete All
Disconnects every source and clears both layouts. It takes pinned sources
too, and says so before it does. Widgets are left alone. You are asked to
confirm, and the confirmation holds the button for a moment on purpose.
Delete All is not undo
It disconnects contributors, not just their tiles. Everyone has to share
again. Remove All is the one that clears the wall
without costing anybody their connection, and
Environments is the one to reach for if what you
actually want is a different arrangement.
Capture Devices
A Capture Device is a camera, capture card or audio input plugged into
some other machine, put on the wall by you rather than by whoever sits at
that machine. Nobody has to be at the far end: the operator picks the device and
it starts streaming.
A machine offers its inputs by running the Capture Device
Server, and there are two ways that happens:
This system
The Engage Ops host offers its own hardware with nothing to install and
nobody to log in — it is started and supervised along with everything
else. A capture card in the wall machine is available the moment the system
is up.
Any other PC
Install the Capture Device Server on it. Somebody signs it in to this
system once, the same way a contributor signs in, and from then on its inputs
are offered to you. It has a small window listing what it is currently sending
and a Close button; closing it does not take anything off the wall.
+ Add Capture Device in the source panel opens the
picker. It lists every machine that is offering devices, grouped by machine,
with the connection slots you have left across the top.
Online / offline
Each machine says which it is. An offline machine stays listed rather than
vanishing — its sources are still on your wall — but nothing under
it can be added while it is away. Remove this machine
is there for one that is never coming back; it forgets the machine and deletes
its sources.
Checking which devices are free
The machine is asked what it can actually open. A device another program
already holds comes back unavailable, with the reason the machine gave.
Capture mode and audio
Pick the format the device should run at, and whether to bring in the audio
paired with it, a different input, or none. Both can be changed later from the
device's card.
Add one and it becomes a card in the picker's first pane and a source in the
panel — connected, but not placed. Drag it onto the canvas
like anything else. Rename it, change its mode, or take it off the wall from its
card.
Inputs on that machine, not on yours
The picker is the easiest screen in the console to misread. It lists what is
plugged into each remote machine. The camera on the laptop you are
operating from is not here — that one you share the ordinary way, through
the source page.
They come back on their own
A Capture Device is remembered. Restart the system and it republishes itself
without anyone touching the machine it lives on — unlike a contributor's
share, which needs the contributor to share again. It uses a connection slot and,
once placed, a canvas slot, exactly like any other source.
Approving requests
If Request-to-Join is enabled, contributors without the PIN can ask to share.
A chip appears in the toolbar when someone is waiting; click it to see the
requests, each with the name they gave.
Approve and they connect automatically. Decline and they are told. Requests
expire on their own after about five minutes.
To turn the feature off entirely and require the PIN for everyone, use
Settings → Control → Request-to-Join. The same
place holds rate limits that stop a single machine flooding you with
requests.
Blank Screen
Blank Screen in the toolbar hides every source on the
wall at once. The room sees nothing; you keep your previews in the console and
can carry on arranging. Click again to bring it all back.
Use it when someone walks into the room who should not see what is up, or
while you rebuild a layout you would rather put together unobserved.
Nobody is disconnected
Blanking is visual only. Every contributor stays connected and keeps their
slot, so restoring is instant.
Designing what a blanked wall shows
By default a blanked wall falls back to its ordinary background. It can show
something of your own instead — a holding card, a logo, Session in
progress — which is better than a blank wall in a room people walk into
and wonder whether something is broken.
Switch on Settings → Display → Blank screen →
Custom blank screen, then open Customize. You build
the screen out of layers on a preview of your wall:
A background
One, underneath everything, and the same choices the wall background offers:
a gradient, an image, or an animated shader.
Up to nine text and image layers
In any mix. Text has its own size, color and alignment; an image has a choice
of how it fits its box, and a PNG keeps its transparency, so a logo sits directly
on whatever is under it. Both can be rotated and given a shadow.
Placing them
Drag a layer on the preview, or nudge it a wall pixel at a time with the
arrows. Layers snap to each other's edges and corners as you drag, with guides
showing what they lined up against — including layers you have rotated to
the same angle.
Nothing reaches the wall until you choose Apply to wall,
so you can drag a caption around without the room watching you do it. If the wall
is blanked while you are working, Apply shows the result immediately.
The design is kept when the feature is off
Turning Custom blank screen off does not discard your
layers — a blanked wall simply goes back to its ordinary background until
you turn it on again. Worth knowing: the canvas test pattern covers the blank
screen while it is on.
Widgets
Widgets are sources Engage Ops generates itself. Today that means clocks. They
behave like any other source on the canvas — drag, resize, place —
but they are always available and cost you neither one of the nine on-wall
slots nor one of the twelve connection slots.
Widgets have a pane of their own. Two ways into it:
Settings → Widget
Reads back how many widgets are defined and how many are switched on. The
button opens the pane.
The gear on a widget's card in the source list
Opens the pane on that widget, already selected — you have already
said which one you mean by clicking it.
The pane lists every widget down the left, each with a dot showing whether it
is on, and + Add date & time widget below the list
with a count beside it. Four is the limit. Select one and the right-hand side is
that widget in full:
Name
What the source list calls it, and what the on-wall name plate
shows.
On / Off
Off stops generating it: it leaves the wall and the source
list. The definition stays, and stays editable — setting a widget up
before switching it on is the normal order of things.
Delete
Removes the definition, and the widget with it. You are asked
to confirm. To keep a widget but take it off the wall, switch it off instead.
Time zone and caption
The point of having four: a row of clocks for
the regions you cover, each captioned with its city.
Clock
Digital or analog, with optional seconds and date, and a
choice of date format.
Appearance
Tile shape, font, bold, and colors for the time, for the
date and caption, and for the background.
Under the name, one line says where that widget currently is — switched
off, starting up, waiting in the source list, or placed on the wall — so a
widget you have not placed yet is never mistaken for one that is not running.
Saved with your environments
An environment saves the full definition of every widget it was saved with,
so loading one brings its clocks back as they were even if the widget has since
been changed or deleted.
Staging
Staging lets you build a layout without the room watching. Click
Staging, choose whether you are staging a Freeform or a
Grid layout, and arrange it off-air. Commit it and it replaces the live layout of
that type and becomes the active mode.
This is the tool for a planned transition: build the next configuration during
the current briefing, then switch in one action.
Staging survives a reload
A staging session lives on the server, not in your browser. Refresh the page
or hand off to another operator and the draft is still there.
Environments
An environment is a saved layout you can bring back later: the mode, every
placement, the grid size, and the per-tile settings such as pinned, labeled, and
which source owned the audio. Thumbnails are saved with it, so the list is
browsable months later.
Save the layouts your room actually uses — Morning brief,
Incident, Handover — and load one instead of rebuilding
it under pressure. The pane closes itself once a save lands, putting you back on
the wall you just captured; if the name is already taken it stays open and asks.
Loading an environment when sources are missing
An environment records which sources were placed. Load it when
those contributors are not connected and their tiles come back as placeholders
waiting for them. As each one reconnects, they drop into their saved position
automatically.
A placeholder holds a connection slot just as a live source does, so an
environment with missing sources can push the wall past the 12-source limit.
When it would, the Load confirmation names every source it has to remove to
make room — offline placeholders first, then the longest-connected
sources. Nothing the environment itself uses is ever removed. Cancel if a
source on that list is one you need.
What an empty wall shows
Four things can occupy a wall with nothing placed on it, all under
Settings → Display.
Welcome screen
The default. Shows the logo, the address contributors should visit, and a QR
code for it, so anyone walking into the room can get onto the wall without typing
anything. Customizable — see below.
Wall background
What sits behind your tiles. Set it to something the room reads well
against.
Screen saver
Kicks in after a set number of idle minutes. Several styles, including a
plain clock on black.
Canvas test pattern
For commissioning. Turn it on to check every display is aligned, correctly
ordered, and showing the right part of the canvas — then turn it off.
The QR code
Under Settings → Display → Welcome screen →
Customize, alongside the wording and the logo. Someone in the room points a
phone at it and lands on the source page; on a phone that means a camera straight to
the wall, with nothing to install and no address to read across a room.
In the card
The default: under the address, in the middle of the screen. Best on a single
display.
Custom position
Drag it in the preview to wherever works best in the room, or select it and
use the arrow keys. The card shortens and recenters to stay out of its way.
Move around the screen
Every ten seconds the code disappears and comes back somewhere else in the
empty space around the card. Useful on a big wall where one fixed corner is
awkward to reach. It overrides the position above.
A code split across a bezel cannot be scanned
So a QR code placed outside the card always lands wholly inside one display,
wherever you drop it — the preview outlines the displays your wall spans and
snaps the code to a spot that works. If there is no empty space big enough for it, the
wall keeps it in the card instead; a smaller text size usually makes room. In
projection mode there are no display edges to respect, so put it wherever it scans
most easily.
The animation at switch-on
A five-second Engage Ops animation plays across the wall when the system
cold-starts, then fades into whatever the wall normally shows. It is drawn on
the canvas itself, so it is geometrically correct on a projection wall and
remote viewers see it on Live View too.
It is deliberately not replayed when the wall software restarts
itself after a fault — a recovery that takes seconds should look like one.
So an unexpected animation means the machine rebooted, which is worth
knowing.
Live View
Live View streams the whole composited wall to a browser, so people who are
not in the room can watch what the room sees.
https://<host>:8443/liveview/
It is one view of the entire wall, not individual sources, and it is
view-only — a Live View viewer cannot rearrange anything.
Treat the Live View link as sensitive
Anyone who can reach that URL can see everything on the wall, including
sources shared by people who assume they are only visible in the room. Confirm
who has access before you hand the link out.
Part 04
Install & Administration
For administrators
Setting up an Engage Ops host, and the settings you will touch
once and then leave alone. This part assumes one host driving one wall.
Requirements
Requirement
Operating system
Windows 11
Graphics
A GPU supporting Vulkan 1.3 with a hardware video decode queue.
NVIDIA, AMD, and Intel are all supported; a discrete GPU is preferred
and is chosen automatically when present.
Displays
Any arrangement, from a single screen to a multi-monitor wall,
attached to the host.
Network
Reachable from contributor machines on TCP 8443 by default — the
port is configurable. Contributors may be on other subnets or a VPN.
Contributor machines
Browser sharing: any current browser. The native app: Windows.
Sizing the GPU
Decode load scales with the number and resolution of sources on the wall,
not with the wall's pixel count. A wall showing nine 4K sources needs
materially more decode capacity than one showing four. Sources that are
connected but not placed cost almost nothing — they decode as low-rate
thumbnails for the source list. Size for the busiest layout the room will
actually use.
Installing
Engage Ops is delivered as a Windows installer. Run it on the machine that
will drive the wall and accept the defaults — there is nothing to decide
during setup. Everything that needs configuring is configured afterward, from
the console.
When it finishes, go straight to the
first-boot checklist. That is where the real setup
happens.
Upgrading
Run the new installer over the existing one. Your configuration, PIN, saved
environments, and display placement live outside the install directory
— see Files and locations — so they carry
across.
Machines with cameras and capture cards
Nothing extra is needed on the host: it offers its own capture hardware by
itself. To offer the inputs of another machine — a podium PC with
a document camera, a rack machine with an HDMI capture card — deploy the
Capture Device Server to it and sign it in once. After that an
operator picks its devices from the console without anyone going back to that
machine. See Capture Devices.
First-boot checklist
In order. Each step assumes the one before it.
Open the console on the host
Browse to https://localhost:8443/control/ on the host
machine. Connections from the host are trusted automatically, so you are
signed in without a password — which is how you get in before a
password exists.
Change the Control UI password
A new system ships with the password password. Anyone who can
reach the host on the network can sign in and take over the wall with it.
Change it at
Settings → Control → Control UI password.
Leave Current password as password, set
the new one, and confirm.
Do this before the host goes onto a network anyone else can reach. While
the default is still in effect the console keeps reminding you, including on
the host itself.
Place the renderer across your displays
Settings → Display → Renderer window
placement. This is the step that turns a pile of monitors into a wall.
See Display placement.
Set up the certificate
Either import a certificate from your own authority or generate the
default one, then distribute the root to client machines. See
Certificates. Doing this now saves every contributor a
scary browser warning later.
Set the public address
Settings → Network → Public address →
Public URL. This is the address Engage Ops hands out in share links
and shows on the welcome screen. Without it, the console guesses from your
own browser's address bar, which may not be reachable from where your
contributors are.
Note the PIN and test a share
Settings → Control → Source sharing.
Share a screen from a second machine and confirm it reaches the wall before
you call the install done.
Decide the join policy
PIN only, or PIN plus Request-to-Join. See
Access control.
Only if contributors will come from outside this network
Set up STUN and the TURN relay, and prove the relay works before you need
it — a relay that was never tested is indistinguishable from one that was
never configured. Reaching the wall from outside. Skip this
entirely if everyone shares from the same network as the wall.
Display placement
The renderer runs as one borderless window stretched across the displays that
make up the wall. You define that window in
Settings → Display → Renderer window placement,
using a visual editor showing your monitors as the system reports them.
The placement is remembered along with a record of the monitor arrangement it
was set for. If the arrangement later changes — a display is unplugged,
reordered, or its resolution altered — the saved placement no longer
matches and the renderer falls back to covering the primary display only.
One wall shows up as one display
A wall on the primary monitor alone is the classic symptom of a changed
monitor arrangement. Open the placement editor and set it again; nothing is
broken.
Commissioning aids
Canvas test pattern and
Align displays to grid, both under
Settings → Display, exist for exactly this job.
Turn the test pattern on while you set placement, confirm each panel shows the
part of the canvas you expect in the order you expect, then turn it off.
Wall audio output
Whichever source currently owns the room's audio, the wall plays it through one
output device, configured under Settings → Audio.
Device
default lets Windows pick, which is almost always what you
want. Name a device only to pin the wall to a specific output — an audio
interface that must be used regardless of what Windows has decided is default
this week.
Sample rate
48 kHz is what the media transport carries, so nothing is resampled. Higher
rates buy no quality for streamed audio and cost CPU.
Channels
Two for ordinary stereo playback.
Jitter buffer (ms)
How much audio is held before playing, to absorb network jitter. It is also
how far audio lags the wall's video, because the render loop does not compensate
for it. 40 ms is the tuned default — raise it only if audio breaks up, and
expect visible lip-sync drift well before you reach the maximum.
Takes effect at the next restart
The renderer opens the output device once at startup, so these are saved
immediately but applied later. Use Restart Engage Ops
System on the Control tab, or leave it for the next restart.
Certificates
This is the single most common source of support calls, and it is worth
twenty minutes on install day.
Everything runs over HTTPS. A browser trusts an HTTPS server only if the
server's certificate was issued by an authority the browser already trusts. A
fresh Engage Ops host issues its own, from its own private authority, which no
machine has heard of — so every browser warns.
Install the root, once per machine. Trusting the root means
every certificate it issues is trusted, including future re-issues. Trusting
the server certificate directly buys you nothing past its expiry date.
Everything below is in Settings → Certificate.
Option A — use your own certificate
If your organization issues certificates, use one. Under
Import a certificate, supply the certificate file, the
key file, and the key password if it has one. Applying it restarts the control
service: your console page disconnects for a few seconds and needs a reload.
The wall keeps displaying throughout — the renderer is
never restarted for a certificate change.
Make sure the certificate covers the name people will actually type. A
certificate valid for the wrong name warns in exactly the same way as no
certificate at all. The Valid addresses section lists the
URLs your current certificate genuinely covers, and flags the ones that will
still warn.
Option B — use the built-in authority
Generate default certificate creates a private
authority and a server certificate from it. Then, under
Certificate for client, use
Download root or
Copy download link and install that root on every machine
that will view or publish to the wall.
On Windows: open the downloaded file → Install Certificate →
Local Machine → Trusted Root Certification Authorities.
Nothing renews this for you
There is no automatic renewal. When a certificate lapses, every browser
starts warning and source clients quietly stop connecting — a failure
that looks like a network problem, not a certificate problem. The Certificate
tab shows days remaining and warns under 30 days. Put the expiry date in
whatever calendar your team actually reads.
Do it before you onboard people
Distributing the root on install day is a few minutes of work. Doing it
after fifty contributors have learned to click through a security warning is a
much harder conversation.
Operators have another way around the warning
The Control App runs the console without one, and
without anything being installed into the Windows certificate store. It is for
operators, not contributors — and it is not a substitute for distributing
the root, because it accepts the certificate at the address you give it rather
than proving the wall is the wall. On a network you do not control, distribute
the root.
Network and ports
Port
Number
Who needs it
Control, console, sharing
TCP 8443
The default, and the one port that must be reachable — every
operator and every contributor uses it. Serves the console, the source
page, Live View, and the signaling that sets up connections. It can be
moved; see Changing the port below.
Discovery
UDP 47820
Optional. Lets clients find walls on the network without being told
an address.
Media
Dynamic UDP
Audio and video negotiate their own ports directly between
contributor and host.
Relay listener
UDP + TCP 3478
Only with the built-in relay on. Carries both STUN and TURN —
one port for every client, not one per source.
Secured relay listener
TCP 5349
Optional, and the one that works from networks that permit nothing but
outbound TLS. Uses this system's certificate.
Relay range
UDP 8081–8104
One port per relaying source while it is connected. Defaults to 24
ports; set under Network → TURN relay →
Ports.
Public URL
Settings → Network → Public address. Set this
to the address contributors should use. It is what share links contain and what
the welcome screen displays. Leave it unset and Engage Ops falls back to guessing
from the operator's own browser — often an address that only works inside
one subnet.
Changing the port
8443 is a default, not a fixture. Settings → Network
→ Server holds the addresses this system answers on.
Control server port
The port this console, the source clients and every paired device reach the
system on. The button reads Apply and restart: Engage Ops
restarts, and the console moves itself to the new address — a banner at the
top of the window carries the new link. The console will not accept a port
browsers block outright, warns on ports below 1024, and refuses to let the
control and signaling ports collide. If a Public URL is
set, it wins over this port in every address Engage Ops hands out, Live View
included — so change its port to match, unless a router or reverse proxy
maps one port to the other. The console warns beside this field while a public
URL is set.
Redirect http:// to https://
Offered only when the control port is 443. Answers plain http://
on port 80 with a redirect to this system's https address, so someone who types
the bare host name lands on the portal instead of a browser error. Port 80 has to
be free — Engage Ops checks when you apply and will not take it from another
program. On any other port there is no https address an http://
caller could have guessed, so the option is not offered. A port and a protocol
cannot share one socket: http://host:8443 can never be redirected to
https://host:8443.
Signaling port
Internal, loopback only — browsers never reach it directly, they go
through this system's own address. Change it only if something else on the
machine already holds the port.
Diag interval (ms)
How often CPU, memory, disk and network figures are sampled for the
diagnostics overlay. Applies immediately, no restart.
The port is in everyone's address
It is part of every URL you have handed out: the console, the source page,
Live View. Clients that found this wall through discovery follow it to the new
port on their own; anyone working from a typed address or a bookmark has to be
told. Change it during commissioning if you are going to change it at all.
When peer-to-peer is blocked
Media normally flows straight between contributor and host, and on one network
that always works. Contributors coming from outside it may need help, and
sometimes a relay. That takes some setting up — see
Reaching the wall from outside.
Reaching the wall from outside
Audio and video do not travel through the console or the web server. Each
contributor's media goes straight to the wall machine, which is why one host can
carry a dozen sources. For that to happen the two ends have to find a path to each
other, and on a single network they always do.
From outside — another site, a home connection, a guest VLAN, a phone on
cellular — both ends sit behind routers that hide their real addresses.
Engage Ops has two mechanisms for this, and they are not alternatives:
STUN finds a direct path, and the TURN relay
carries the media when there is no direct path to find. Both are under
Settings → Network.
Do you need any of this?
If every contributor is on the same network as the wall: no. The defaults
already work and nothing described here is consulted. For contributors from
anywhere else: STUN at minimum, and the relay as well if their network blocks
direct paths outright — which many corporate and hotel networks do.
STUN — finding a direct path
A STUN server does one small thing: it tells whoever asks what their address
looks like from the outside. Both ends ask, trade the answers, and try to meet in
the middle. It is cheap, it is quick, and when it works the media goes direct, with
no load on your host at all.
Settings → Network → STUN holds the list that
every client, and the wall itself, is given:
The built-in servers
Two Hiperwall-operated servers, marked built in. They cannot be
removed, but the checkbox beside each one takes it out of use — prefer that
to deleting, so you can fall back later.
Adding your own
stun:host:port, or just host:port; the port
defaults to 3478. Host names, IPv4 addresses and bracketed IPv6 addresses are
accepted, and anything else is refused with the reason. Up to eight of your
own.
What several of them do
They are asked all at once, not in turn. An extra server is a backup rather
than a delay, and one that is down costs nothing. There is no reason to prune the
list for speed.
Changes apply to new connections immediately — nothing restarts.
Turning them all off
The console warns when nothing in the list is in use, and the warning is
worth heeding:
contributors from outside can then only connect through the relay, and if the
relay is off too, they cannot connect at all. Switch the built-in servers off
only when you have put your own in their place — or when the relay is on,
because the relay answers STUN itself.
Networks with no route to the internet
The Hiperwall servers are on the internet, so an isolated network cannot reach
them. Turn the relay on instead: it answers STUN on its own listener and clients
are pointed at it, so finding a direct path works with nothing outside the
building involved.
The TURN relay — when there is no direct path
Some networks refuse direct connections between peers no matter what STUN
discovers. A relay is the fallback: media goes to the relay, and the relay passes it
on. Engage Ops ships one, off by default, under
Settings → Network → TURN relay.
Clients reach for it only after a direct path has failed, so turning it on does
not push your local contributors through it. What it costs is the host's bandwidth
and a little latency, for the contributors who need it.
Setting it up
In this order. The first two are what people most often leave out, and both fail
quietly.
Turn on Enable relay
The Status block below should show a port count
within a few seconds. If it stays on Not running, the Logs pane has
the reason under engage-turn.
Set the relay public address
Relay public address, under
Advanced. If the host sits behind NAT with port
forwarding — the usual reason to be doing any of this — this has to
be the public address clients can actually reach. Leave it blank and they are
handed the machine's internal address, which from outside points nowhere. The
console flags it while it is empty.
A system with neither this nor a Public URL set
cannot name itself at all, and the relay is then quietly left out of what
clients are given. The log says so; nothing on screen will.
Open the firewall
Inbound to the wall machine: 3478 UDP and TCP for the
listener, 5349 TCP for the secured listener if you keep it,
and the relay range — 8081–8104 UDP by default.
Changing the numbers in Settings does not touch your firewall, and a relay whose
ports are closed fails silently: the contributor simply never connects.
Check the port numbers suit the machine
The listener and the secured listener must stay outside the relay
range or they collide, and the console refuses to apply that. Keep clear of
whatever else runs on the machine — the range starts at 8081 rather than
8080 because 8080 is this system's own signaling port.
Apply & restart
This restarts the relay, not the system. Anything currently relaying
reconnects; the wall itself is unaffected.
Prove it works
On your own network nothing ever relays, so a misconfigured relay looks
exactly like a working one. Turn on Force relay for all
clients under Diagnostics, connect a source, and
confirm it comes up. Then turn it off — while it is on,
every local contributor is pushed through the relay too.
Sizing the relay range
A relaying source holds one relay port for as long as it is connected, so the
twelve sources this system supports need twelve ports at once. The default range is
twenty-four: twelve, and the same again as headroom. Set fewer than twelve and the
console says so in red but still lets you apply it — it is your call, and the
cost is sources that fail to connect under load.
The headroom is there for ungraceful disconnects. A client that closes cleanly
gives its port back at once; one that vanishes — a dropped link, a killed
browser tab — leaves its port held for up to ten minutes. That ten minutes is
fixed by the relay itself and cannot be shortened, so a contributor on a flapping
connection can be holding several ports at once. If you run short, widen the range;
there is no timeout to tune.
Relay ports in use in the Status block is the number to
watch. It turns red as it approaches capacity, and the console says so outright once
allocations have been refused for want of a port.
The secured listener
The secured listener carries relay traffic over TLS on TCP, which is the only
thing that gets through a network permitting nothing but outbound TLS —
exactly the networks whose users need a relay in the first place. It uses this
system's own HTTPS certificate, so the client has to trust that certificate already:
on a system still using the built-in authority, that means the root certificate has
been installed on the client machine. See Certificates. Set the
port to 0 to switch the secured listener off.
Reading the status block
Relay ports in use
How much of the range is held right now, against
its capacity.
Allocations refused
Requests the relay could not satisfy. It means the
range is too small for the load — widen it.
Refused by the peer allow-list
Requests to relay traffic somewhere
this system does not permit. Expected to be zero on a normal system; anything else
is worth asking who is pointed at your relay.
Credential rejections
Clients presenting credentials the relay would
not take. A handful around a restart is ordinary — the credentials handed
out are short-lived by design.
Relaying costs the host
Relayed media passes through the host instead of going direct, consuming its
bandwidth in both directions. Enable the relay because contributors outside your
network need it, not as a default — and leave STUN in use, so the ones who
can go direct still do.
Discovery
Discovery lets clients find walls on the network rather than being handed an
address. Configure it under
Settings → Network → Discovery.
Discoverable
Whether this host answers discovery queries at all.
System name
How this wall identifies itself. Name it after the room.
Site
Groups walls in the same building or campus.
Visibility
Who may discover it.
Site key
A shared secret restricting discovery to clients that
know it.
Discovery status shows whether the host is currently
responding, and on which UDP port. Search this network
below it asks the network the same way a client does and lists what answers: use
it to confirm this host is reachable, to catch two walls sharing a name, and to
catch a copied installation answering with the same system ID under a different
certificate.
Pairing survives certificate renewal
When a client pairs with a wall it pins the wall's long-term identity rather
than its current certificate. Replacing or renewing the certificate therefore
does not un-pair your fleet — clients keep working.
Naming matters more than it looks
With several walls on one network, System name and
Site are all a contributor has to go on. "Wall 2" in a
building with four walls is a support call waiting to happen.
Access control
Who can operate
Connections from the host itself are trusted automatically and never prompt
for a password — that is how you get in on install day. Everyone else needs
the Control UI password, set under
Settings → Control → Control UI password. The
Users button in the toolbar manages operator accounts, and
holds the banned and trusted address lists that used to sit under Settings.
Change the default password
A new system accepts password. It is not a per-machine value
and it is not secret — it is the same on every fresh install, and it is
written in this manual.
Until you change it, anyone who can reach port 8443 can sign in as an
operator: rearrange the wall, read the source PIN, download logs, and restart
the machine. Changing it is the single highest-value thing on the
first-boot checklist.
How to tell whether it was ever changed
The console shows a standing reminder while the default is still in effect,
on the host as well as remotely. If you have inherited a system and see that
reminder, the password has never been set.
Who can share
The five-digit PIN, under
Settings → Control → Source sharing. It is also
shown in the header of the Settings pane whatever tab you are on, so you can read
it out to somebody without navigating anywhere. Regenerate it whenever you want to
cut off future joiners; already-connected contributors keep working, so
regenerating mid-session does not knock anybody off the wall.
Request-to-Join, on the same tab, lets people without the PIN ask an operator
for access. Turn it off to require the PIN for everyone.
Contributors on the wall machine itself, or on a trusted address, skip both:
they give a name and connect. Trusted addresses are a deliberate grant — see
the table below for where they live.
Hardening
Setting
Why it exists
PIN sign-in protection
Rate-limits and then locks out repeated wrong PINs from one address.
A five-digit PIN is guessable by brute force; this is what stops that.
Leave it on.
Request-to-Join limits
Caps submissions per address per minute, active requests per address,
and imposes a cooldown after a denial. Stops one machine burying the
operator in requests.
Banned addresses
Blocked from every source and Live View endpoint. Banning an address
also cuts off what it currently has running, rather than only stopping the
next attempt. In the Users pane.
Trusted addresses
The opposite lever: these skip the PIN and Request-to-Join entirely
and sign in on a name. Use it for fixed, known machines — a podium
PC, a control-room workstation — not for a subnet. Also in the
Users pane. A ban wins over a trust.
Rotate the PIN on a schedule
A PIN shared in a meeting invitation outlives the meeting. It is the only
thing between the network and your wall, and regenerating it is one click that
disturbs nobody currently connected.
Files and locations
Two trees. Configuration and state live in one; logs in the other.
C:\ProgramData\EngageOps\ configuration, identity, state
C:\Users\Public\EngageOps\ logs, one folder per component
File
Holds
Back up?
engage_identity.json
This system's identity, the source PIN, and signing secrets.
Yes. Losing it re-identifies the wall and un-pairs clients.
engage_config.json
Renderer, audio, and network settings. Hand-editable and
commented.
Yes
engage_state.json
Current canvas, placements, and per-source settings. Written
continuously.
Not needed — rebuilt as you work
engage_display.json
Renderer window placement plus the monitor arrangement it was set
for.
Yes — saves redoing placement
engage_innate.json
Widget definitions.
Yes
engage_turn.json
Relay configuration.
If you use the relay
State is written safely
State is saved atomically with rotating backups, and loads fall back to a
backup if the primary file is damaged. A power cut mid-write does not cost you
your layout.
Do not hand-edit while running
engage_state.json is owned by the running system, which will
overwrite your changes without noticing them. Change settings through the
console. engage_config.json is the one file meant for hand-editing,
and it wants a restart.
Restart and power
Settings → Control → Control holds four
actions for the host, so you do not need a remote desktop session for routine
recovery:
Restart Engage Ops System
Restarts the software only. The machine stays up. The console reconnects
by itself. This is the first thing to try.
Restart machine
Reboots the host. Sources reconnect and return to their places
afterward.
Turn off display
Puts the wall's panels to sleep. For overnight, or an empty room.
Wake display
Brings them back.
Components restart themselves
A supervisor process watches the other components and restarts any that
exit, so a crashed renderer comes back on its own within seconds and sources
reconnect to it. You generally find out from the logs, not from the room.
Part 05
Troubleshooting & Reference
Symptoms first, because that is how problems arrive. Reference
material after.
Symptoms and fixes
Nothing on the wall
Symptom
Most likely cause
Fix
Wall is black, console works
Blank Screen is on.
Check the toolbar — the button reads Screen Blanked
when active. Click it.
Wall shows a holding card or a logo, console works
Blank Screen is on and a custom blank screen is designed for it.
Click the toolbar button. The design is under
Settings → Display → Blank screen.
Wall stopped, every component looks healthy
The GPU driving the canvas may have dropped out.
Turn on Diag and read the GPU row: it says
Canvas GPU unavailable and when it went. Restart the system;
replace the card if it recurs.
Wall shows the welcome screen and nothing else
Sources are connected but not placed.
Drag them from the source list onto the canvas, or switch on
Auto-place.
Wall covers only one monitor
The monitor arrangement changed, so saved placement no longer
matches and the renderer fell back to the primary display.
Settings → Display → Renderer window
placement. Set it again.
Wall is displaying but the console shows a disconnect banner
The console lost its connection to the host; the wall itself is
unaffected.
Wait — it retries automatically and shows a countdown. If it
persists, check the host is up.
A source will not join
Symptom
Most likely cause
Fix
Browser warns the connection is not private
The root certificate is not installed on that machine.
Install it — Certificates. Clicking
through works meanwhile.
All renderer slots in use
Twelve sources are already connected.
Disconnect one. The waiting client joins on its own; no need to
retry.
PIN is rejected although it is correct
The PIN was regenerated, or the address is locked out after repeated
failures.
Re-read the PIN from
Settings → Control → Source sharing.
For a lockout, wait it out or adjust
PIN sign-in protection.
Source page will not load at all
Port 8443 is not reachable, or the address is wrong for that
network.
Check the firewall, then set a correct
Public URL.
Joins on the LAN, fails over VPN or from off site
Direct media is blocked on that path, and either no relay is running or
the one that is cannot be reached.
Almost always one of two things: the firewall is not open on the relay
ports, or Relay public address is blank on a host
behind NAT, so clients are handed an address that points nowhere.
Nothing is changing in that source. Expected for a dashboard or a
slide; a fault only if it should be moving.
Judge it against what the source is meant to show.
Card says No desktop
A remote session on the source machine was disconnected without
signing out, so nothing composites there.
Somebody signs back in to that machine.
A Capture Device stopped and its machine reads
offline
The machine offering the device is off, asleep, or off the network.
Its sources stay listed so they are not mistaken for deleted.
Bring the machine back — the device republishes itself. Use
Remove this machine if it is gone for good.
No audio from a source
A different source owns the wall's audio.
Unmute the one you want. It mutes the others automatically.
Tile reads Audio Only with a flat wave
Not a fault: that source sends sound and no picture, and nothing is
currently being heard from it — it is silent, muted, or not the source
that owns the room.
Unmute it and watch the wave. If it stays flat while unmuted, the
contributor is sending silence.
Picture is soft or stuttering
The contributor's upload is constrained; quality is being reduced
automatically.
Have them lower resolution or frame rate. Check whether the relay is
carrying media that could go direct.
Everything stopped at once
Symptom
Most likely cause
Fix
Every client disconnected together, console unreachable
The certificate expired, or the host is down.
Check the certificate first — expiry looks exactly like a
network outage and gives no useful error.
Nothing works after a Windows update
Monitor arrangement changed, or a graphics driver changed.
Re-check display placement, then the logs.
Wall came back after a reboot, but empty
Sources reconnect on their own; contributors whose machines rebooted
too do not.
Ask them to reopen their client. Layouts are unaffected.
Logs
Logs in the toolbar opens the log viewer and timeline
without needing access to the host's filesystem. Start here.
On disk, logs live under a separate tree from configuration, one folder per
component:
The console can export a log bundle as a single zip — that is the right
thing to attach to a support request, because it captures every component's view
of the same moment rather than just the one you suspected.
Note the wall-clock time
When something goes wrong, write down the time before you start
investigating. Correlating components is far easier with a timestamp than with
"sometime this morning".
The Diag toggle overlays live performance figures on
the canvas — useful for confirming whether a stuttering source is a
decode problem at the wall or a network problem at the contributor.
It also lists the host's graphics hardware. Collapsed, the row names the GPU
rendering the canvas; expanded, it shows every adapter with its 3D and copy
engine load and its temperature, and marks the one driving the wall.
A GPU that has gone away
If an adapter drops out — a driver reset, a card that has failed, an
external GPU unplugged — the row says
⚠ Canvas GPU unavailable or counts how many are
gone, without you having to expand anything, and the list stamps the time it
happened. That is the first thing to check when the wall has stopped and the
software all looks healthy.
What recovers itself
Engage Ops is designed for rooms that cannot go dark, and a great deal of
recovery is automatic. Knowing which half is which saves you intervening in
something that was about to fix itself.
Wait before you act. Anything in the left column is already
being retried, with the delay between attempts growing. Intervening usually
just restarts the clock.
Limits and specifications
Value
Notes
Sources on the canvas
9
Per layout. Freeform and Grid are counted separately.
Widgets on the canvas
4
Exempt from the nine.
Connected sources
12
Further clients are refused and retry automatically.
Grid size
up to 8 × 8
Set in the toolbar in Grid mode.
Frame rate
up to 60 fps
Target; adapts under load.
Audio / video sync
within ~22 ms
Audio is the timing reference.
Audible sources
1
Unmuting one mutes the rest.
Source resolution
4K class
Scaled to the tile it lands in.
Audio quality
48 kHz stereo
Music-grade, not voice-processed.
Video codecs
H.264, VP8, VP9, AV1
Negotiated automatically; hardware decoded where supported.
Source tabs per machine
1
Browser client only.
Join request lifetime
~5 minutes
Then it expires and must be resubmitted.
Glossary
Canvas
The operator's scaled map of the wall.
Control App
The console as an installed Windows application, with
no browser certificate warning.
Capture Device
A camera, capture card or audio input on another
machine, put on the wall by the operator rather than by anyone at that
machine.
Capture Device Server
The small agent a machine runs to offer its
inputs to an Engage Ops system.
Contributor
Anyone sharing a source.
Engage Ops host
The computer driving the wall.
Environment
A saved, named layout that can be reloaded.
Freeform
Layout mode where tiles go anywhere at any size.
Grid
Layout mode where tiles snap to an even grid.
Live View
Watching the whole wall from a browser elsewhere.
Permanent
A tile pinned so it cannot be removed by accident.
PIN
The five-digit code contributors use to join.
Privacy
A contributor blanking their own source without
disconnecting.
Public URL
The address Engage Ops publishes in share links.
Request to Join
Asking an operator for access instead of using the
PIN.
Source
One screen, window, region, or camera being sent.
Spotlight
Temporarily enlarging one source to fill the wall, keeping its shape.
Staging
Building a layout off-air, then committing it.
Tile
A source placed on the canvas.
Widget
A source Engage Ops generates itself, such as a clock.
Engage Ops is a Hiperwall product.
This manual documents version 2026 R1.