Pitch deck
SlidesThe problem, how the platform works, where it fits by industry, what is coming, and a suggested four-week pilot.
AI video analytics for your existing CCTV
One server at your site turns existing CCTV into checks for PPE, fire and smoke, restricted zones, people, vehicles, items on a belt and visitors. Evidence for every alert, and no cloud.
Built for plants, construction sites, warehouses and yards, chemicals, food and pharma, and any site with gates, visitors or several locations. What ships today is marked Available, and anything still to come is labelled.


































































































Every page of the finished system, from the approved designs, grouped by status. Pick a group, step with the arrow keys, or open a page in the live demo.
The platform is AI video analytics for the CCTV you already have. It runs many checks side by side, puts a picture and a clip behind every alert, and learns from what your team confirms. PPE is one module of it.


Any RTSP IP camera or recorder joins in minutes: the server finds cameras on its network, has presets for Hikvision, Dahua and EZVIZ, and adds every channel of an NVR, DVR or XVR in one step.
Video, evidence, faces and models stay on one server you control on Ubuntu, Windows or macOS. Internet is needed only to install, and helper servers you own take on cameras as the site grows.
PPE, safety, security, counting, vehicles and plates, belt counting, visitors and sound alarms run side by side, switched on per camera. An Object seen rule raises an event for the object you pick, from any object your installed models can find.
Each alert carries its picture and clip, reaches the right people by banner, siren, email, SMS, WhatsApp or webhook, and becomes an incident to assign, resolve and hand over at the end of the shift.
A blind weekly accuracy check grades each camera, report figures carry their measured range, and a retrained model must not be worse than the live one before a person switches it on.
A privacy profile for the site's country caps what is kept and for how long, faces are matched only for people your team named, and faces are covered before footage leaves the site.
On by default: helmet, vest, goggles, gloves, boots and mask. Ready to switch on once a model detects them: coverall, ear protection, face shield and safety harness. Dust coat and ear plugs are for labelling only. How well each type is found depends on the model. Training on your own site's footage, which is built in, gives the best results.
Many AI checks from one system, switched on per camera. Each card says where it stands today.
Checks each person against the PPE their zone requires, warns first, then opens one event with evidence when an item stays missing.
An alarm when flames or smoke are seen steadily in a zone, indoors and outdoors. It supplements the certified fire alarm and never replaces it.
Person down, phone use, people near a forklift, lone workers, restricted areas, loitering, watchlist matches and cameras covered or moved. Smoking is experimental; left-behind, removed and blocked-exit checks are marked Experimental: they compare a zone with a reference picture.
Raises an event when a zone shows the object you pick, from any object your installed object models can find. You type the name of what to look for.
Counts people through lines, shows who is inside each area, where people stood, dwell times and queue waits.
Counts vehicles at gates and yards, raises wrong-way alerts, shows parking bays taken or free, and reads plates against allow and deny lists.
Register visitors ahead, check them in at the kiosk with a PPE check and a printed badge, and watch every kiosk from the gate desk.
Microphones in chosen zones listen for alarms, breaking glass and calls for help. Only a score and a short clip with speech muted are kept, and it stays off until an administrator switches a zone on.
Find footage by describing it or showing a picture, or ask about events in plain words and get an answer with its evidence.
Draw the site on a floor map, see people live, find blind spots, and run a muster roll-call from the map.
Faces your team named are matched at chosen gate cameras for a sheet per shift. Off until the site confirms its privacy profile.
Spots blurred, blocked, moved, dark or frozen pictures, and produces compliance, visits, vehicles, attendance and accuracy reports as PDF and CSV.
Answers from the site's own manuals, with a policy editor. Today Ask the site answers by fixed rules.
Models that find words you type are in the library but install-only for now.
A visitor who agreed can look at the kiosk camera instead of showing a pass.
Follow one person across cameras and replay the route with clips.
Belts, guards, lamps and spills, flagging moments that look different from normal.
Notes from speech and unusual machine sounds.
Everything here ships today, on one server at your site.
Every camera live, grouped into areas, with a compliance tag on every person and each PPE item boxed in its colour. Add a whole recorder at once, or find cameras on the network, and turn a PTZ camera from the wall.
Upload or draw each floor, place and calibrate your cameras, and publish a map that opens in 3D, 2D or as a flat plan. Nothing on the live map changes until you publish.
Switch PPE checking per camera or for the whole site. With PPE off, the model unloads and frees the GPU.
Fire, smoke, person down, phone use and forklift proximity; smoking is an experimental check. Security checks cover restricted areas, loitering, unknown faces, watchlist matches, authorised-people-only zones and cameras blocked or moved. Fire and smoke are an early warning beside a certified fire alarm, never a replacement.
Draw zones on each camera and tick the PPE, safety and security checks they need, with a severity and optional hours in the site time zone. A check that cannot run says why.
An item has to stay missing for a set time, with an amber warning first, and each episode is one event, even when two cameras see it, so a flicker never raises an alarm.
Draw a counting line on a camera to count people in and out. The Counting page shows who came in and went out, who is inside each area against its most-people limit, and the busiest hour, with a CSV or PDF download. The error of these counts is not measured yet.
Draw a line across a gate or road to count cars, motorbikes, buses, trucks and bicycles in and out. A line can allow both ways, only in or only out, and a vehicle going the wrong way raises an alert. A Vehicles report gives crossings by type and hour.
Count the items on a belt with the camera above it. A New batch button starts a batch at 0 while the total keeps going, a count screen shows the number large on a monitor, and the counts reach the operator panel at the belt. Every batch is kept for a CSV or PDF report, and you can enter a hand count to measure the error.
Annotated and raw snapshots from the moment it happened, plus a video clip from the recording.
Mark each event a real violation or not a violation. A live bell, and an alert for every high-severity event. Alarms show a banner and siren on every page and go to email, SMS, WhatsApp, webhooks and siren boxes, with escalation and quiet hours.
Up to four cameras at the same moment, a timeline of what was recorded, boxes drawn over the video, and clip or snapshot export with a reason. Every export is signed, and the Share safely page checks any file against this site's exports without uploading it.
Camera health at a glance, and reports on time in compliance and violations, as a branded PDF and CSV.
Find recorded footage by describing it or by showing a picture. Each match plays its clip, and searches are logged.
A stable id follows each person between cameras, with their journey and visits. A directory holds named people, groups and a watchlist, with enrolment from photos. Face matching is opt-in.
Try photos and stored videos before a camera goes live.
Reviewed frames train the next model in idle hours. Any model can be scored on your golden set and printed as a validation report. A new model is compared with the live one, item by item, and goes live only when a person activates it.
Reviewers answer a blind weekly set of moments, and each camera can have its own check set, so accuracy is measured on your own pictures. Each camera gets a grade, and a change to a model or a counting setting is replayed on those sets before it applies. The answers never change an event.
Disk use over time, an activity log and cleanup, with alerts when space runs low. Each kind of data has a longest keep, capped by the site's privacy profile.
Activates offline from a licence file; online activation with a product key is built and waits for the vendor's activation address. Administrators switch apps on and off; features outside the licence show locked, and cameras over the limit pause.
Add other computers you own to share the work. If a helper stops answering, its cameras come back to the main server within a minute.
From a camera feed to an alert, and on to a model trained on your own site.
Any RTSP camera, Hikvision included
People and vehicles, frame to frame
PPE, safety, security and counts, per zone
Seen for seconds, not one frame
A picture and a clip as evidence
Your team confirms it or dismisses it
Activated by a person, never by itself
Reviewed events train the next model.
Short clips of the product at work. Pick one to play it.







The AI jobs the platform runs today, can load today, or has designed and planned. Each one says what it does, how far along it is, its limits and the models to start with.
664 models compared, researched 13 October 2026. Every model and its licence is in the Model guide.
Nothing matches.
Finds every person in the picture, so each one can be followed and checked.
Checks each person for helmet, vest, gloves, goggles, mask and boots.
Finds things you name in plain words with no training, for labelling and rare items.
Finds the body's joints, the basis for falls, posture and reach.
Labelled pictures for teaching a PPE model your own site. Data, not a model.
Counts and density maps where a detector merges bodies
Large published errors; research-only datasets
Warns when a hand enters a hazard zone; spots a help signal
Not a safeguard; gloves and small hands
Station or task trend of REBA or RULA scores
2D angle error; health inference on named workers
Spots a person down, climbing, a fight or entry into a danger zone
False alarms; not a safety function; no ranking of workers
Follows each person from picture to picture, so one person is one track and one event.
Recognises the same person again on another camera or later the same day.
Finds faces in the picture, the first step before any face is matched.
Matches a face to the people you have named.
Tells a real face from a photo or a screen held up to the camera.
Notices a phone in a person's hand where phones are not allowed.
Notices smoking where it is not allowed.
Notices flames or smoke in the picture.
Notices a person who has fallen and stays down.
Finds forklifts, and people too close to one.
Alerts when an exit, aisle or lane is blocked, with a dated record
People walking through; light and camera shift
Alerts when something appears and stays, or something that should stay is gone
With objects left behind or removed
Light changes and moved stock cause false alarms
Shadows and pausing people cause false alarms
Finds vehicles and says what kind, for gates, yards and loading bays.
Reads the characters on a number plate.
Finds number plates in the picture.
Tells the operator when a camera is blurred, blocked, moved, dark or frozen.
With camera tamper and picture quality
False alarms at dusk, rain and glare; reference must not refresh itself
Rain, glare and infrared switching cause false alarms
Two helpers the Models page installs. Neither runs on every frame and neither enables a safety check by itself.
Nothing here needs a new model or library. The product cuts a large picture into overlapping tiles, runs the same detector on each tile and merges the boxes back (greedy IoU 0.6; people class-agnostic, and people, vehicles, and fire and smoke merged separately). It does this in three places:
All 0 compared in the Model guideEasier review of dark, noisy or hazy footage
With image restoration for CCTV frames
Learned models invent detail; never evidence
Invented detail; face restorers are banned
Distances and floor-plan positions from one fixed camera
With distance to a hazard from one camera (depth)
Model depth is off by percent to tens of percent; location tracking of workers
Relative depth only; never a safe-distance decision
One click on a floor or door gives a clean zone outline
Rough edges at shadows and glass; some models are non-commercial or AGPL
Direction and speed of movement, a stopped conveyor, a moved camera
Noise in rain and glare; must not score workers
Reads wagon numbers, signs, displays and scanned forms
Confident wrong digits; Sinhala reading is weak
Gate staff scan permits, passes and labels with any camera
Codes can be copied; LGPL needs care
See it in the demoFlags anything that differs from a normal view
Alert fatigue; benchmarks do not carry over to CCTV
A ranked review list of moments that look different
Many false alarms; it says different, not dangerous
Watches the plant: stopped conveyor, guard state, lamps, spills
A wrong all-clear is worse than no alert
Hears alarms, breaking glass, bangs and calls for help
False alarms; audio capture is regulated
Spoken notes become searchable text on the incident log
Push-to-talk only; Sinhala is the weak spot; invented text on noise
The kiosk or a site speaker says a message aloud
No good licensed Sinhala voice; no voice cloning
See it in the demoA hands-free kiosk and a speech gate
Always-on microphone; shipped wake-word models are non-commercial
See it in the demoFlags a machine that sounds different from its normal
Per-machine tuning; alarms on every shift change
Turns pictures into numbers, so recorded video can be searched by words or by example.
Answers questions about a picture or a clip in plain words.
Writes summaries and answers questions about the site's records.
Search notes, reports and manuals by meaning
Confident wrong results; Sinhala and Tamil retrieval unmeasured
Alerts, reports and notes in English, Sinhala and Tamil
Sinhala quality unmeasured; best-known models are non-commercial
Types, severity, places and names pulled from notes
Missed names; never label named workers
Routes a note to the right translator or index
Romanised Sinhala and Tamil; short strings
See it in the demoPlain-words requests become validated calls on product queries
Wrong filters give a confident wrong list
One model describes video and sound together
Audio is the legal problem; no Sinhala or Tamil speech
Screens what the assistant is asked, answers and reads
False blocks; most injection filters are English only
Masks faces, plates, screens and personal text before data leaves
Missed detections; no Sinhala or Tamil name models
Covers faces, screens and bystanders in exports
A missed face leaks identity; blur can be undone
Rare PPE and hazard pictures to widen training sets
Wrong PPE geometry; generator provenance
Clean a floor-plan photo for drawing cameras
Altered pictures passed as evidence; invented pixels
Signed exports that show who exported what and when
A signature proves no change, not a real scene
Forecasts footfall and queues; flags an odd hour
Planned changes cause false alarms
Ranks zones and shifts by where problems cluster
Never per person; small groups single out individuals
One platform, many apps. A site switches on what it needs, and every app shares the same cameras, people, rules and evidence.
Live wall, recording, a playback timeline, signed exports, PTZ, camera discovery, a floor map studio and a live map of people
PPE rules per zone, events with evidence, review and the Test bench
People across cameras, a directory with enrolled faces, groups and a watchlist, and visitors with a gate kiosk
Datasets, labelling and training on your own footage
Restricted areas, loitering, unknown faces, watchlist matches, authorised-people-only zones and cameras blocked or moved, with alarms
Fire, smoke, person down, phone use, forklift proximity, lone worker and walkway checks, plus an experimental smoking check
Counting lines, who is inside each area, the busiest hour, and a most-people limit per area
Find footage by typing what you are looking for or showing a picture
Where people stood, dwell times and queue waits against a target
Counts by type, one-way lines, parking bays, and number plates with allow and deny lists
Items on a belt counted by the camera above it, in batches with a running total, on a count screen and on the operator panel
Clock-in from recognised faces, a sheet per shift and a date-range report
Alarms, breaking glass and calls for help, off until privacy allows it
Ask about events and visits in plain words and get an answer with its evidence
Answers from the site's manuals and a policy editor
Follow a person across cameras
Camera-based fire and smoke detection is an early warning that supplements a certified fire alarm, never a replacement. The order can change with customer priorities.
Status on 8 November 2026. The lists give the order of work, not dates. The full list is in Features and roadmap.
One server at your site runs everything. Nothing leaves it unless you set up remote access.
One server runs everything, without internet after the install, with optional helper servers of yours. Video and evidence stay on it.
Pick the site's country on the Privacy tab in Settings, and its profile caps how long each kind of data is kept. Until then the strictest rules apply: recordings are kept at most 30 days, and faces of people with no name are not kept. Recordings, clips, exports and live view carry pictures only. Camera sound is off unless an admin switches it on for one camera, and some profiles keep it locked off.
HTTPS, and camera passwords stored encrypted.
Four built-in roles (admin, supervisor, reviewer, viewer) and custom roles you define, and a log of every change. Two-step sign-in with a phone app, which admins can require for administrators, and a list of signed-in devices.
Nightly. The System page shows the last good backup and warns when backups stop or fail.
Optional, through an outbound tunnel.
On Ubuntu with Docker, one command installs a signed package. Windows and Apple-silicon Macs install as background services that start with the computer, with nothing else to install. Signed updates are uploaded from Settings or fetched from an online folder you set up, with one-click rollback; an update feed run by the vendor is not planned for version 1.1.
The licence sets the product name, logo and colours.
Every tier runs the same software. Pick the one that fits the site.
Trials, demos and a few cameras
A typical site, with training in idle hours
Many cameras, training while live, and the thorough Test bench mode
Recordings take about 43 GB per camera per day at 4 Mbps, so size the recordings drive for the days you keep. The System page runs a load test and says how many cameras the server fits.
Typical figures, for planning only: the real rate depends on each camera's resolution, codec and scene.
Everything a buyer, partner or site team needs: a pitch deck, a datasheet, the roadmap, a security brief, the user manual, a quick reference, training slides and a model guide. Open any document here, or download its PDF.
The problem, how the platform works, where it fits by industry, what is coming, and a suggested four-week pilot.
The platform on one page: what it checks, requirements and deployment.
Every feature available today, what is being built now, the planned releases in order, and the editions.
Where data lives, who can see what, encryption, faces and retention. For IT and data protection reviewers.
Install, first sign-in, cameras, zones and rules, watching live, reviewing events, improving accuracy and administration.
Two pages for supervisors and reviewers: the daily routine, reading the Monitor, handling an event.
Slides that walk operators through the wall, alarms, review, incidents, visits and exports, for the first training session.
What a model is, how to install one in five steps, and every model that could be added, job by job, in plain words.
Version 1.1.834, updated 8 November 2026. This list updates with every release.
Overview
The online demo now lists the same pages in the same order as the app, with Conveyor, Privacy and Expected visitors drawn, and Counting, Vehicles, Sound, All sites and others as pages of their own. Sound, All sites, Vehicles and Floor map zones now read Available.
Floor map
Follow a person's path across cameras with the matching clips beside the map. Gaps between cameras are shown as gaps, unsure links ask you to check the clip, and an evidence pack exports it all with a checked manifest.
The Heat layer can now show where people passed and where they spent the most time over the past day, as well as violations. A line under the map says what the darker squares mean.
During a muster, each person not yet accounted for is listed under the room a camera last saw them in, and muster point counts are exact where cameras overlap.
In a person's path, a hand-off between cameras you confirm no longer shows as a possible link, even when it scored low.
Room names written in small text on big plan images are now found more reliably. Plans of ordinary size are read exactly as before.
A map layer that cannot be switched on now shows its reason as text under the chips, so touch and keyboard users see it too. Publishing a draft with no changes says so, and cannot be cancelled while it publishes.
Where cameras overlap, the floor map now joins what they see into one dot per person, so room counts are exact instead of a range.
The floor map now keeps a sparse trail of where each person was, for at most 30 days, and never longer than the site's privacy profile allows. Erasing a person also removes their trail, and Storage has a Trails setting to keep it shorter.
With permission to see people, ask who was in a room between two times and get every confirmed track, with an honest line about what cameras could not see.
Events
The button that deletes events, its confirm and its progress now all say Delete. The Back button on an event and the small search buttons are easier to hit on a phone.
An event of an app that is switched off no longer opens by its link, nor does its picture, clip or notes, just as it is already left out of the list.
When you check files against a signed export, a file whose name is not in that export now reads as changed, even if its signature file is untouched.
Video search
The Playback export button is now called Cancel export while one runs, or Start again when it is ready, and asks first so a finished export is not dropped by accident.
Attendance
Dates on a person's page now use the date format chosen in settings, not the browser's own.
Rules
The Rules page no longer fails to show the Safety checks tab when the browser blocks stored settings, such as in a private window.
Cameras
The far-away look on a camera now also finds small, distant vehicles such as gate and forklift traffic, not only people. The camera option is renamed to match and says what it costs.
The capacity estimate and the Plan strip now count a camera that looks for far-away people as about three times the work of a normal camera, as measured on a CPU server. Before, the estimate came out too low.
Removing a learned fixed item or a floor calibration now asks first, and the fixed item button stays off while it works so a double tap cannot fire twice.
A camera that counts items on a conveyor line is now kept on the main server, so its counts are no longer lost when the planner would have handed it to a helper.
Training and models
The Datasets camera and class filters now show loading, or an error with Retry, instead of silently appearing empty.
Detection and counting
Distant workers are now searched with evenly spread views, and the search reaches slightly below the usable line. People standing right on that line are no longer missed.
In Max pictures, fire, smoke and object checks now also look at tiles of the picture, so small or distant items are found more often. Fire and smoke that overlap are both kept.
Looping test videos set to Max now also look at the four tiles of each frame. Replays of saved checks now run the far-person pass too, so their numbers match what the live camera does.
The Test bench now says Max takes about 5 times as long as Accurate, based on a measurement on a CPU server, instead of about 3 times. The cost line under the runs uses the same ratio.
Removing a single result on the Test bench now asks to confirm, and removing several waits for the real outcome. If some could not be removed you are told which, instead of a success message.
Look and settings
When a server is overloaded for a long time, the extra look at far-away people now runs on every other picture instead of every one. The System page names it as running at half rate.
Privacy
A data request can now find a visitor by email, phone or name and export their expected visits and check-ins. Erasing needs an email or phone match, because two visitors can share a name. A visitor's photo is deleted the day after their visit.
Visitors
A visitor who agreed and has a photo on their visit can look at the kiosk camera instead of showing a pass. The face is matched only to today's expected visitors, and the pass, the code and the gate desk always stay on screen.
When the photo check thinks the kiosk may be looking at a photo or a screen, the visitor waits and the gate desk is called to check them in person.
When two of today's visitors look alike to the camera and neither is clearly the better match, the visitor waits and the gate desk is called, instead of being let in as the other person.
A data request that names only a visitor's name still lists the matching visits, marked as name only, but erases nothing. Add the visitor's email or phone to erase their visits and photos.
Editing golden frames keeps them golden, face-confirmed sightings saved, footage count fixed, download size label fixed, memory refusal names the reserve, validation scores as percents, cleaner handover PDF, urgent sound after a soft alert, AI rest time uses site time, fewer false smoke alarms
Reports
The Validation tab now opens without any camera added, so you can check a model against its golden set first. Scores and ranges show as whole percents, matching the hints beside them.
The shift handover PDF no longer prints an empty Notable movements section when there was nothing to report. It now matches what the page shows.
Attendance
Sightings where a face confirmed who the person was were being rejected and lost. They are now stored, and clock-camera attendance times are accepted the same way.
The info icon beside Face readability on the People page now works as a proper button for keyboard and screen reader users.
Rules
Smoke now needs a stronger, longer and moving sighting before it alarms, and waits longer before repeating. A camera that looks moved or blurred must stay that way for a minute before alerting.
Training and models
The model validation PDF now shows false alarms and misses in its confusion matrix. The Change and Verdict columns no longer run together, and the Worst misses card stays on one page.
Pressing Approve on a golden-set frame you just edited now saves your changes and leaves the frame in the golden set. Before, it quietly moved the frame out. Use Remove from golden to take a frame out on purpose.
When a model is not loaded for lack of memory, the message now also says how much memory must stay free. It no longer reads as if the model would fit.
Look and settings
The AI help card now shows when online AI starts again in the site's time zone. It no longer uses the time zone of the computer you are browsing from.
Install and updates
When an update download has no known size, the progress bar now stays still instead of pulsing. The byte count next to it still shows how much has arrived.
Privacy
The size shown for a covered clip now matches the file you download. It no longer counts the original footage that is left out of the download.
Sound
When a Medium alert pop-up opened first and High alerts followed on the same camera, the urgent sound stayed silent. The urgent sound now plays once, still without repeating for every alert in the burst.
Ask
The Footage step in an answer now counts the clips you can actually open. It no longer counts visits whose clip was already removed.
Cameras
On a camera's Lines tab, draw a line across the belt, pick the object to count and mark the belt area. Items outside the belt area are never counted, and a camera analysed fewer than 10 times a second gets a warning.
Detection and counting
Counting items on a conveyor belt is now an app of its own, with its own part of the licence, so a belt site can run it with every other app switched off. Belt lines now belong to it instead of People Counting.
The Conveyor page shows the batch count, the running total and the rate per hour. New batch sets the batch to zero while the total keeps going, and every batch is kept for reports. Counts move live, and a site that runs only this app opens on the Conveyor page.
Open the count screen on a large monitor near the belt: it shows the batch, the total and the rate per hour in big numbers, updates every second, and says plainly when the camera or the operator panel link is down.
The Conveyor page downloads every batch in a period, with its start, end, count and who started it, as CSV or PDF. A batch counted by hand as well is marked Test.
Enter the hand count of a finished test batch and the Conveyor page shows the average miss per batch, the worst one and the net error, with the number of items behind them. Until three batches are tested it says Error not measured.
Look and settings
Admins can send the batch and total counts to the operator panel at the belt over a serial link. Once the panel has a New batch button, it starts a batch just like the one in the app, and the link's state shows on the count screen.
Monitor
Point at a camera's lane on Playback, or press and hold on a phone, to see a small picture and the time there without moving the playhead.
On Playback, drag the thin bar between the two range handles to move the whole export range without changing its length. The range and its edges snap to nearby events and the playhead, and you can hold Alt to skip that.
Drag a camera's name on the timeline, or press the up or down arrow on it, to change the order of the lanes and pictures. The order stays in the address, so a reload or a shared link keeps it.
Scroll the Playback timeline with a swipe, the arrow keys and Page Up and Page Down, or Shift and the wheel, and zoom with Ctrl and the wheel, a pinch, the Zoom slider or Whole day, from one minute to the whole day. The ruler re-marks itself as you zoom, and you can drag the box in the day strip. Drag the playhead or the ruler and every synced picture follows, landing exactly where you let go; Esc cancels a drag.
Floor map
A room drawn with no walls used to get No spot would see more even with a blind spot. The suggestion now also tries spots along the room edges.
Events
Exporting the Incidents list to CSV now shows a short line when personal details in the text were replaced by a mark, as the report downloads already did.
When playback is paused, a one-frame step now shows exactly that frame, and letting go of a fast scrub lands on the exact moment instead of the nearest key frame.
Grabbing the playhead label a second time no longer shifts it by the distance of your last drag. Holding Alt before you start a drag now skips snapping straight away.
Cameras
A helper card now shows the camera count and the link time once, on the line with its spare room and link use, instead of again on the line above.
Joining a helper while the main server has no secret set now stops with a clear message and leaves the join code and the helper unused. Set the secret and try the same code again instead of making a new one.
On a phone, System now says Runs on Depot-1 instead of Runs on On Depot-1, and each camera card shows its cost split by check, as the table does on wider screens.
Opening Settings, then Helper servers, for the first time no longer shows an error page. The list loads and then shows your servers as normal.
Each helper now lists Most busy, Most cameras and Internet speed under Change, with their defaults and ranges. Set a camera limit or choose No limit to take it off again.
A server that stayed busy for the whole hold time now counts as held even when its checks run a few milliseconds slower than every 15 seconds, so a busy main server again moves a camera to a helper by itself.
On a phone, the offline message on a camera tile was cut off at the top and the Camera settings button at the bottom. The card now scrolls inside the tile so everything can be reached.
Training and models
All jobs can be narrowed to waiting, finished or failed, and opening a past job shows its curves as well as its log.
The 24-hour idle-hours bar now uses the site's time zone, the charts fit any screen, and Change idle hours is a plain button beside the hours.
The SH17 PPE models in the library now say they are trained on whole frames and need the PPE mode set to full frame. In the default crops mode they never saw the vest, so the kiosk check quietly timed out.
When the training service is offline, the reason Make ONNX copy is unavailable now shows as a line under the button, so it is readable on a phone and by touch, not only on hover.
After testing a trained model, each class on the models page now shows a suggested score threshold taken from its best balance of misses and false alarms. Before, the column stayed empty until you typed one in.
The model test on your labelled pictures used to read each box position from the wrong point, so a good model could score zero. Boxes are now placed where you drew them and the scores match what the model really finds.
One line at the top says whether a job is training, paused or waiting for the idle hours, with progress and time left. Pause, Resume and Stop for that job now live only there.
Finished models state the golden gate once, Activate anyway is marked as a warning, and the written reason opens in its own window instead of reshaping the list.
Detection and counting
Choosing the first or second answer in Settle now waits 7 seconds with an Undo button before it is saved, so a slip of the finger can be taken back.
Each question says which one of the week it is. 1, 2 and 3 answer the row you are on, and Enter sends. On a phone the Send button stays in reach at the bottom of the screen.
Marking moments, clips and crossings each open with the camera's name and close with Back to Set up, which asks first if marks are not sent.
Each camera is one row with its state and the one button it needs next. Rarer actions, such as the staged walk, sit in a menu. Sets that are collecting or waiting for marks show how far they have got, and the list updates itself.
Install and updates
Settings → Updates can now look in an update folder when you press Check now, or every few hours once an administrator turns on automatic checks. It downloads a newer version for this server's system and channel and checks its signature before it offers Install. Checked updates can also install by themselves at night.
Updating a server that still runs a build from 29 October or earlier no longer stops at the database step with an unsafe use of new value segment error. The update now finishes in one go; servers already on a newer build are not affected.
Overview
Overview sums up the shift in plain sentences: violations against the same time last shift, what was missed most and what is still open. With AI help on, AI words them, and any sentence with a number that is not in the counts is thrown away.
Floor map
Setting the scale right after uploading a picture sometimes said it could not load the picture. It now asks again a moment later, so the picture shows up without a retry.
The camera picture in calibration now loads a fresh frame each time you open it, and Suggest points then shows the exact picture it analysed, so the suggested points sit on the frame you see.
Setting the first scale on a floor plan that already has walls, doors or cameras drawn on an unscaled picture now rescales the drawing with the picture, so everything stays on the right part of the plan.
On a slow or busy computer, the 3D map now notices that it lags and offers the flat plan, even when the slowness is the browser waiting rather than the drawing itself.
Events
The event panel and page now open with one line on what was checked, against what and why it fired, using the event's own numbers, and a second on where it is marked. Checks without a score no longer show a 100% absence score, and an event without a person no longer shows an empty track number.
An event's clip now plays with its boxes, labels and zone outline moving with the video, and Annotated or Raw switches them on and off. Clips cut before this update say they have no saved marks.
Left behind, Removed and Blocked exit events now outline the part of the picture that differs from the reference, on the snapshot and on both pictures of the before-and-after.
Admins can now delete an event straight from the Events side panel, and the next event in the list opens. Events on legal hold, about a person on legal hold, still running or used by a training sample are refused with the reason.
When an event has no clip, the note no longer claims recording was off. It says no recording of that time is kept, and admins get a link to the camera's recording setting.
On Events, admins can tick rows or take the whole filtered list and clear it in one go after confirming the count. Events on legal hold, still running, confirmed as violations, open incidents or used by a training sample are kept, skipped and counted.
Open an event's snapshot and clip full screen from Events, the event page or Incidents, with the same marks on both. The arrow keys switch between them, Space plays, and the zoom buttons let you look closer. Pinch, pan and swipe work on a touch screen.
Reports
An emoji typed into a privacy document or the sign at the door used to print as a stray symbol in the PDF. The PDF now leaves emoji out and prints the rest of the text as typed.
Video search
Questions the fixed rules cannot read now go to AI help, which turns them into filters you can see and change. The counts always come from this server.
Type a sentence such as “no helmet in the paint shop yesterday” in search and it offers the matching events, cameras and people. It works without AI; with AI help on it reads more wordings.
Rules
On Rules, AI help can suggest which PPE each zone without rules needs. Nothing is added until you tick the ones you want and press Add, and Undo takes them back.
Cameras
On a vehicle line, the note under the Enabled switch now says vehicles crossing the line are not counted while it is off, instead of people.
Training and models
Models that sort a picture, outline objects, draw rotated boxes or outline on a click now show a speed on their card, like detectors do. A click-to-outline model is timed as one picture plus one click.
Each model card now says what the model gives back (boxes, outlines, body points and so on) and whether each size runs on the CPU or wants a GPU. A size that needs a GPU warns you when this server has none. Objects joins the task filter. A model that can work in more than one role now has a Use as choice before you install it, and a role already installed cannot be installed twice.
Installed object models now sit in their own Object models section, where several can be active at once. Each has a Run on live cameras switch and a Follow each object switch, and a heavy model starts switched off with a note saying so. Training jobs no longer offer roles that only come from the library.
On a model that takes typed words, Type what to find now opens a box where you list up to 40 names, one per line. It makes a copy of the model that looks only for those things and adds it as a candidate in a minute or two, ready to test before you use it.
Most Ultralytics models on the All models page that this app can run now have an Install link. It opens the matching family in the Model library, so you can download and activate it there. Face detectors, Pyronear wildfire smoke, the Keremberke forklift models, two more cigarette detectors and a fall detector now have Install links too. RT-DETR, MobileSAM and the tiny SAM 2.1 outline model can now be loaded today, with the same links, and so can the Latin PP-OCRv5 plate reader. More follow as their families are added.
Download a small language model that runs on this server, see which one fits this computer, test its speed and delete it to free the space. It answers when there is no internet.
When Type what to find makes no model because the text model is missing or is not the expected file, the card now says so instead of silently showing nothing. The message clears after the next successful bake.
Detection and counting
A grey patch that looks like smoke and never moves is kept in Events for review, but no longer sends a notification. Fire still notifies as before, and a smoke patch that stays still for 3 minutes becomes an alarm and notifies.
A lamp switched off, a crowd walking through or the switch to night vision no longer makes picture health report that a camera moved. It says moved only when the view has really shifted and stayed that way for a minute.
Picture health now checks each camera once a day from noon, not as soon as the system starts. It compares colour pictures only, so a camera showing its night picture is checked again later that day, up to 6 pm.
A camera that flickers between moved and good no longer raises the picture moved alert again straight away. A new moved alert waits 10 minutes after the last one cleared, while blocked, blurred and other picture alerts still raise at once.
Users and access
Install and switch models now also covers downloading and running the local AI language models, so the roles page marks it as something that runs programs on the server. Give it only to people you trust with the server.
Look and settings
In an email's Recipients popup, the count of people now updates as you tick or untick a role or a person, before you press Save.
A work shift saved in Settings, Site now counts straight away, so the Attendance sheet no longer says Add a work shift first while the shift is already there.
A shift named "Shift 1" now reads "Shift 1 on Tuesday 21 October" under the Attendance title instead of "Shift 1 shift".
An administrator can turn on AI help, save a Gemini key (free or paid), test it and choose what may go online. Every page still works with AI off or without internet.
Visitors
On a phone, the Allow list and Deny list tabs in the plate lists popup are now 44 px tall, easier to hit without missing.
A group holding a single plate now says 1 plate in this group instead of 1 plates.
In the Vehicles demo, the Gate events panel now carries the Available tag, since plate reads and gate decisions are built.
Installing the plate reader and turning on Read plates now works straight away. It no longer asks for a written reason, because there are no test images to score it on.
Overview
A switched-off Time & Attendance app now says on its Apps card and on its own page that records are kept and nothing new is recorded, so nobody wonders whether data was lost.
Monitor
A fault in matching how a person looks from picture to picture made the system skip whole pictures while someone walked through, so their box vanished and their PPE went unchecked. Every picture is checked again.
When the detector misses a person or vehicle for a moment, their box now stays on the tracker's prediction for up to a second instead of blinking off. These held boxes are only drawn: they are never counted, never judged and never raise an alarm.
Boxes are now drawn in step with each picture the camera's video shows and glide smoothly between detections, on the Monitor, Playback, event clips and the Test bench. Each camera is also checked at an even pace, so boxes no longer lag or jump when the server is busy.
People, worn and missing PPE, vehicles, fire, smoke and other objects each carry a label with their name, their colour, an icon and how sure the detector is, readable on bright and dark pictures and never overlapping. Video search, the visitor kiosk and model checks label their boxes the same way.
Vehicles followed on a camera with a vehicle line or bay now show their own box on the Monitor with their type and percentage, not only in recordings.
Floor map
Activate a SAM, SAM 2, MobileSAM or FastSAM model on the Models page and click to outline uses it from the next click, with no restart. MobileSAM is the light choice for a server without a GPU, because these engines always run on the processor and never slow live cameras.
Training and models
When the training service reports no Ultralytics add-on, Ultralytics models in the library show Needs the Ultralytics add-on and cannot be installed or baked. Turning on a .pt model is refused only when the detection service itself reports the add-on missing.
A model file you copy in is now matched against the catalogue by its checksum and shows as installed, with its kind and licence filled in. Other files are read for their kind and class names, and a copied-in object model that is not a box detector is flagged.
Detection and counting
An event now opens only when an item is seen missing in most pictures over the violation time, 8 seconds by default. Pictures where the system could not tell, such as a turned head, no longer count as missing, and a helmet or vest seen clearly stays worn for 15 seconds while out of sight.
A person no longer shows an item and its absence at the same time, such as Face mask and No face mask. The detection the system is surer of wins, and the live view, evidence pictures, events and the Test bench all show that same one.
Sites still on the old 3 second and 2 second PPE timings move to 8 and 4 seconds on upgrade, including a site that chose exactly those values. Smoke and camera-blocked checks that still hold their old numbers switch to the new defaults too, and restoring an older backup brings the old values back.
Smoke now has to move or drift in the picture before it alarms, so a still grey patch such as a wall stain or a hanging cloth is kept for review instead. A patch that stays for three minutes still escalates to an alarm, so nothing is silent for good.
Users and access
When nobody has been named yet, the Add people window now says so and points to the People page, instead of claiming everyone is already on the attendance list. It also says when people are still loading or your role cannot see them.
Look and settings
The Calm preset for PPE timing now waits 15 seconds before a violation and 6 before it clears, longer than Balanced's 8 and 4, and Quick waits 4 and 2. Calm had become quicker than Balanced when the defaults grew.
The PPE timing settings gain Missing in at least, the share of pictures that must show an item missing, and Keep a seen item worn for. The two confidence levels are renamed to say what each one does, and the bar under them explains the same.
Adding a group to the attendance list now says when nobody was added because the group has nobody named yet, and keeps the window open so another group can be chosen.
Sound
Add microphone now offers the cameras that carry sound, so you pick a camera instead of typing its address. The microphone follows the camera if its address changes.
Monitor
Objects an object model finds now show as an outline or a rotated box that hugs the shape, and a followed object carries its number after the label. A label that describes the whole picture sits as a small tab in the top corner.
When an object model is set to follow what it finds, each object now keeps the same number from frame to frame while it moves, so one thing is no longer counted as several. The Test bench still treats each picture on its own.
Floor map
While the muster loads, the page shows a placeholder shape instead of a line of text, and if it cannot load it says so with a Retry button in the same style as the other pages.
Events
Incidents that are not about missing PPE, such as smoke, fire or a restricted area, now show their kind in the list and as the panel title, instead of a dash or the word Incident.
Recordings made from now on keep the smoke and fire boxes the system drew live, so Playback shows where it saw them, not only people and their PPE.
Video search
On a phone, the Describe it and Example image tabs and the Choose image button are now tall enough for a thumb. On larger screens they look as before.
Rules
A new Object seen rule watches a zone for any object your object models can find. Pick what to look for from the classes of your object models, searching as you type, and the rule stays idle until you do.
On Rules, the alarm outputs line now says when it could not check which outputs are set up, with Retry, instead of loading for ever.
Cameras
A server must stay overloaded for the whole waiting time before cameras spill to another, and no more than the hourly limit move on their own. You can also pin several cameras to a server in one go, and each answers on its own.
Training and models
The model library now lists every official Ultralytics model with the add-on: boxes, outlines, rotated boxes, whole-picture labels, body points and click-to-outline, in every size from nano up. Models that find words you type are install-only for now, so you give them their words before they can run.
The Versions tab of Datasets now shows an error with Retry when the list cannot be fetched, instead of an empty space.
The results by class table on Models now matches the other tables and scrolls inside its own box on a phone.
Installing a model now says plainly when the disk is too full, with how much space is needed and how much is free. If the download server cannot be reached, the card tells you to copy the file in with Import model, where a file with the same checksum is recognised.
Detection and counting
The tabs now read This week, Disagreements, then Camera sets, and the open tab stays in the address, so Back and reload land on it. See the results opens the Accuracy report.
Three figures at the top of Accuracy checks show this week's answers, the disagreements to settle and the camera sets due, and each opens its tab. Camera sets now count days in the site's time zone.
Camera sets now splits into Across the site and Each camera, each camera shows its check set's state beside its name, and check set, staged walk and crossing log explain themselves when tapped.
On a phone, every Send answer button is now a full-size touch target. When two answers disagree, each picture is read out as which person and which picture of how many.
Users and access
Email choices on your account, the person page access log and recent exports now show a placeholder while loading and Retry when loading fails, instead of plain text or an empty list.
Every person page now has a How this page works button, both when the id is unknown and on a person's page. It opens the People help, so you can see what the page shows before you act on it.
Look and settings
Drop-down pickers are full finger height on a phone, and the pickers in shift handover, area analytics, the breach form and tracking marking now look like the rest.
Until a site sets its own product name, emails, reports and the app now say Safety monitoring instead of an internal code name. A name set in Branding still wins.
Helper servers settings now let you turn automatic moves on or off, choose how busy a server may get before cameras move and how quiet before they return, and cap moves per hour. Each helper also has its own camera limit, busy limit and internet speed.
Install and updates
Each camera in Move cameras… now shows how much video it sends, and cameras a server cannot take are cleared when you pick it. A helper that is starting a camera says so on its card.
If the update status cannot be fetched, the Updates panel now says so with Retry instead of showing Loading for ever, and the removed helpers list no longer looks empty after a failed load.
When this server stays busy, cameras move to a helper server with room and come back when it is quiet again. Move cameras… on the Helper servers page pins them yourself, and the System page shows each camera's Cost, its share of its server's AI time.
Crossing logs, measured counts, steadier zone drawing and an alarm banner that keeps the bell in reach, a one-file setup backup you can restore, and a Sound page that hears alarms
Overview
When the site time zone was already changed, a new administrator's welcome put the cursor on "Reset to default" instead of the time zone. It now always starts on the time zone.
Monitor
When a server has no H.264 encoder, the covered clip is Motion JPEG in an .avi file. The export page now says so and names the players that open it, instead of handing over a file that will not play in a browser.
Opened with nothing chosen, Share safely now says to pick a clip in Playback, an incident or an event, with an Open Playback button, instead of asking for a camera and a time it has no field for.
On a phone, Share safely now names your last export by its kind and size. Before, it said no file even when you had exported one.
Under the reason on Share safely, a line now says why there is no blur option: blur can be undone, so covers are always solid black.
Floor map
Under the face-data notice on the muster page, a viewer now reads "More: ask an administrator" instead of a file path they could not open.
Printing the muster roll-call while the dark theme is on now gives dark names on white cards, so the list stays readable whether or not your printer prints backgrounds.
The floor map studio now has a Customize button in its header, like the other pages. Pick how far points snap while you draw and how the plan is drawn when the studio opens; the choice is kept for you only.
In the floor map studio, the picture or PDF page you upload is now drawn under the plan, so you can trace over it as the studio says. It shows in the flat view; the picture is sized to your scale once you set one.
Uploading a plan picture in the floor map studio no longer pops up Could not load the plan picture while the draft is still saving. The picture now waits a moment and appears on its own; the message only shows if it really cannot be loaded.
The hint under the Scale tool in the floor map studio no longer says the Scale step has not shipped. It now tells you to use Measure under the plan picture, click both ends of a known length and type it.
In the floor map studio, clicking into the Wall length box with the mouse no longer stops the typed length from working. Press Enter and the next corner is set that far along the way you were drawing.
A viewer who opens the floor map studio now sees the plan with its editing tools locked, instead of Could not load the map. Only roles that can edit load the working draft.
While you draw a zone, the help above the map no longer pushes the map down as the cameras and the back-test appear. Your last corner now lands where you aimed.
On the Zones page, the name box, the check switches and the severity lists now have names a screen reader can read, with a short line saying what each does.
When you publish zones, the summary now says how many camera zones the map has in all, instead of reading as if that many cameras were involved.
The roll-call bar shown while a muster is open now uses white text on its amber background in the light theme, so it is easy to read. The dark theme is unchanged.
Events
While an alarm is open, the red banner now pushes the page down instead of covering the top bar. The bell, search and menu stay in reach, so you can still end Do not disturb or open the bell during an alarm. The alarm count in the top bar also stays on one line on a phone.
The clips behind an Ask the site answer now open in a centred popup like every other panel, with Previous and Next under the video. The pairing dialog also copies its address on a plain-http page.
Reports
Names, phone numbers, emails and ID numbers in notes, comments and export reasons are replaced by a mark before they leave the site. The audit log keeps what was written.
Share safely lists the names, numbers and emails found in the text that travels with a clip, each with Keep or Mask. Report downloads have a Hide personal details switch, and the settings can pick which local ID and phone formats count.
Opening the Area analytics or Attendance tab while its app is switched off now says which app is off, instead of always naming Vehicles & Plates.
On the Area analytics tab, people waiting in a queue now show as a short number such as 0.2 instead of a long fraction. Over several days each row also names its day, so the same hours no longer repeat without a date.
Video search
Under an Ask the site answer you can change the day, area, check or hours it used and press Run again. The steps show what was found in events, visits and footage, and each visit opens its clip; a role that cannot see people sees Person 1, Person 2 and no pictures.
Under an Ask the site answer you can play the clips one after another, start the answer's events as incidents with your question as the note, or save the answer as a PDF. Starting incidents needs the right to review events, and the site policy now shows its three locked rules.
Rules
A check you have just switched on no longer shows a Not a number note under every parameter you have not set. The note now appears only when a saved value is not a number.
"Needs a model · Get model" in the checks table now opens the models for that check right beside it, where you can download and switch one on. Before, it took you away to the Models page.
Cameras
On the cameras list, the line Checked N of M per second under a slowed camera is now amber, not only its warning icon, so a camera checked less than set stands out at a glance.
Pressing Set to N beside a slowed camera no longer opens that camera page. The rate changes in place and the message offers Undo.
When you click a point on the plan, its floor x and y boxes now show metres to the millimetre instead of about fifteen digits. What is saved is unchanged.
When a zone drawn inside another shows its PPE warning and the keep-the-outer-rules box, they now appear under the camera picture. Before, they pushed the picture down while you were still clicking, so the last corner landed in the wrong place.
Training and models
On a site opened through a plain http:// address, adding photos or videos to the test bench did nothing, and drawing a new zone on the floor map failed the same way. Both now work on any address.
Detection and counting
An admin can collect a crossing log for a counting line over three working days. A reviewer then marks every crossing at four times speed without seeing the system's count, so the line's error is measured.
A line whose crossing log shows its count within 10 % each way is graded as checked, and a line off by more than 20 % is left out of totals. A weekly check keeps watching it.
The counting page now shows each line's measured error, whether it tends to read low, unsure crossings as a range, and which lines are left out of the totals.
The bell now warns when in minus out drifts away from the people the cameras see in a fully covered area, and when one id appears on two cameras faster than anyone could walk between them.
Storage
Cleaning recordings started at 30 days, but cameras delete their own recordings after 14 days by default, so it always found 0 items. It now starts at 7 days. When nothing matches, it says why and which number would work, and offers no Delete button.
Signing in
When the server does not accept sign-ins from the address in your browser, sign-in now says so, names the address and tells you what your administrator must add. Before, it said the server could not be reached, which sent people looking for a network fault.
Users and access
In the Enrol a person dialog, Group now sits on its own full-width row under Name, so the list no longer runs past the edge of the dialog on a laptop screen.
On a phone, the sections of a person page no longer run past the right edge. The tabs scroll inside their own row and the page stays still.
The Privacy page help and the user manual now describe all seven tabs of the Privacy desk, including Documents. The quick reference points to where it is.
On an empty Playback, Search, Visits, Reports or Rules page, a next step your role cannot use used to look clickable though it did nothing. It is now greyed out, with the reason written beside it.
A person's consent now shows the day it was given, such as 30 Oct 2026, without a made-up time. The enrol dialog now says a person is recognised at face-point cameras when the privacy profile reads faces only there. The watchlist switch no longer says a person is recognised on any camera.
Look and settings
Changing only who gets a system email, such as Camera offline, no longer resets its wait to zero and turns its back-to-normal email off. The email keeps the wait and settings it had. In Email preferences, the reason line under each email now reads as proper sentences.
The failed restore test line on the System page now says failed yesterday or failed today instead of failed on yesterday.
Typing a number that is just over the limit, then pressing Save, could store a shorter half-typed number instead of the limit the field showed. Save now always stores what the field shows.
On a site whose server has no Do not disturb, the notification choices no longer say that Do not disturb follows you on every device.
Settings now has a Setup backup section. Download one password-protected file with your cameras, zones, rules, maps, users, people, models and settings, and restore it here or on a new server; a copy of the current set-up is saved first so you can undo a restore.
On a site opened through a plain http:// address, the Desktop notices switch said the browser had blocked notices, and allowing them changed nothing. It now says browsers only allow desktop notices on an https:// address, or on the server itself, and the switch stays off. Sounds and pop-ups still work.
Downloading a setup backup now shows a bar with how much of the file is ready and about how long is left, instead of only "Preparing…" until the file appears.
Until a site sets its own product name, report PDFs no longer carry the built-in code name in their file details, and the What's New panel no longer names it. A site with its own name sees that name as before.
Install and updates
On Windows the vision service stopped about 15 seconds after it started, so cameras showed Offline and nothing was detected. It now starts its nightly job the Windows way, one failing background task no longer stops detection, and both Run Me.bat and the installed Windows program start a stopped vision service again. A source install also stops warning about CUDA files it never needed.
Upgrading a Linux or Mac server to 1.1.422 stopped at the backup before the upgrade, because the package lacked a file the backup needs, so the old version kept running. The package now carries it, along with the updater trigger that was also missing, and every build checks that the files its scripts need are inside.
Installing or updating from the downloaded package never fetched the fallback person detector, and running the installer again did not help. It now downloads, so a server with no person model chosen on the Models page still finds people. The package's read-me also now says the version before an update is kept so you can go back to it.
Privacy
After you build a person's data export on a request, the Download button now shows. Before, it never appeared, so the export could not be fetched from the page.
On a phone the top bar of a breach page was pushed wide by a long code, which hid the notifications bell. It now says Breach or Request instead.
The breach report PDF now lists the data involved with the same words as the form, such as Face data, not the stored name.
On the Breaches tab the time left to notify now shows red once under 2 hours, not only after it has passed. The bell alert says the deadline is within 6 hours.
Sound
A new Sound & Voice app listens in zones with a microphone for alarms, breaking glass, bangs and calls for help, and keeps only a score and a short clip with speech muted. It stays off until audio is cleared for your country and an administrator ticks three checks for each zone.
Visitors
A role that may not see people, such as Viewer, now gets one plain line on Expected visitors saying so, in place of an Export button and two error boxes.
On the visitor kiosk, the Your visit card now reads the arrival as a time such as 08:52 in the site's time zone, where it used to print a long date-and-time code.
Choosing a camera for a visitor kiosk now depends on that camera having its PPE check on, as the camera chips show, and the message says so: "turn on its PPE check first". The old mention of a PPE mode, which no page offers, is gone.
Accuracy checks for counting lines and people, one count for overlapping cameras, picture health for every camera, and distances on forklift alerts, Test bench videos, one violation per joined person, and one install file for each computer
Overview
A head-office server can now show each site's compliance, open alarms and cameras online side by side, worst first, judged by one written rule. Only totals leave each site, never video, faces or names.
The Saved passwords cannot be read alert now says how many saved passwords are affected, on the System page and in the bell, so you know how many to type again.
A site waiting for its first report no longer shows its pairing code on its card. Make a new code opens the pairing dialog with the server's address, and says the code works once, for 24 hours, and is not shown again. A site whose last report is over 3 minutes old now reads Late, and the limits are changed only under Settings, Headquarters.
Monitor
A person can no longer get the same id on a camera they could not have walked to in the time. Walking times come from the floor map, or from the camera links you set.
Where two cameras see the same floor and both are placed on the floor map, the Monitor now joins their views, so a person seen by both counts once. Cameras that cannot be joined still show a range.
Floor map
Two people standing close together are now told apart by how they look as well as where they stand, and a person seen on a far camera while still in view on another is no longer given the same id. When joined cameras stop being joined, the floor map clears the people it was still showing.
Events
When you review a clip before sharing it, you can now play it at 0.25× up to 8×. Watching faster than 2× does not count as reviewed, so the clip still has to be seen at a speed where covers can be checked.
When two joined cameras see the same person without the same safety item, the second camera's alert now joins the first instead of opening a new violation.
An event now shows the rule that raised it: the check and its settings, such as confidence or how long it must be seen. It reads the zone's current settings, so you can see why it fired without opening the zone.
A face alert now shows the enrolled photo beside the face that was seen, how wide the face was against the smallest face the rule judges, and the reason a person is on the watchlist. A strip lists where else the same person was seen earlier today. Alerts raised before this update show no width.
On Playback, when an export finishes, the keyboard focus now lands on the Download button. Before, it fell back to the top of the page and a keyboard user had to tab through the whole page to find it.
Reports
On the Area analytics queue chart, an hour that has not happened yet, or has no watched time, now reads No data yet instead of 0 waiting with n 0.
The Camera health report now shows each camera's grade as it stands now, the same as the Cameras page. Before, it could be up to an hour behind after a new accuracy check.
In the Compliance report, a person seen by two joined cameras now counts once in their area's time in compliance, and the area says so. The camera rows are unchanged.
Video search
Ask about events and visits in plain words, such as who was in the paint shop without a mask yesterday. The answer says what was counted and which cameras it covers, and shows the filters it used.
Cameras
A camera with glare or distant people can have its own minimum confidence for people and for PPE, while every other camera keeps the site's values.
The camera health and tamper checks once more say where they can be wrong, such as false alarms at dusk, in rain and in glare, so a warning is read with that in mind.
Click once on a floor, walkway or door, or move a cross with the arrow keys and press Enter, and a suggested outline appears. Nothing is saved until you accept it, and you can adjust its corners first. The same tool outlines a private area when you share safely.
When a site has more cameras than its licence allows, an administrator can now switch on Keep active for a paused camera so it runs and the newest of the others gives up its place. Switch it off again to return to the usual order, oldest first.
Each Keep active switch now carries its camera's name and a line that explains it over the licence limit. Turning it off lets that camera be paused again.
In the camera form you can now draw private areas on a camera's picture, name them and remove them. A private area is filled in solid in the checked picture, in snapshots, in new recordings and in shared exports, so nothing behind it is shown or kept there. Live video played straight from the camera is not covered yet.
Cameras has a Picture health view: each camera says whether its picture is good, blurred, blocked, moved, dark or frozen, and for how long, beside the reference picture a person saved. A problem raises an alert, with its own threshold by day and by night, and Overview, the Monitor's Auto layout and the bell show it too.
Customize on Cameras has a View setting: pick whether the page opens on the list or on Picture health. A link that names a view still wins, so shared links keep working.
The user manual now describes each picture state, how to save a reference a person approves, and the day and night thresholds. A replaced reference is kept for 90 days so it can be restored.
On a camera's Settings tab, the accuracy card now shows the camera's real grade and its size suggestions instead of always reading not yet checked. On a phone, the tables on the Accuracy report can also be scrolled with the keyboard.
On a phone, the Checking budget card at the top of the Cameras page no longer runs past the right edge of the screen. It now takes the width of the page and keeps its full size only on a wider screen.
Training and models
An empty Test bench now offers Load the sample runs. It runs three sample photos and one short video through your own models, so you can see a result before you add any files of your own.
A video run can now use the second opinion as a third PPE model, and the finished run says how many people it found extra items on. The people count follows the playhead, and each run says how long processing took, in GPU seconds on a GPU or CPU seconds otherwise.
Detection and counting
An area seen by overlapping cameras now shows one number for the people inside when its cameras are joined on the floor map, and says why when they are not.
The Sound preview now shows each microphone level from 0 to 100 with its alert line, instead of decibels. A machine still learning reads, for example, Learning: 5 of 14 days heard, with its helper line under the learn button.
The design for checking each counting line is on show: collect a crossing log, mark every crossing without seeing the system's count, and see how close each line reads. It also shows the check on whether cameras can tell people apart, and the counting page with a measured accuracy beside every line.
A person near a forklift now reads as about 2 m, Near, on calibrated cameras. Cameras without a floor calibration say Near only, never metres. The forklift check also has the Distance hint switch and shows how many warnings it kept quiet.
When a camera briefly loses someone right on a counting line and finds them again, the crossing now counts once. Where it is not sure it is the same person, the crossing is counted as unsure and shown in the range.
A counting line can now collect a crossing log: about 80 minutes of the busiest hours on each of 3 working days, one day for tuning and two kept back for grading. A reviewer marks each crossing in or out without seeing the system's count, and a day is added when too few crossings were marked.
Storage
Under Recordings by camera, a Keep recordings for slider sets the days for cameras without their own setting, and shows how much disk that needs and what a clean-up would remove. Cameras with a different value change only when you tick Apply to all cameras, and Undo puts everything back.
Users and access
An email group can now include a role you made, and Do not disturb for supervisors is open to any role that can do at least as much as a supervisor. Deleting a role takes it off its email groups and tells you how many.
Choosing a role for a person now lists your site's own roles too. A role or an account that can do more than you is shown locked, with the reason.
A password reset request now leaves the queue only once you have copied the link or temporary password. If you close the dialog first it says Link created, not copied, and you choose Keep open or Close anyway, or Create a new link.
The Users list now says Pending approval for people waiting on you, and Invited, expires and a date for people who have not yet chosen a password. Resend link makes a new invitation link, and Revoke link ends one without deleting the account.
Settings now has a Site network list of address ranges, with this server's own network offered as a start. A request for access from an address outside them shows a warning on the Users page, so you can check who it is before approving. Left empty, nothing is flagged.
Administrators can copy a built-in role and choose exactly what it may do, with every permission explained in plain words. A role can never give more than the person making it can do.
Look and settings
Choose how long a camera may go quiet before it counts as offline, when less urgent checks slow down on a busy server, and how often Video search keeps pictures. Fire, smoke and person down never slow.
Under Settings, Headquarters an administrator enters the head office's address and pairing code, and this site then sends its compliance, open alarm and camera counts every minute. It sends no video, faces or names, and Stop reporting ends it.
Choose how dates are written, a 12 or 24 hour clock, and metres or feet in Your preferences. Distances, floor sizes and the floor map can show feet instead of metres. An administrator sets the site's default, which report PDFs use too; your own choice follows you to any computer.
Pick the siren and notice sound and how loud each plays, and test them in Your preferences or Notification settings. The alarm can be turned down but never below 20 %, so it is never silent.
Copy ID on the Licence page, and the other copy buttons, now work when the app is opened at a plain network address. If your browser still refuses, you are told to select the text and press Ctrl+C.
A licence that includes Own branding lets an administrator set the product name, logo and accent colour in Settings, under General and branding. Without it nothing changes, and Reset branding goes back to the licence's own.
A trial licence can now change the product name, logo and accent colour in Settings, General, whenever it was issued. Before, older trials showed these as locked.
Export this site's settings to a file and import it on another server, seeing every change before it applies. Each Settings tab can be put back to its defaults, and the last import or reset can be undone.
In Customize on the System page you can now hide the Acceptance card, the Capacity plan sliders and the Cost of each check list. System alerts stays, because it tells you what needs attention.
Install and updates
On the Licence page, an administrator can now write a renewal or change request for the system provider. It fills in the site, installation ID, licence ID, expiry and software version, so the right licence comes back first time.
The System page now lists the nine contract items with the date of each last run, a bar showing how many have passed, and the passed items folded away. An administrator can sign an item off after checking it by hand, and withdraw that sign-off if it was a mistake.
Under the Installation ID, Write a request opens Ask for a renewal, with the licence's customer, site, cameras, expiry and version already in the text. Edit it if needed, then Copy request and send it to your system provider.
Run Me.bat now installs with shorter file paths and without developer-only lint tools, so a deep Downloads folder no longer breaks it, and it installs Node.js and retries a failed download by itself. A folder inside OneDrive or with an extremely long path is caught in the first minutes, with the exact move to make.
Windows, Mac and Ubuntu each get a single file to open instead of a zip to unpack. It checks the download and then runs the same install as before, so updates and rollback work as they always have.
Administrators now see five go-live checks on the System page, such as developer tools being off and sign-in cookies needing HTTPS. Each one says what to change, and no password or key is ever shown.
Privacy
In the Enrol a person and person details dialogs the Group label and its help text now sit above the dropdown, so the text is no longer squeezed into a narrow column and the No group choice is no longer cut off at a 1280 pixel window.
A plainer Overview, security check chips, fixed camera pads, open alarms on the Cameras list, and a clearer Model library, attendance in data requests, and clearer Accuracy, Training, Models, System and Licence pages, a one-time welcome for a new site, visitor kiosk settings, and expected visitors
Overview
On a server with its own database, the set-up list asks for the nightly backup and ticks the step after the first good one, so a new site does not run for weeks without a backup.
The line under the Overview title now reads "All clear" when nothing is open and every camera is online. When the detection service is silent it says so, so a quiet page is not mistaken for a safe one.
When a newer model is ready, the Active model tile on Overview now says which version waits for a person to activate it.
A violation on Overview now has Acknowledge and Watch live buttons, and an offline camera has Check camera. Review, sample and new-model rows sit in a folded Later group, with Show all to open it.
The Cameras panel on Overview now shows a recent picture of the camera you pick, refreshed every 10 seconds, with a line saying how long ago it was updated.
The online demo now draws what a new site's first administrator meets: a short welcome that asks where the site is, the longer set-up list, and a Monitor that says why Add camera is locked for a Viewer.
With the Security app on, the Overview shows who is on site now, today's unknown faces and possible watchlist matches, and any camera that is covered or moved. Each figure opens the events behind it.
The first time an administrator opens Overview on a new site, a short welcome asks where the site is, so reports and shifts use the right clock, and says which privacy rules apply. It shows once for each administrator.
A new site's set-up list now asks for its country for privacy. Until one is picked, the strictest privacy rules apply.
A new site is asked whether administrators must also type a code from a phone app when they sign in. A site that does not want it skips the step with a reason, so the choice is on record.
Monitor
On a phone, Retry now, Watch earlier footage and Camera settings on a tile with no picture are now full-size touch targets, so they are easy to hit with a thumb. Desktop buttons look the same as before.
In the Focus layout the strip of nearby cameras and Follow this person now sit above the small status badge on the picture, so the words "No picture" or "Live video" can be read again. On a phone the strip gives way to the arrows, and Follow this person moves into the bar under the picture.
For a role that may not see people, Follow this person is now dimmed on the Monitor and in playback, with the reason beside it, instead of looking ready and doing nothing.
When a plate waits for a guard, the Monitor's automatic layout brings that gate camera forward until someone decides.
When you focus a camera that cannot turn or zoom, Monitor shows one small icon in the corner instead of covering the picture. It opens the greyed-out pad with the reason, and a close button folds it away again.
Floor map
A trial or expiry notice no longer prints across the top of the muster roll-call page, so the paper copy shows only the roll-call.
When someone walks into a no-go zone, the zone now pulses twice on the 3D, 2D and flat map, the alert list selects it, and the view flies there with an Open button named after the zone. Before, the map showed nothing until you opened Events.
When the positions stop arriving, the dots now fade to a faint copy of themselves at the moment the map says "Showing positions from ...", so nothing on the floor pretends to be live.
The layer switches, the 3D, 2D and flat plan choice, the zoom and turn buttons, Muster and Edit in the studio, the arrows to nearby cameras, Follow this person and the close button on the camera card are now thumb-sized on a phone.
On the live floor map the 3D view could drop to the flat plan by itself, saying 3D was not available, while people moved on the floor. It now stays in 3D for as long as the browser can draw it.
In an installed copy the map studio's coverage shading and blind spots could not be worked out, because the helper that grades them was shipped unbuilt. It now ships ready to run.
Printing a finished muster now gives the roll-call alone, all of it, without the menu, header or buttons. While a muster runs, its bar no longer covers the top of the menu.
Events
On a phone, the incident status tabs, Take it, the status menu, Open in Playback, the notification filters and settings, and the Licence link in the top banner are now full-size touch targets. Desktop sizes are unchanged.
Under the Security category on Events, chips now let you show only the checks you care about, such as Watchlist match or Camera tamper, or several at once. All security shows them all again.
On All, Events now says in one line how many PPE events wait for a review and how many are open, with a button to show them. On Safety, a note points to Safety checks, where those alarms are tested and set up.
An event now has a Show on the map button, in the side panel and on the event page. It opens the floor map on the camera that saw it, so you can see where it happened.
On a phone, Playback now has Previous camera and Next camera buttons under the picture, so you can change camera without swiping.
Security events show the face picture and what was matched: a possible watchlist match with its similarity, an unknown face, or who was not allowed in the zone. A person recognised later is named on the event. Face pictures are shown only to roles that may see people.
The selected row on Events keeps its small grey text readable, links on an event page can be read on a light theme, the Incidents list and the phone-sized cards are announced correctly by screen readers, and the legal-hold note box on an event page now has a name a screen reader reads out.
Reports
The Vehicles report lists every gate pass with its list, match, decision and who decided, in the PDF and the spreadsheet. Plates show as Hidden unless your role may see number plates.
Attendance
A person's data export now includes their attendance list rows, clock-ins and corrections. Erasing a person keeps their attendance unless you tick it, because it is a working-time record for pay.
The demo and the roadmap now list Time & Attendance as available rather than later. It still stays off until the site picks a privacy profile and confirms it.
Rules
On a camera without a floor calibration, Settings can now let a depth reading keep a forklift warning quiet when the person is clearly far behind or in front of it. It is off by default, never shows metres, and counts every warning it keeps quiet.
Cameras
A camera that runs on a helper server was raised as offline after a minute, though its helper was sending pictures. The offline alert now follows the server that runs the camera, so it only appears when that camera really stops.
A camera with an alarm still open now says so in red under its status on the Cameras list, so you can see which cameras need someone without opening the Events page.
The time a camera prints inside its own picture is now set from the site time zone. Use Set camera clocks in the Cameras menu to set them all at once; it also happens when you add a camera's ONVIF login or change the site time zone.
A faulty update made the Cameras page stop with "Something went wrong" every time it was opened. The list, its filters and the offline and alarm lines show again.
When a camera's picture is blurred, blocked, moved, dark or frozen against its saved reference, one alert opens for that camera and the camera joins the needs-attention list. It closes by itself once the picture is good again, the checks are turned off, or the camera goes offline.
Training and models
The Models page offers a plate reader for the Vehicles app. Installing it reads nothing by itself: plates are read only on the gate lines where an administrator turns reading on.
On Compare models, each model shows its first five missed pictures, and View all opens the rest, so the page stays short until you want every miss.
Choose Any licence, Commercial use allowed or With conditions, and press Reset filters to clear the job, PPE and licence choices at once.
The Model library shows when the model catalogue was last checked for updates, to every role, not only to people who can press Check for updates.
Each card shows its licence tier, and a legend under the cards explains Tier A, Tier B and no tier. A speed measured on another machine is tagged as an estimate.
Each card now states the licence of the training data and what the model runs on, so a permissive badge no longer hides research-only data. A new link opens the Test bench to try the model.
A line under the Model library says how many of the running models have a licence that is not AGPL, and names any AGPL model that is loaded. It can be hidden in Customize.
Customize on the Models page has a Job start, so the library opens on PPE, Person or a safety job. A new switch also hides the Running now strip.
Answer buttons are larger and fill in when picked, and staged walks read Start this pass and End this pass, with a confirmation before you finish. Failed answers show an error and stay open for a retry, saving a camera set, clip or weekly check shows a message, and empty states say what to do next.
Stopping or removing a job from All jobs now asks first, and on phones each job is a card with Pause, Resume and Stop in reach. Lists use plain words such as Done, Stopped and Passed checks, the New training job dialog keeps its buttons in view, and a first visit shows one card with a New training job button.
Models shows one Active models panel with plain names, asks before deactivating a live model, and says deleting cannot be undone. Compare models shows an error with Retry when a load fails, explains each confusion matrix, and names the model on its activate button. All models explains why a model cannot be shortlisted, offers Undo when you clear the shortlist, and downloads a CSV that is safe to open in a spreadsheet.
The All models list no longer sends you to outside advice. Notes now say to read the licence text or check local rules before a model ships.
A frame that looks like one of the last 20 saved from the same camera is no longer saved for review again, and similar frames are grouped so they can be reviewed together. Two settings under collecting frames turn skipping off or change how alike counts.
A new helper server now measures how fast it runs the AI models as soon as it joins, and shows Measuring speed until it is done. Installing a model or pressing Run again tests it on the main server and on every helper that runs cameras.
The main line of a training curve and the outlined "now" square on a rule's week grid used the bright brand colour, which was too pale on a white page. In the light theme they now use a darker shade, so they can be seen.
Detection and counting
Each run's two models and its mode now sit on one line instead of wrapping under each other. On a phone the setup says plainly that it is read-only, and points to Run options beside the files for the video checks.
On a machine with no graphics card, the GPU choice is greyed out with the reason, and Auto says it will use the CPU. The menu also says CPU detection is limited, and that accuracy improves as automatic training learns from this site's approved pictures.
A person's page shows, for any day, when each camera saw them, and lists the face samples used to recognise them. A wrong sample can be removed, so it stops causing wrong matches.
Storage
A new setting sets how many days may pass before a backup should be test-restored, and the Backups panel now shows a restore-test line next to the last backup. It tells you when a backup has gone too long without a proof that it can be restored.
On a phone, card titles such as Categories keep their full name and the buttons beside them move to a second line. Equal clean-up ages on Storage read as one line, and the folded parts of the System capacity card show an arrow so they look like what they are.
On a disk smaller than the clean-up line, the Usage chart's coloured zones and lines reached past the chart and over the rest of the Storage page. They now stop at the chart's edge.
A new look-ahead screen shows how the System page will report a restore test next to the last backup, the support file you can send without passwords or pictures, and what to do about each system alert.
Expected visits and their check-ins are deleted 90 days after the visit, or after the time set in Settings, Visitor kiosk.
Users and access
A new permission, See number plates, lets reviewers check plates on deny events. Viewers see counts and bays with plates hidden; editing plate lists needs Edit plate lists.
Erasing a person's data cannot be undone, so the Privacy desk asks for your password again before it runs.
An empty page says what will appear there and the next step. When that step needs a role you do not have, its button is greyed out with the reason beside it, instead of opening a page that refuses you.
When there are no recordings, no footage, no zones or no PPE types yet, the next step is greyed out with the reason beside it if your role cannot take it. Before, the button opened a page that refused you.
When Reports, Visits or Training has nothing yet, its next step is greyed out with the reason beside it if your role cannot take it. The dataset versions list also says what a version is and what to do before the first one is made.
Look and settings
The visitor kiosk now shows the time in the site's time zone, and the badge names the visitor type in plain sentence case instead of capitals.
Before any helper server is added, the helper settings were faded and hard to read on a phone. They now show at full strength, still locked, with the line that says to add a helper first.
Licence expiry dates, load test times, camera offline times, the rule hours strip, consent dates, the camera list file name and model training dates now use the time zone set for the site, not the one of the device you are using. Everyone sees the same day as the people on the floor.
The camera choice in Customize no longer cuts off a long camera name, and a page's help picture keeps its edges and labels inside the frame and opens at the top. When every detection device choice is greyed, the menu now says why: only an administrator can change it, or vision is offline.
Customize, Filters, Export, Summary, Running now and the page help now open as a popup in the middle of the screen, the way Customize view does. On a phone the popup is nearly full width, and Escape or the Close button shuts it. The page behind is covered while a popup is open. Visit details open the same way. The phone menu still slides in from the side.
The Vehicles tab now sets how long a vehicle must stand in a bay before it shows as taken, and how long a bay must stay empty before it shows as free. A new Stayed too long in a bay check, quiet by default, is ready for the bay panel to come.
A helper server in another country gets footage work only after someone who manages privacy records the legal reason for it. Withdrawing the reason moves its cameras off at once.
If part of a page could not be downloaded, often right after an update, the message now says so and gives a Reload page button. Retry could never fix this case.
Times and dates in alert messages, licence emails, data-request files, the camera-health export and the daily summaries now follow the time zone chosen for the site, not the time zone of the computer running the server. Days roll over at the site's midnight everywhere.
Times, dates and days across all pages now use the time zone chosen in Settings, not the zone of the browser or computer you are using. A manager abroad sees the same hour and the same "today" as the people on the floor.
Settings, Visitor kiosk now lets you add a kiosk for the gate and pick the camera it uses, and set how long visitor records are kept.
Opening the app, or signing in without a page in mind, now takes you to the page you last had open, or to Overview the first time. A home page you choose in Your preferences still comes first.
A menu entry tagged Locked or Off was faded so much that its name and tag were hard to read, most of all on a light page. The name now uses a quieter grey instead of fading, so it is still clear and still reads as unavailable.
When no helper server is added yet, the explanatory words under each setting are no longer faded, so they stay readable in light and dark.
Info icons and notices, accent badges, selected filter chips, the day buttons on a rule and the pinned-model star used the bright brand colour, which was too pale on white. In the light theme they now use a darker shade of it, so they can be read.
The Theme, Row spacing and Home page controls no longer poke out past the right edge of the Your preferences window on a wide screen. The window is a little wider, so each setting and its control sit inside it.
Install and updates
Each open system alert on the System page now says in one line what to do about it.
The Backups panel shows when a backup was last restored as a test and whether it passed, and you are warned when no test has passed for 90 days. The number of days is set in Settings, under Backups.
Every download now includes the full end-user licence, the third-party notices and the written offer of source, and a package missing one of them is refused instead of shipped.
The System page now warns when no backup has been restored as a test for 90 days, or when the last restore test failed, and clears the warning after the next passed test. A server that never ran a test gets the full 90 days before it is warned.
Models, cameras and services show their names, such as Live video relay and Same-person tracking, instead of ids and tool names, and backups sit below the live health panels. Cameras appear as cards on phones, resolved alerts fold behind Show all, and starting a load test or downloading the support file confirms with a message.
The newest release now always carries the highest version number. Before, today's entry could show a lower number than yesterday's.
Dates show the day only, the status panel lines up its labels and values, and the move-server dialog is titled Move this server's licence with a Release and move button. History shows as cards on phones, people who cannot manage the licence see the explanation first, and an unreadable licence file or failed renewal now says what went wrong.
A fresh install unlocks every module until the trial's end date, about 90 days after the release, with no licence file to apply. A server that already has a licence, even an expired one, keeps it and is not touched.
If the server's secret key changes, for example after a restore, an alert says how many saved camera and channel passwords cannot be read and how to fix it.
The warning for saved passwords that cannot be read now asks for the old secret key back in the server settings file, in plain words. The advice itself has not changed.
The server health answer and the setup check now include backups. A failed or stopped backup, or a failed restore test, shows as a warning that points to System, Backups, and never marks the whole system as down.
IT teams can point their monitoring at the server to watch health, cameras, disk and backups. It stays off until a monitoring token is set on the server.
Privacy
The Privacy desk can take a request about a number plate: it shows, exports or erases every pass, list entry and event picture of that plate, and keeps plates on legal hold.
Vehicles and plates
Keep allow and deny lists of number plates with groups, end dates and reasons, and import or export them as a spreadsheet. Every search, opened picture, export and change is logged.
Add the plate layouts used at your site, such as AA AAA-9999, as chips in the Vehicles settings. Each layout is checked as you add it; with none listed, any plate text is accepted.
Gate lines can read number plates. A plate on the deny list alerts the guard, and an unknown, unclear or near-match plate waits at the top of the Vehicles page until someone lets it in or turns it away. Plate reads are kept 30 days by default.
Plate reads and their pictures are deleted after the days set for plate reads, and a waiting pass that nobody decides in time shows as Not decided. An administrator can erase one plate from every pass, list and event picture at once, except events on legal hold, and the deny email now names the plate and list only in its body.
Draw a row of bays on a car park camera. Each bay shows taken, free or reserved, with how long vehicles stay, and a person can set a bay by hand until the camera sees a change.
Setting a bay to taken or free by hand now updates the Parking bays taken count at once. Before, the count stayed one step behind, and other open browsers kept the old state until the camera next reported.
The Vehicles tab now has the plate settings: local plate formats, how long reads are kept (at most 30 days) and how many pictures must agree. Roles can be allowed to see number plates or to edit plate lists; reviewers can see them, viewers cannot. Plate reading itself comes with the plate reader.
The plate formats setting can add the usual Sri Lankan or Kenyan plate layouts in one pick. Check them against the plates at your gate, then remove or add any before you save.
Visitors
The Expected visitors page lists today's and upcoming visits. Add a visit with its host, area and time, then copy or print the invitation with its code, which works once at a time and only around the visit.
A paired kiosk now shows Touch to start, then finds a visitor's expected visit from the QR code on their invitation or the code they type. It returns to Touch to start after 15 seconds without a touch, and Need help? calls the gate desk.
At the kiosk, visitors show their invitation's QR code or type its code, put on what their area asks for while the camera checks each item, and take their printed badge. Need help? and Call my host reach the gate desk at any step.
Expected visitors shows who is at each kiosk, which items are still missing and when a visitor asks for help. The desk can let a visitor in, check someone in by hand and mark them as left, each with its reason logged.
Export every check-in of up to 31 days, with how each visitor was found, whether the desk let them in and when they left.
The visitor kiosk is marked in progress: a pass code has 8 characters, Read aloud is ready, and matching faces to a visit is still to come.
Tidier Monitor, map studio and Rules pages, Incidents on a phone, clearer Licence, Models, Users, Apps and Storage pages, and a dated support file name, a tidier System page, a smoother urgent tone, repeating High violation alerts, Do not disturb and the attendance sheet
Overview
The line under the Overview title now says how many violations are open and how many cameras are offline, and the Open violations, Awaiting review, Pending samples and Active model tiles open the page where you deal with them.
Needs attention is only as tall as its rows, the camera detail sits right under the camera cards with no blank gap, and on a phone Latest violations shows one card per row so camera names are no longer cut and chips no longer cover the picture message.
On the Overview, the Set up this site list now shrinks to its progress line as soon as one step is done, with Show steps to open it again. On a phone the Area choice also takes the full width of the header.
On the System page, Acknowledge and the view button now sit inside each alert's box instead of hanging below it, and the Backups card has clear space around it.
Monitor
On a phone the Monitor header now keeps Cameras and Kiosk and puts Summary, Customize, Wall screen and How this page works behind one More button, so the header no longer wraps onto several rows.
On a phone the wall screen's top strip now fits the width: the connection shows as one word, the time zone is dropped, a long attention message shortens instead of being cut off, and Customize is easy to tap.
When too little camera time was observed for a figure, Compliance now gives the reason in a few words, and the Coverage chip still carries the full sentence. Recent events rows now wrap on a narrow panel instead of cutting the text off.
The Monitor's Focus layout, playback and each incident now show the cameras next to the one you are watching, with the usual walk time. Follow this person hands the view along the route, marked as an estimate.
Share safely covers every face, screen and bystander in a clip with a solid fill. You watch the whole clip, say why you are sharing it, and the export carries only the covered, silent copy, signed.
Floor map
Start a drill or a real muster, see how many people reached each muster point and how sure that count is, and mark people safe. Names come only from face recognition with consent, or from a warden.
When a muster starts or ends, administrators and supervisors get an email, with drills marked as such. Each email has a link to stop them.
Take a photo of a hand-drawn sketch or a printed plan and the server traces its walls and room names into a draft you can edit. Plan photos can also be cleaned of people. Everything runs on this site's own server.
The floor map now shows a dot for each person a calibrated camera sees, with a ring for how accurate the place is, alarms on their zones and room counts that say how they were counted.
The floor map lists what needs you now: watchlist matches, people missing PPE, rooms over their limit and cameras that are offline. Pick one to fly to it, and see where each person was last seen if you may see people. On a phone the map comes first, with one alert at a time above it.
A zone drawn on the floor map now runs on every calibrated camera that sees it, with one alarm however many cameras see the person. Warning bands and no-go zones never switch PPE checks off.
Undo, Redo, Preview live map, Save draft and Publish now sit together above the steps, and the floor name, building, north and delete options fold away until you open Floor settings. The canvas and the step panel come first.
The five numbered steps now stand in a column beside the canvas on a wide screen, and Floor settings is a button that opens a window, so the canvas starts higher on the page.
The Floor map header now says how many placed cameras are online and names the ones that are not. Cameras that are offline or disabled are drawn grey on the map, and a legend underneath explains the colours.
On a phone the Floor map now stops at a sensible height and shows the whole floor in view, so the page below it is no longer pushed far down the screen.
Every night the map suggests zones from the site's own events, forklift routes and plan, each with its reason. Nothing is added until someone accepts it.
Point at a camera on the floor map to see its latest picture, who it sees now, any open alert and its three nearest cameras. Open full size takes you to that camera on the Monitor.
Events
On a phone-width Events list, the buttons inside each card now work on their own, and the dim time under a date is easier to read in the dark theme.
A short period with no visits now says "No visits in this period" and offers the last 30 days. "No visits yet" appears only when even 30 days are empty, with a button to open Cameras and draw a zone.
With an event open in the side panel, the Events table now narrows to fit instead of running under the panel. The Alarm column only appears while a listed event is an alarm, which gives the other columns room.
On a phone the Incidents filters sit behind a Filters button, a tapped incident opens in a sheet from the bottom instead of under the whole list, and the bar for assigning or closing ticked incidents stays pinned to the bottom of the screen.
Customize on the Incidents page now lets you pick which tab (All, New, Being handled or Closed) and which period the page opens with. Choosing a tab or period on the page still wins for that visit.
With the selected-event panel open, the narrower Events table no longer drops the person. Their name now sits under the camera, next to the review status.
On a phone the Events filters, including the From and To dates, now sit behind one Filters button that opens a sheet, and the active ones still show as chips you can tap away. Event cards also leave out the empty Alarm line when an event has no alarm.
An opened incident is titled by the missing item, such as "Missing Helmet and Vest", instead of only its number. Each open row in the list now shows how long it has been open next to who has it.
When Export is greyed out, hovering or focusing it now says why: no visits, still loading, an incomplete custom period, or an export already running. The period buttons also wrap on a phone and are easier to tap.
Above the probability bars, an event now says which items its zone requires and how serious a miss is, with an Open rule link to the Rules page. It shows on the Events side panel and the event page.
When somebody has acknowledged an event, the Events side panel now lists an Acknowledged fact with the time and the note they left, so you can see at a glance that it is being handled.
On Events, J and K go to the next and previous event, A acknowledges the open alarm and B switches the picture between Annotated and Raw. The ? keys list shows them.
The Evidence part of an incident now lists what was missing and the review status, and says until when the pictures and clip are kept, with a link to change that in Storage.
An incident's panel now has Resolve and False alarm buttons beside Take it, plus Print report and Download. A long incident title wraps in full instead of being cut off.
A Visits list with nothing recorded yet now says "No visits yet" and how a visit gets logged, instead of blaming filters you never set. The Clear filters button only shows when a filter is actually on.
Reports
When events exist in the period but none counts as a violation, the Compliance tab now says how many were recorded and offers an Open Events button, instead of claiming nothing was recorded.
On a phone the Reports tabs and the period choices (Today to Custom) now sit in one row you can swipe sideways, with a fade at the edge while more is waiting. Tabs and period buttons are also tall enough for a thumb.
On Reports, the line naming the zone with the lowest time in compliance is now a button: click it to narrow the whole report to the camera watching that zone.
On Reports, each bar in Violations per day is now a link: click it to see the events of that day on the Events page.
A saved link to the old Analytics page now lands on the Area analytics tab of Reports, with its camera and period kept, instead of on Compliance.
On a phone, the period buttons at the top of Reports (Today, Last 7 days and so on) keep their full size and slide sideways, instead of overlapping and cutting off their labels.
When no camera had enough coverage to judge time in compliance, Reports now still shows the violations that were counted, the bars per day and the PPE breakdown, instead of an empty page.
Reports gain a Camera health tab: when each camera was watching, frames it skipped, time without a safety-gear model, clock problems and each camera's accuracy grade.
Reports gain an Accuracy tab: each measured error with its range and sample size, the check sets and their age, how well reviewers agree, and the result of each checked change.
Reports exports attendance for up to 31 days as CSV or PDF, with the same columns as the day sheet. It is not sent on a schedule until someone sets that up.
Video search
When no camera can be searched, Video search shows one block that says why, hides the Boxes switch and the match legend, and greys out Search with the same reason.
When no camera can be searched, Video search now shows one clear block that lists each camera with its reason and a Check cameras button, instead of repeating the same news in the filters, the results and the index line.
Attendance
Supervisors fix a day, enter times for people who clock in by hand, review a clock-in that may be a photo, and keep the attendance list and consent records. Every change keeps its reason and shows in the CSV.
A person's page shows their shift, their consent and their last 7 days, and enrolment can record consent to clock in by face.
Rules
Three new checks compare a zone with a reference picture you approve: something left behind, something that should stay gone, or an exit or walkway blocked. An alert shows the picture now beside the reference, and Mark as normal makes the new picture the reference for moved stock or a new fixture. They need no AI model and show as Preview until they are checked on site.
The side panel on Rules now appears only once you pick a cell, so until then the matrix has the whole page. A soft fade at the right edge shows when more PPE columns wait beyond it, and on a phone the zone name has more room.
Require everywhere and Remove everywhere now sit in a bar under the Rules table, with how many zones need the chosen PPE and a progress bar, instead of at the bottom of the side panel.
Under the Safety checks, a line now shows which outputs an alarm can leave by (siren, email, SMS, WhatsApp, webhook, relay) and whether each is set up or failed last time. Send a test alarm rings the siren here and sends a message marked TEST through every output that is set up, then says how each one answered.
Each check switch now says On or Off in words, each group counts how many of its switches are on, and a toast confirms when a check is switched on, off or its severity or alarm is saved. A soft fade at the table's right edge shows when more checks wait beyond it.
On a phone each group of safety checks now shows one card per zone with its checks as a list of switches, so nothing scrolls sideways. The Rules tab strip fades at its edge when more tabs wait beyond it.
The Security checks tab on Rules now has a See security events button that opens the Events list already narrowed to security. You can go from setting a check up to seeing what it caught.
On the Safety checks and Security checks tabs only the Life safety group is open at first, so the checks that matter most are in view. Open the others as you need them, or pick another start in Customize and it is kept.
Two new zone checks: one warns when a person has been alone in a zone for too long so someone can check on them, and one warns when a person in a forklift lane walks outside the walkway.
Cameras
The Cameras list no longer has a Picture column, so Edit and Delete stay in view on a laptop screen and each camera takes a shorter row. Open a camera to see its live picture.
A camera with no picture now shows a red dot with the time its last picture came in and the reason the camera gave, right in its Status cell. The banner above the table names the reason too, so you do not have to hover to find out.
Training and models
On the Models compare page the header trail now reads Models, then Compare models, instead of the plain word in the address. All models is named the same way.
On All models each job now shows its best six models with a button for the rest, and the models to avoid stay hidden until you turn on Show the ones to avoid. The page is shorter to scan, and a search or a chosen job still shows every match.
On a phone the Model A and Model B pickers now stack full width with easy-to-tap controls, and a line under them says Model B lists models of the same kind and where candidates come from.
On the All models page, the Details, Install and Shortlist buttons on a model card now wrap onto a second line when the card is narrow, so none is cut off.
Each frame in the labelling queue now reads Looks new, Model was unsure, You marked a false alarm or You added it, and hovering shows a short reason, instead of a raw code word.
Add to golden, by button or the G key, now asks you to confirm once per visit, because golden frames are test images the model is never trained on. Taking a frame out of golden still happens at once.
An empty review queue now says how frames arrive, through Upload image and Import as well as the model and false alarms. The camera choice for uploads is wider, and a Shortcuts button lists the keys.
The Used by column on dataset versions now shows the model's name and version, such as Site PPE v8, instead of a short code.
Each cell in the compare page's confusion matrices is now a button. Choose one and its sentence, such as "Helmet found as Vest: 3", appears above both matrices with the same cell marked in each model.
The score curve on Training now marks the epoch with the highest score and labels it, for example "Best, epoch 12", so you can see at a glance whether the run peaked early or is still climbing.
Under Past runs, a run that is not live now has a Compare with button that opens Model validation with the live model and that run side by side, so you can check them before you activate.
When no frames wait in the review queue, the message now spans the whole page and the Select frames link is hidden until there is something to select. The 256 MB and JPEG limit now sits inside the Import menu it belongs to.
Detection and counting
On a phone each counting line is now a card with its in, out, net and online time, instead of a table you scroll sideways. A line nobody has checked by hand now reads "Not yet checked" with a link to how to check it.
Capacity now sits above Detection on the System page, the Detection card is only as tall as its content, and the Audit log shows the latest 10 entries instead of a long list.
Under the last load test, System now draws one bar per test camera showing how many checks a second it held, with a dashed mark at the rate you asked for. A camera that fell short is easy to spot.
When the busiest hour cannot be named, the tile says which hours are too close to call, or that nothing was counted. The note about when counting began now appears once instead of repeating for each period.
Drop a file or open the Library at the top of the Test bench, with the model choices closer together below. The figures for the files shown appear only once a run has finished, instead of reading zero on an empty bench.
Storage
The Auto-delete rule column in the Storage categories table now keeps enough width to read in full, and the table scrolls sideways on narrow panels instead of squeezing the rule to a few letters.
The Storage page now shows its status in one place: the Normal chip when all is well, or the banner when space saving is on or the disk is critical. The read-only line and the automatic clean-up note share one box.
Attendance records are deleted after the time set in Settings, and clock-in face pictures after their own, shorter time. The Storage page shows the space they take.
Users and access
On a phone, each Audit log entry is now a card with its action, person, target and time, instead of a table you scroll sideways.
On the Users page, each request now shows when it was made and the address it came from on one line, and the empty password-reset card takes much less room.
On a phone the face-data notice folds into one line you can tap open, and the People filters sit behind a Filters button that shows how many are in use. The list now starts near the top of the screen.
The groups dialog on the People directory now lists, for each group, the zones that allow it. Delete is greyed out with the reason while a group still has people or a zone that allows it, instead of failing after you confirm.
The history table on the Licence page now has an Applied by column with the person's name, or "system" when no one applied it, so you can tell who changed the licence and when.
Each row now shows Approve and Edit, with everything else (signed-in devices, password reset, two-step, delete) behind one More actions menu, so the last column is no longer cut off on a laptop screen. On a phone these controls are larger and easier to tap.
Administrators choose in Settings, Notifications whether everyone, supervisors and administrators, or nobody may use it, and how long it may last. They can end it for anyone from the Users page.
Look and settings
On an installed copy the licence page said the AI engine disagrees, because the engine trusted no licence key and ran only the base product. The engine now reads the licence as the rest of the system does, so every module the licence includes works.
A switch on the Apps page that you cannot use, because of your role or a lost connection, now gives its reason right beside it, also for an app that is on. The default is shown only when a switch differs from it, instead of on every card.
When the AI engine is offline, Running now on the Apps page shrinks to a single line instead of an empty panel, leaving more room for the apps.
Every app on the Apps page now lists the models it needs and whether the AI engine has each one loaded. The line is left out while the engine reports nothing.
The visitor kiosk preview drops the Tap to speak and Hands-free buttons, because the kiosk does not take spoken questions yet. Language, Large text and Read aloud stay.
Each app card now shows its description once, with a slim footer holding just the switch. On wider screens the cards sit three across.
The urgent tone for High violations now fades in and out in a few thousandths of a second, so it starts without a sharp click. It sounds a little softer at the start; nothing else about it changes.
Typing a word such as "reaction" in search used to list well over a hundred settings, with an unrelated one first. Settings now need every word you type, so "reaction" gives Reaction speed alone and Enter opens it.
When a page loaded straight from a link or a bookmark to one setting, the page could stop near the top, far above it on a phone. It now keeps the setting in the middle of the screen until the page has finished loading.
On a narrow screen the bar at the bottom of Settings cut the list of sections you had changed to its first letter. It now has its own line and wraps, so you can see everything you have not saved yet.
If you can acknowledge violations, the urgent tone can repeat until someone acknowledges, reviews or ends the High violation. It is off until you choose an interval.
Silence your own pop-ups and tones for a set time, on every screen you are signed in on. The bell still counts, alarms still sound, and it ends by itself.
Install and updates
The support file now saves as support-file with the date and time in its name, as the download window says, instead of a plain support-file.zip, so several files from different days no longer overwrite one another.
On a phone the Status and Installation ID cards on the Licence page now wrap long names and the ID onto a second line instead of cutting them off, and the Copy button is easy to tap.
The capacity plan now has a slider for the checks on each camera, and a card lists what each check adds to a picture on this server, marked measured or typical.
Privacy
The Privacy desk opens on a checklist of what this site has done for privacy and what is left. Admins can log a data breach and see the deadline for telling the authority, with reminders before it passes.
The Privacy desk drafts this site's camera signs, worker and visitor notices, retention policy, impact assessment and records of processing from its own settings. Edit the words, publish a version and print it.
Downloading an evidence pack, an incident report or a recording that shows faces uncovered now asks for a short reason, which is kept in the audit log. Admins can turn this off in Settings, Privacy.
Admins log a person's request, check who is asking, find their data by name or by place and time, build an export of it or erase it, and close the request before its deadline. Reminders come 3 days before the due date and on the day.
A person or a stretch of footage can be put on legal hold, and nothing deletes it until the hold is released with a note. Each person's page shows who looked at their data, and the audit log has an Access filter.
Area analytics, per-item thresholds, offline camera details, false alarm reasons, report downloads, floor map blind spots, pre-activation checks and email alerts, checking rates and model memory on Cameras, and faces read only at marked cameras
Monitor
An offline camera now shows its last picture with the time, how many times it tried to reconnect and when it tries next. Retry now asks it to try at once and tells you the reason it is still down.
The Playback export panel now shows an estimated size beside each ticked camera and a total for the files, before you press Export. Untick a camera and the total follows, so you can tell if a clip will be large.
Customize on Playback now lists the Export panel and Saved views, so you can move them in the right-hand column or hide the ones you do not use.
Floor map
The map studio shades what each camera sees, lists the blind spots and suggests where one more camera would see the most.
A zone drawn on the map now raises one event when several cameras see someone enter it, with the other cameras' pictures added to it. The event stays open until the last camera has lost sight of them, and a camera that goes quiet for 3 minutes no longer keeps it open. Checks that follow one person show "possible duplicate" when another camera may have raised the same.
Events
After marking a false alarm, one tap says why: Wearing it, Not a person, Wrong zone or rule, or Camera blocked. Each teaches the right lesson: the frame goes to review with what to fix, no frame is kept, or the camera is flagged for a check.
A control above the Events filters picks All, PPE, Safety or Security in one click. Sound and Plant are shown as planned until their checks arrive.
Choose Last hour, Today, Yesterday, Last 7 days or your own dates, and the exact range is written beside the menu. Zone and Area selects narrow events by place, and every active filter shows as a chip you can remove.
A Sort menu orders the whole list, not just the page you see: events that need a decision first, newest, oldest, severity or camera. It works in both Table and Cards views, and the column headers use the same order.
The Events header now says how many events are open right now and how many more were not reviewed from before today, counted across all events and not only the page you are on.
Customize can now hide the Filters row, the Was each item seen? bars and the Details in the selected event. It also sets the category, order and period the list opens on; the filters that are on still show as chips when the row is hidden.
Only an administrator can delete an event now; reviewers and supervisors can still review, acknowledge and hold it. The Delete event button no longer shows to anyone else.
Each Incidents tab (All, New, Being handled, Closed) now shows how many incidents it holds under your area, severity and Assigned to me filters. Hover a tab for what it holds.
Incidents has an Export CSV button that downloads the list under your current tab, area, severity, Assigned to me and period choices (open incidents show whatever the period, as in the list), so it opens straight in a spreadsheet.
Under the Incidents list a Load more button brings in the next page, so open or closed incidents beyond the first 200 are no longer out of reach.
A new incident nobody has taken now turns amber only after it has waited a set time, 10 minutes to start. Change it in Customize on Incidents (1 to 120 minutes).
Reports
A new Area analytics report shows where people stood, how long they stay in each zone, queue waits against a target and the busiest hours, with odd hours flagged. Mark a zone as a queue point to measure its wait and get an event when it runs over.
A report's PDF leaves out the panels you hid, and its CSV holds only the columns you chose. The headline figures always print.
Compliance figures from checked cameras now carry their measured range and sample size, event precision comes from the blind check, and reviewed events are shown as a count, not as precision.
Reports has a Shift handover tab: the shift's open incidents, camera issues and movements are filled in for you, you add a note and tasks, and signing off locks that version and sends a copy to the bell of the people you chose. Unticked tasks carry over to the next handover, and you can download it as a branded PDF or as a CSV.
Video search
Matches now appear one by one as each camera finishes, best first, instead of grey boxes until the whole search ends. An empty result also has a button to check cameras that are not recording.
Attendance
Time and attendance by face stays off until an admin picks the site's privacy profile and confirms, in Set up, how the site may use faces. Switching it off keeps every record and records nothing new.
Supervisors can add people, or a whole group, to the attendance list with a shift and working days, change them later, or take them off. Taking someone off withdraws their attendance consent, and withdrawing consent moves them to clocking by hand.
Pick the cameras at the gates, and faces recognised there become a sheet per shift: clock-in, clock-out, time on site, late and not seen. A person a camera missed reads Not seen at clock cameras, never absent.
Rules
Customize on Rules now moves and hides the check groups, with Life safety always staying, picks which groups start open, and switches the sentence under each check and the Recent alarms and Learned fixed items panels. Safety checks can also be the tab the page opens on.
Safety checks now lists what every camera has learned to ignore, items that wait for a decision first, each with its camera. Tap a picture to see it larger with what was learned and when it expires.
Safety checks now lists the alarms of the last 7 days: what rang, where, when, how it ended and who is told. All alarms opens the full list in Events, filtered to alarms.
An alarm nobody has closed now sits at the top of Safety checks and Security checks with Watch live and Acknowledge. Once acknowledged the siren stays quiet and the alarm waits for you to close it as real and handled, or as a false alarm with its reason, or to reopen it.
These life-safety checks are now locked to High severity with the siren on, in the editor and on the server, so no zone can quietly turn them down or mute them.
Checks now sit in folding groups, with Life safety first, each showing how many of its checks are on and a line on what the group is for. Fold all and Open all collapse or expand the lot.
Every check now shows its sentence, the model it runs on, its default severity and who is told. Switching a check off in a zone asks you to confirm first, so a siren is never silenced by a stray click.
The Safety checks tab now says in plain view that camera fire and smoke detection is an early warning beside a certified fire alarm, never a replacement for one.
A zone drawn inside another now copies the outer zone's PPE rules by default, and the zone list warns when an inner zone asks for less PPE, so a queue or rest area never stops PPE checks by accident.
A camera with no zone now has its own row on the Rules page saying nothing is checked there, with a Draw a zone link, so a gap in coverage is no longer invisible.
The count of zones with no rules at the top of Rules is now a button: it selects those zones and opens Apply preset, so fixing them takes one step.
Apply preset marks the preset closest to the selected zones' current rules and says how many rules each choice adds, removes and keeps, before you apply it.
Selecting a cell on Rules now shows the camera's picture with the zone outlined and its events from the last 7 days, plus a week-by-hour strip of when the rule is checked, with the current hour marked.
The line above the Rules table that explains how to turn a rule on or off now has a Got it button. Turn it back on from Customize with Tip above the table.
The PPE types tab on Rules now has a Detected by model column. A type that no active model can detect gets an amber warning and an Open Models link, so a rule that can never fire is easy to spot.
Customize on Rules can now hide the zone picture, the hours strip, the require and remove everywhere buttons, the rows for cameras without a zone and the key. A Zone order choice lists each camera's zones with no rules first.
Cameras
A camera the server cannot check as often as it is set to now says so, for example Checked 3.4 of 5 per second, with the reason. Set to what fits lowers the rate to what the server manages, with an undo.
Under a privacy profile that asks for consent, an admin marks the cameras where faces are read and confirms a sign is in place. Enrolling a person now records their consent in the same dialog, and only people who consented are recognised.
The Cameras page now explains each check and column under the table: what Source, Picture, Checks per second, Enabled and Record mean, what overlapping views are, and how the checking budget is counted.
Adding or editing a camera now shows how much of the checking budget it would take at the rate and checks you chose, and what the whole budget would become. It warns when the server would be nearly full or over, before you save.
More camera actions on the Cameras page now has Export cameras (CSV). It saves the cameras the list shows, with their area, status, source, checks, checks per second and whether they record, so a search or filter narrows the file too.
Each camera on the Cameras page now shows its kind and host under its name, such as RTSP and the camera's address, never its login. Customize has a switch for these addresses and one for the key under the table, so either can be hidden, for instance on a screen others can see.
Training and models
Every item, such as a helmet or a vest, is now judged at the score its own test results say is best. You can set a different value in Map classes on the Models page.
The live model now says who activated it and when, for people allowed to see names.
An automatic job now also waits until the item the live model finds hardest has 30 new approved boxes, so a retrain has something new to learn. The Training page says how many are still needed.
A new model or a change to detection settings can now be re-checked against each camera's check set first. You see which cameras keep their grade before you activate it.
Each running model now shows how long it takes a picture on this server, which cameras use it, and a Change button. A bar splits the memory between models, training and what is free, and a meter shows how much of the checking time is used.
When the server has too little memory for a model, it is not loaded and the page says how much it needs, how much is free and the cheapest fix, such as pausing training or turning off a less urgent check.
The Decision on the compare page now says whether the new model passes the site golden gate, with its score and the score required, so you see the answer before pressing Activate.
Click a class in Scores by class and the confusion matrices fade the other classes and the misses list keeps only that class, with a Boxes column showing how many boxes each score stands on. Click it again, or Show all, to see everything.
The line under Scores by class now says when each model was trained, on which dataset version and how many images it held. Accounts that cannot open dataset versions still see when each model was made.
Customize on the compare page has a new Class choice. Pick a class and the page opens focused on it, with the matrices and misses showing only that class, until you show all classes again.
The top of the page now shows, for the person and PPE jobs, which model is running, how well it scored on the golden set and what to do next. The model library cards mark the running model and say plainly when one cannot be installed.
Detection and counting
A model is no longer loaded when it would leave too little memory free, so live detection does not run short. Settings has a new Memory kept free option, 512 MB unless you change it, and a refused model loads by itself once memory is free.
The People counting header now says how many counting lines it covers, which day or span it shows (with the time so far for today) and the site time zone. The Inside now tile counts areas over their limit and turns amber, the busiest hour shows its ins and outs, and the hourly chart has an In and Out key with a value grid.
Every area under Inside now now links straight to Monitor filtered to that area, and to Rules to set an alert.
A photo or video being checked on the Test bench now says about how long is left, and Stop and change settings ends the check and takes you straight back to the setup. The time is worked out from how long earlier checks took, and is left out until there is something to go on.
The last load test now shows its run time, time per check (median and slowest 5%), GPU load (average and peak) and GPU memory as tiles. Download report saves the full report as a file to paste into your records.
Trying a number of cameras on Capacity now draws the predicted GPU load in green, amber or red against the 80% limit. A button puts the plan back to the cameras and rate of the last load test.
Capacity has a folded list of other graphics cards with example figures, clearly marked as not this server, and a row for a server with no GPU. It helps when you plan a bigger site.
The capacity line on System now says what the load test measured and what is only an estimate, each tagged, with a bar from the tested load to the 80% limit and the date of the test.
The confirmation for People Counting and Vehicles now says how many cameras and counting lines will stop. You see the real impact before you confirm.
The bell now shows a low-priority warning when a camera's figures fail a self-check, for example people counted after working hours, a clock that is off, or a camera whose view moved. These warnings never block anything.
Storage
Choosing Off for space saving now asks you to confirm and says when the disk reaches the clean-up line and when recording would pause. A line under the page title also says what the chosen mode does.
Cancel on a running clean-up now asks you to confirm and says how many files are already removed and stay removed. Dismissing a failed clean-up notice shows an Undo for a few seconds.
Signing in
While you wait for approval, the page now says "Checked 12 s ago" and counts up every second, so you can see it is still looking for your approval.
Users and access
The Licence status now says how many days are left before it expires and shows a bar for the days and one for the cameras in use. Under Cameras it also says which camera would be refused, such as the 17th on a 16 camera licence.
A new strip lays out the four stages of a licence: valid, expiring, grace period of 14 days and expired, each with its date. It marks the stage the licence is in now, and Customize can hide it.
A new part counts the apps your licence includes and those it does not. An included app that is switched off shows an Off in Apps link, and administrators get a Request button on each missing app that writes the message to send your system provider. Planned apps sit in a fold below.
Uploading a licence file or pasting its text now checks it first and shows what would change: the customer, site, expiry, camera limit, and the apps gained and lost. Nothing is saved until you press Apply licence, and a licence that is already applied says so.
A page your licence does not include now lists what it would give you, and a Copy request button copies a ready sentence to send to your system provider. Administrators get the installation ID in it. Everyone else sees who to ask when an administrator has filled in the system provider contact under Settings, General.
When you open a page of an app that is off, it now says which app, for example "Time & Attendance is off for this site", instead of a general message.
The Users page now opens on Requests whenever anyone is waiting for approval or a password reset. Customize can also hide or reorder the access requests and password reset lists.
A problem now appears under the field it belongs to, and an email that another account already uses is caught before you send. Add user also reminds you that you set the password.
Each request shows how long it has waited, in amber after a day, and a long note opens with Show more. The button names the role it will give, and a rejection can be undone for 7 seconds.
Email preferences in your menu lists every email you get and why, with a switch for each. Every automatic email also has a link that stops that kind of email in one click. Alarms and sign-in emails stay on.
Look and settings
A camera offline for 5 minutes, stopped camera checks, a stopped training or live-update service and nearly full storage now email administrators, and supervisors for cameras and checks, with a second email when it is fixed. Switch each one off under Settings, Notifications, Email events, or with the link in the email.
When more than 10 notices would reach one person within 10 minutes, the rest arrive together in one summary email. Alarms are always sent at once. Both numbers are in Settings, Notifications.
Settings, Notifications, Email events lists every automatic email with its switch, who gets it, how long it waits and whether a back-to-normal email follows. A row with nobody to send to says so.
Settings → Sharing says how clips are covered before they leave the site: whether faces and screens are looked for, how often, and how much margin each cover gets.
Install and updates
When an update is ready to install, the page now says the signature was checked and the file is genuine and unchanged, so you know it is safe to install.
Administrators get an email when the licence is about to end, enters its grace period or ends, when an update waits to be installed or has finished, failed or been rolled back, and when a training job ends. Whoever started the job gets it too.
Privacy
Each person's page records and withdraws their consent, and the People page lists who is waiting for one. Sites that upgrade have 30 days to record consents and mark cameras before unconsented face data is deleted; a banner counts the days. Face data of a person no camera has seen for a year is deleted too, with a warning two weeks before.
Monitor
Opened without a time, Playback now starts 10 seconds before the most serious event nobody has reviewed yet, then the newest of those. Before, a newer low-severity or already reviewed event could pull it away from the one that needs a look.
Switching a PPE type off in Playback now drops that type's event marks from the timeline, the step buttons and the event list, not only its boxes. The type buttons also work while Boxes is off.
Reports
On an installed copy the Share safely page could not start its file check, so a dropped file never got checked. The check now runs there as it does on a test copy.
Cameras
The camera page now shows the camera's accuracy grade, how much of its zones is big enough to judge, and size limits that can be set for that camera alone.
A counting line can now be renamed from its camera page, so a wrong name no longer means drawing the line again. Its counts stay with it.
Each camera now shows a chip for every check it can run: PPE, Security, Safety and Counting. Switch one off and its rules are kept; switch one on and the page says what it adds to each picture.
The camera form now offers the same check chips instead of a PPE or Security mode, and a camera without PPE says its PPE rules are kept for when you switch it back on.
Detection and counting
A new model, a counting setting or a camera's size limits is now replayed on the saved check sets before it takes effect. A camera whose new figures do not hold up loses its grade at once, and saving without the check also leaves the camera ungraded until it is checked again.
On the People counting page a line you had deleted after it counted people showed its name with (removed) twice. It now shows it once.
The by-hour chart on the People counting page cut its hour labels short on a narrow screen. The chart now scrolls sideways, and on a laptop the last hour no longer loses its last digit.
Look and settings
A release with a long list in its title now shows a short line while it is folded, ending in "and more". Open it to read the whole title.
Pages your licence does not include, or whose app is switched off, now stay in the side menu with a Locked or Off tag instead of disappearing. Locked pages and buttons the licence leaves out show a small lock and, on hover, say "Not available on your licence". You can see everything the system offers and open any page to read how to turn it on.
The privacy profile no longer tells you to have a lawyer check its words, and the model list and app previews no longer ask for legal advice. Licence conditions on models are still listed.
Draw, calibrate and publish the floor map, see where each camera runs, count vehicles at gates, faster detection on Intel and for new sites, signed exports you can check, live video stays on one stream, accuracy figures keep their state, unreliable cameras leave the figures and camera sound can be switched on, bigger tap targets and focus that stays in view
Monitor
A live tile whose width sat near the point where it changes between the full and the lower-resolution stream could jump between the two every second, showing a picture of changing sharpness. It now changes once and stays.
The wall screen now has a Customize button in its top strip. You can hide the reason band along the bottom and choose whether the pointer hides after 3 s or stays shown; the high event banner and the cameras stay on, because an alarm must stay in view.
With no cameras picked, the wall screen now says No wall set up yet and offers an Open the Monitor link, instead of pointing at controls it hides.
Every new clip or snapshot export carries a signature and a list of its files' check values. Anyone who receives it can check offline that nothing was changed, with the steps in the file.
A new Share safely page checks a file, several files or a whole export zip against this site's exports. The file stays on your computer: only its check values are sent.
Floor map
Each of the five map studio steps now carries a check when it is done and a triangle when it needs a look: a plan that cannot be published yet, a camera not calibrated on the plan, or changes the live map does not have. You can see what is left before you open Publish.
Upload or draw each floor, place and calibrate your cameras, and publish the map. It opens in 3D, with 2D and a flat plan when you need them. Nothing on the live map or in detection changes until you publish.
Events
The Incidents entry in the side menu now carries a number: the open incidents assigned to you, the same ones listed under Assigned to you in the bell. It disappears when you have none.
Reports
A camera whose checks show it cannot be trusted for a figure is now left out of it and named under the figures, instead of quietly moving the site total. A safety item a camera cannot see well is no longer judged on that camera.
Reports has a Vehicles tab: crossings by type and hour on each line, and every wrong-way alert, as a PDF or a spreadsheet.
Cameras
Each camera shows the server that runs its checks and why, the System page lists every server with how busy it is, and each event says which server checked it.
The map studio has a Cameras step: click the plan to drop a camera, set which way it faces and how far it sees. A camera already on another floor says so and cannot be dropped twice.
The Calibrate step shows the camera picture beside the plan, so clicks on the plan give the floor points in metres. A camera calibrated on its own can be fitted to the plan by dragging its outline or clicking two matching points.
A camera that is on no floor map shows Not on the map in the camera list, with a link to place it.
In the map studio you can upload a picture or a PDF page of the floor plan, then mark a line you know the length of to set the scale. Measure again at any time and the whole draft is rescaled.
Each camera in the list now has a button each way for its checks per second, with what it takes of the checking budget beside it, and a small picture of what it sees now, refreshed every minute. You no longer have to open Edit for either.
Each day the system compares a camera's picture with a saved one. If the view has shifted, or the camera's stream changed, its accuracy figures read as not yet checked and an alert asks you to check its zones and collect a fresh check set.
Cameras still record pictures only. An admin can now switch on Record sound for one camera, give a reason and confirm that everyone in view is told; the site's privacy profile can keep it locked off. That camera's sound is then kept in recordings, clips and exports, and live view and Playback play it muted until someone unmutes it.
Training and models
The model library now offers RTMPose, a pose model that runs on every installation and is quick on a processor. Person down can use its pose method without the PyTorch engine.
With Safety checks on, the model library offers a second fire and smoke model, trained on outdoor and aerial scenes, for yards and open sites. It runs on the Ultralytics engine that every release build includes.
Starting a training job from an ONNX or engine model is now refused straight away with a message asking for a .pt model, instead of queueing a job that fails later.
Detection and counting
The GPU badge menu now also shows the time one picture takes and how many cameras are checked at what rate, and has an Open System button. If your role cannot open System, the button is greyed out and says so.
Each accuracy figure is now marked current, recomputing, stale or aged, so a figure that no longer matches the camera's settings or whose check set is too old is not read as fresh. When a camera's weekly check shows its protective gear claims going wrong, you get a notice to collect a fresh check set.
Look and settings
Click the coloured dot in the top bar to see every service, the date your licence runs to, and each camera with no picture and since when. Click a camera line to go to Cameras. The dot also turns amber or red when a service is down.
Settings has a Sharing tab: turn export signing on or off, see this site's key and its fingerprint to give recipients, and make a new key. Playback can leave one export unsigned.
Tick boxes, the hour bars on Playback, the person search button and the Not on the map tag on Cameras are now at least 24 pixels across, and on a phone the page links in the header and the camera names on the wall are 44 pixels. Wide tables and tab rows scroll inside their own box, so no page slides sideways on a small screen.
Moving through a page with Tab now keeps the field you are on clear of the bars that stay on screen, such as the Save bar in Settings. The search box shows where you are, and the help word on a person card opens its explanation instead of the card.
Install and updates
The Remove window now says the helper is cut off at once and wipes what it keeps, and that its cameras move to other servers afterwards. To move the cameras first, use Empty and wait before you remove it.
Installations on Intel hardware can now run detection through OpenVINO, which was faster than the standard engine on the same processor in our test. It is picked automatically once installed.
A new installation now finds people with D-FINE, a person model that runs quickly on a processor, and lists it as the active person model. Sites that already run a person model keep it.
Vehicles and plates
A new Vehicles page counts cars, motorbikes, buses, trucks and bicycles crossing a line on a camera, in and out, and shows wrong-way alerts. It works with or without PPE detection.
Draw a line across a gate or road on the Vehicles page. A line can allow both ways, only in or only out, and a vehicle going the other way raises a wrong-way alert, or is only logged.
Recorded video from a camera with a vehicle line shows each vehicle's box and type, like the people boxes.
Weekly accuracy check, training skips its pictures, two-step sign-in, helper server alerts, vehicle settings, backup warnings, fewer repeated violations, a Privacy tab, and macOS as background services, fairer checks and where faces can be read
Overview
A new site opens on a short list of steps, from replacing the install password to adding the people who will use it. Each step ticks itself when the work is really done, and the list hides itself a week after the last one.
Monitor
The System page now raises an alert when a helper server stops answering, needs an update, has its clock off, or loses pictures, and a critical one when cameras have no server with room. Each alert clears itself when the problem is gone.
Recordings, evidence clips, exports and live view now carry pictures only, even from cameras with a microphone. Recordings made before this update keep their sound until they age out, at most 30 days.
Pinned tiles are kept with your account, so the wall screen and every desk you sign in to show the same pins, and changes reach other open screens within seconds. An administrator can also pin for every screen.
Events
When a camera briefly loses a person and finds them again, it now joins the two pieces instead of raising a second violation. Pieces it is not sure about stay apart and are counted as possible repeats.
Rules
On a phone the four tabs on Rules (Requirements, Safety checks, Security checks, PPE types) now scroll sideways inside their own strip, so the last tab is no longer pushed off the screen.
Cameras
A camera can now check its full-size picture and look again at the far part of it, so small figures at the back are found and judged. Both cost more processing, so they are off until you switch them on.
Every camera page now has floor calibration, with four to eight matching points, a tape check and a plain accuracy figure. Existing calibrations carry over unchanged.
Training and models
Activate now compares a new model with the live one item by item. If an item scores more than 2 points lower, or under its minimum, activating needs a written reason of at least 10 characters, and the page names the item. New sites start with a minimum score of 85% to go live.
Training and check images are now split by camera and hour, and an image taken within 10 minutes of a test image on the same camera is left out of training. Scores are no longer flattered by near copies.
Pictures taken within 10 minutes of an accuracy check on the same camera are kept out of training, so a model is never graded on what it learned from. The dataset notes say how many were left out.
Detection and counting
When the model can tell a bare head from a hidden one, only a bare head starts the clock. A helmet out of sight pauses it, and the live view says "Can't see helmet".
The People page shows, for each camera, how often a person's face was clear enough to recognise. It helps you choose where recognition can work.
When two people pass close enough that the system could mix them up, both are checked again for 2 seconds instead of keeping a verdict that may belong to the other.
Reviewers get a short weekly set of moments to answer without seeing what the system decided. The answers measure how often detection is right on each camera and never change an event.
An admin can collect a camera's check set over four working days. A reviewer then fixes the boxes and answers for each person, so the camera's accuracy is measured on its own pictures.
Draw a counting line on a camera's picture and everyone who crosses it is counted in or out. An area can have a most-people limit, and every count says its error is not measured yet. Settings → Counting & coverage has the line settings.
A supervised walk past each camera without one item at a time now measures how often a missing item is caught, at near, middle and far distance.
Eight short clips per site can now be labelled person by person. They measure how often the system loses or swaps people, and they tune how pieces of a path are joined.
A new Counting page shows who came in and went out, how many are inside each area now against its limit, and the busiest hour. An area over its limit raises an alert. Occupancy limits already set on zones start working now.
Signing in
You can now ask for a 6-digit code from a phone app after your password, and administrators can require it for themselves and other admins.
Once the site fills in its privacy contact, the sign-in page says that sign-ins are recorded for security and where to send privacy questions. The People pages say which privacy profile the site follows.
Users and access
On Users, an administrator can turn off another person's two-step sign-in if they lose their phone. Every device of theirs is signed out, and the setting that requires two-step for administrators now says why it is locked until you have set up your own.
Look and settings
An email output is now a group: pick roles, people or other addresses, and each person gets their own email that is tried again for up to an hour. The delivery log pages back through older sends and can retry what failed.
A very long database path in the System page header no longer pushes the page wider than the screen on a computer. The path is cut to fit, and the whole of it shows when you point at it.
The mail server window on Settings, Notifications is now wide enough on a computer screen that its fields and the Send a test button are no longer cut off at the right edge.
The test email from the mail server window now comes as formatted text with a plain-text copy, like alarm emails, so you can check that your mail system shows both.
Install and updates
The System page shows when the last good backup finished, and you are warned when backups stop or fail. Settings, General lets you turn the warning off or change how many hours count as too long.
Admins can download one file for the support team, with passwords, keys, email addresses and pictures taken out.
On a Mac with Apple silicon the platform now installs as system services that start with the computer, with its own built-in database and key-value store, and detection uses the Mac's own machine-learning chip.
Add another computer you own as a helper server and move heavy cameras to it. If it stops answering, its cameras come back to this server within a minute, and nothing is counted twice.
On a Windows or macOS install with the built-in database, an update that changes the database layout now makes its backup first instead of stopping with "The database backup failed". Rolling back puts that backup back.
Privacy
Settings has a Privacy tab. An administrator picks the site's country, and its privacy profile applies at once; the dialog first lists every value that goes down. Values never go up by themselves.
Each setting with a privacy limit shows the limit beside it, and the Privacy tab lists them all. Above the value the profile advises, such as 3 days of recordings under the strictest rules, it asks why; the reason goes into the site's privacy paperwork and never locks anything.
Face photos and consents of a named person who has not been seen for a year are deleted, and the name stays. Two weeks before, the System page warns how many people will be deleted and on which day; a person on legal hold is skipped.
Where the site's privacy rules allow a watchlist without consent, putting someone on it now asks why, so the reason is on record.
Vehicles and plates
Settings has a Vehicles tab for sites with the Vehicles app. Its first setting is the smallest vehicle that is counted, with its default and range.
Hourly alert limit per camera, security checks, iPhone live video, moving to the release build, Sinhala and Tamil in PDFs, signed-in devices, QR links, weekly accuracy checks, plain-word settings and Customize on every page, Where to look first in reports, zones without the PPE app, pairs counted together
Overview
People and visit figures now carry "How counted", saying what one unit is and that a person may count more than once.
Each Overview tile has a short definition, and the trend chart's bars can be read with the keyboard.
The Overview has Customize: choose its panels, and the period and camera it opens on. A choice that no longer exists falls back and says so.
Monitor
On security cameras people are labelled with their name, as Unknown when their face matches nobody you enrolled, or as a possible watchlist match in the alert colour.
On an iPhone with iOS 17.1 or later, live video now plays through the server when a direct connection is blocked, for example over a remote link. Before, the tile showed still pictures.
Where cameras overlap, the Monitor now counts people by the camera that sees the most and shows the most it could be, instead of guessing who is the same person.
Switches on the Test bench, in Playback and on the Monitor now explain themselves, and a control you cannot use says why.
The Summary cards and the camera movement controls on the Monitor can now be reached with Tab and scrolled with the arrow keys, and a screen reader announces them by name.
Events
Reviewing an event now reads "Real violation" or "Not a violation", and each severity says what it asks of you.
Events has Customize: the view and review filter it opens on, which columns show, and where the selected event sits. Your table or cards choice now follows you to any computer.
Reports
Camera, zone and person names written in Sinhala or Tamil now print in report and incident PDFs. Before, they came out blank.
The compliance report ranks the zones or shifts where problems cluster, never people. Customize sets the area, PPE type and shift a report opens on.
A report tab your licence does not include now says so, instead of showing an empty page or a red error in the browser console.
On Reports, the hours-by-weekday grid has bigger squares that are easy to hit, and slides sideways in a narrow panel. One Tab press enters the grid and the arrow keys move between hours.
On Reports, a very long item name in the Most-missed PPE tile now wraps inside the tile instead of running past its edge on a phone.
Rules
Rules has a Security checks tab: alerts for unknown faces, possible watchlist matches, people not allowed in a zone, and cameras that are covered, blurred, dark or moved. Restricted area and Loitering moved there from Safety checks. A check that cannot run yet says why.
Each number in a check now shows what it changes, its default and its range. A value outside the range is corrected, and the editor says so.
Each switch and number on the Rules page now says what it does, its default and, when locked, why.
People and Rules have Customize: their panels, and the group, tab or area they open on. Your cards or table choice on People now follows you to any computer.
Cameras
Each camera setting now shows what it does, its default and its range, and the detection choices sit together under Detection.
The System page and each camera's page have Customize: hide the cards you do not need, and choose whether a camera page opens with boxes on.
Zones can now be drawn and changed on any site with an AI app, not only with PPE. PPE rules still need the PPE app.
Training and models
The week picture under Training now says that solid squares are the hours training may run and faint ones are off, and Storage no longer repeats its opening line twice.
Model scores now read "Golden-set score", "Right when it reports" and "Real items found", each with what counts as good.
Every choice for a training job now says what it does and the site's default, in plain words.
Training, Models and Datasets have Customize: which panels show, and what each page opens on, such as the job's curves or log, the camera in the review queue, or the licence filter on All models.
A training job now starts only when enough memory is free, and on a graphics card it uses at most a set share, so live detection is never starved. The job says what it is waiting for.
Cancel job is now Stop and keep checkpoint. A stopped job keeps its training so far, and Resume carries on from there. A job still waiting in the queue is simply removed.
Detection and counting
Each Test bench run now shows how many of its frames were actually checked, so a run that skipped frames is easy to spot.
A visit whose camera stopped watching around its start or end now reads "at least", and the page marks its figures as estimates.
Two people who appear on the same frame and cross a counting line side by side are now counted as two, not one.
When a camera loses someone for a moment and picks them up again, it now joins the two pieces into one person, so they are not counted or timed twice. A match it is less sure of is kept apart and marked as a possible match.
Storage
The Storage page shows the pictures kept for accuracy checks on their own line. Pictures of a camera's check set are never offered for clean-up; weekly check pictures are removed after 90 days.
The address and device of a sign-in are blanked 90 days after the session ended. The sign-in itself stays, so last sign-in still shows.
Signing in
My account lists every device signed in as you; sign any of them out, or all of them at once.
Users and access
A one-time link can be shown as a QR code, so it reaches a phone without typing.
Choosing a role now shows, in one sentence, what a person with it can and cannot do.
The remaining switches and choices, from person details to signing in, now say what they do.
Users, Licence and Apps have Customize: their panels and what each page opens on, such as the Users tab and row spacing.
Look and settings
On a phone the Customize button, the segmented On and Off choices, the Open Your preferences and Reset to defaults buttons, the mail-server and alert-channel buttons, switches and checkboxes are now tall and wide enough to hit with a thumb, so a tap no longer lands on its neighbour.
A camera that raises more security alerts in an hour than the limit you set now keeps the rest as sightings and shows one notice instead of a stream of alerts. Alarms still ring. Set the limit in Settings → Detection.
Choose for each kind of alert whether it only reaches the bell, pops up, or pops up with a sound. High violations get their own urgent tone, so they stand out. Nothing changes until you choose.
When live updates stop without warning, as when a laptop sleeps or the Wi-Fi drops, the screen now notices within a minute, says so and reconnects.
Press ⌘K (Ctrl K on Windows) and type a setting's name or a word from its description. Choosing it opens the right section and points at the setting.
Detection and counting settings gain the weekly accuracy check and the rules for joining pieces of one person's path.
Every field of an email, webhook, siren or relay channel now says what it does, its default and its range.
Words such as zone, grace, golden set and legal hold now show a one-sentence meaning when you point at them.
The help on every page now opens with a small picture of the page and what each part is for.
Theme, row spacing and home page are now kept with your account, under Your preferences in the account menu, so they follow you to any computer.
The shareable documents and the public demo no longer fetch their typefaces from an outside site. They look the same, open offline and make no request beyond their own files.
Install and updates
One command moves a server that runs from the source code onto the signed release build, keeping its data, cameras and passwords. The old copy stays in place to go back to.
If the first install fails and you run it again, the installer now tells you where the administrator password from the first attempt is kept, instead of printing nothing.
The System page now names each part in plain words, and its bars say when a figure is fine, worth watching or needs action.
On Windows the platform now installs as services that start with the computer, with its own built-in database and key-value store, so there is nothing else to install. An earlier install keeps its database and passwords when it moves over.
Overview
With only CCTV on, an empty Needs attention panel no longer tells you to switch a camera on to check for missing PPE. It says the camera starts watching and recording, and without the PPE app it no longer mentions PPE at all.
Monitor
Live video sent through the server, off site or through the tunnel, now keeps playing on cameras that send a full picture only every few seconds. Before, the picture froze or stuttered on most cameras with their factory settings.
A gap in an older recording no longer claims recording is off just because it is off now. The Day picker shows only when there is footage to pick from, a refused jump time stops warning once you move elsewhere, and toast buttons are big enough to tap on a phone.
A link that opens one camera in Focus now adds it to your wall when you had narrowed the wall to other cameras, so the large picture is the linked camera. The move pad always moves the camera you see large.
The documents now include a slide deck that walks operators through the Monitor wall, alarms, review, incidents, visits and exports, one step at a time. Use it for the first training session on site.
Events
Sites that run Security or another app without PPE detection now see their own events, incidents and alarms. The list shows only the checks of the apps that are on.
Reports
The filters say All cameras and All PPE until you pick one, the notes under each figure read as whole sentences, and the most-missed PPE stays inside its tile on a phone. The hour grid is now one stop for the Tab key, with the arrow keys moving inside it, and its cells are taller.
When the server cannot be reached, pages and messages now say so and ask you to check the connection, instead of showing the browser's Failed to fetch.
A report for signing: the model and its data, the golden set, scores with ranges, each class side by side with another model, the matrices and the misses.
Video search
When no camera can be searched right now, for example while a camera has no picture, the page now only says why. It no longer adds that nothing is indexed yet above the moments it already found.
Cameras
Opening Find cameras no longer stops the whole platform from answering. The search now sends its probes and lists the cameras it found, as it should.
Find cameras now searches the networks this server is on by itself, so cameras on the same site network show up without typing a range. A recorder (NVR, DVR or XVR) is marked, and Add all channels opens the recorder form with its address and brand filled in.
Training and models
The Running now panel on the Models and Apps pages lists every model the AI engine holds, one row per job, with the memory it took when it loaded and its measured speed. It shows at a glance what still fits on this server.
The Models page now lists the face, video search and labelling models that come with the platform, with each one's licence, training data and size, and whether it is already on this server.
The shortlist on the All models page is now saved on the server, so every administrator sees and edits the same plan. A shortlist kept in a browser before can be moved there in one click.
With the Model Training app switched off, the Models page no longer shows a 'Could not load this' block. Pages also wait for the latest app list before asking for an app's data, so a browser left open does not briefly ask for an app an admin has just switched off.
Importing a model trained on everyday objects no longer suggests its baseball glove class as Gloves. Only real glove classes are mapped to the Gloves PPE type.
Installing a model from the library or from a URL no longer stops to ask you to accept its licence, and the Ultralytics licence switch has left Settings. Each model still shows its licence on its card.
New sites now require a new model to reach 85% on the test images before it can go live, up from 50%. A weaker model still needs a written reason to be forced on, and a site's own saved value is not changed.
Release builds install only models whose files have a published checksum, so a changed or broken download is refused before it runs.
A PyTorch model on the Models page can now be copied to ONNX in one click. The copy runs without the PyTorch engine and is often faster on a processor.
Administrators can now bake an open-vocabulary model for hairnets, aprons, gloves and masks, or one for general PPE, from the Models page. Activate it for live checks, or use it to pre-label your own frames for review.
A model in the All models list that the Model library can install now has an install link. It opens the Models page at that model, ready to download.
Suggest boxes can use a built-in labeller that knows dust coat and ear plugs before any model detects them. It is slower, so it runs only when you press the button.
Moving the queue, the picture or the suggestions column in Customize now moves it on the Datasets page, instead of only hiding or showing it.
Evaluate scores an installed or trained model on your golden frames, with a range for each figure, the boxes it missed and a confusion matrix.
The comparison shows how two models score on the same golden frames, class by class, and says plainly when the new one is worse, and shows both confusion matrices and the frames each one misses.
The review queue filters by status, camera, class and date. Several frames can be approved, rejected or deleted at once, and decided frames can be reopened.
Small boxes such as ear plugs can be drawn at up to three times the size. A, R, N, the numbers and Delete do the work without the mouse.
Suggest boxes asks a model to draw the boxes first. They show dashed until you accept or discard each one, or all of them above a score you choose.
Labels made in other tools can be loaded as YOLO or COCO files, or as a zip with the pictures. A version or the frames you select download in either format.
Detection and counting
A downloaded person detector now runs on the processor when this computer's graphics card cannot run it. If it cannot load at all, the platform finds people with its built-in detector instead of stopping people detection.
Storage
On a phone the System page no longer scrolls sideways because of a long database path: the path is shortened, and the whole of it shows when you point at it. In Recordings by camera, how each camera records now sits under its name instead of being cut off.
Look and settings
Set the mail server once under Settings, Notifications, with presets for your own server, Microsoft 365, Google or another provider. Send a test says which step failed and what to do. Upgraded sites keep their server: press Send a test once to confirm it.
Two windows changing the same page's look within a moment of each other now both keep their change, instead of the later one undoing the other. Tab off either end of the Customize panel goes back to its button, and on a phone the sheet's Close button stays in reach while you scroll.
Time fields show the whole time, AM or PM included, so 20:00 no longer reads 08:00. On a phone, switches, checkboxes and the small Settings buttons are 44 px to tap, and the brand preview's site name is easier to read.
The detection bar says what its percentages are, the go-live score says it is accuracy on the site's test images, a retention switch reads Never delete, notification routes are called Alarm routes, and the wall summary names its preset and what it draws.
Pressing Test on a webhook in Settings → Notifications now sends a message marked as a test, so a receiver that pages people can ignore it. The webhook form also says what it sends and what signing adds.
Install and updates
Setting the server clock back no longer pauses a licence: its last month, its grace period and its end arrive on time, also after a restart.
The installed health check now counts the database updates on sites that use a PostgreSQL database. Before, it always reported the database as unreadable, so a fresh install never passed its last check and every update rolled itself back.
Getting a new version ready on Linux and macOS now only builds its own Python environment. It no longer stops to ask for an administrator password that the background updater cannot type, so updates on those systems no longer fail at Preparing version.
A platform installed from a download zip now starts its web pages. Before, the zip was missing parts the web app needs, so the sign-in page never opened and the install waited forever on its last check.
Switching back to a version that had already been running for a while is no longer refused as changed after it was installed. The web app now keeps the pages it refreshes in memory instead of rewriting files in the installed version.
On Ubuntu with Docker, one command installs the platform from the downloaded file, creates its passwords, starts it and shows the first administrator password once. Updates and rollback then work from Settings, as before.
On a release build the Models page no longer adds a model from a web address, and says why: an address carries no checksum to verify the file against.
The System page now says how many cameras this server held in its last load test and about how many fit. You can run a load test from the page, best out of hours, and try a plan before adding cameras.
Privacy
Until an administrator picks the site's country, the strictest privacy rules apply. Recordings, event media, sightings, visits and sign-in records now have a longest keep, and the face of a person with no name is no longer kept. A save above a limit says what the limit is.
Install and updates
The installed health check now counts the database updates on sites that use a PostgreSQL database. Before, it always reported the database as unreadable, so a fresh install never passed its last check and every update rolled itself back.
Getting a new version ready on Linux and macOS now only builds its own Python environment. It no longer stops to ask for an administrator password that the background updater cannot type, so updates on those systems no longer fail at Preparing version.
A platform installed from a download zip now starts its web pages. Before, the zip was missing parts the web app needs, so the sign-in page never opened and the install waited forever on its last check.
Switching back to a version that had already been running for a while is no longer refused as changed after it was installed. The web app now keeps the pages it refreshes in memory instead of rewriting files in the installed version.
Product keys, licence warnings, site-clock times, locked-control reasons, camera password safety, Apps page, Playback layout, Ultralytics in every edition, download first-open steps, site rehearsal pack, notification, playback and video search fixes
Overview
On the day the clocks go forward or back, the Overview's count for today now starts at that day's real midnight, and the 7-day trend gives that 23 or 25 hour day its own bar. Before, it was an hour off.
With only the camera app on, the bell, the alarm list and person names no longer ask for data the server refuses. With PPE off, the Overview no longer shows a trend error: the violations trend appears only while PPE Compliance is on.
Monitor
Boxes on recorded video, and in footage exports, no longer run a few seconds early or late on cameras that send a full picture only every few seconds. A recording paused on its first frame now shows its boxes, item boxes draw on recorded video, hiding a PPE type also hides its missing-item label, and on a phone every PPE type button can be reached.
On a phone, Playback's buttons, the day and hour pickers, the timeline handles and the event marks are now big enough to hit with a thumb, and the hours scroll sideways. The light and dark switch now shows in the phone header on every page.
A camera that can turn now gets a pad in Focus, with its home position and saved views. Playback lists a camera's saved views as links back to the live picture.
On a phone the header, Monitor and camera tile buttons are now large enough to tap reliably, and both ends of a short export range can be dragged.
With Boxes on in Playback, an export now carries each camera's detection boxes beside its video, and Verify checks those files too. Before, every export left the boxes out.
On Monitor, safety check detections such as fire, smoke or a forklift show as boxes in the check's colour with their confidence, for example Fire 72%. With zones shown, a box ignored as a fixed item is drawn faint and dotted, and a person using a phone carries a Phone chip.
On Monitor, a person flagged by the Person down check gets a red outline and a Person down tab. A new Skeleton switch in the Monitor's Show options draws the body outline on cameras that run a pose model.
For people the system has not judged yet, the PPE chips on live tiles, recordings, event snapshots and test-bench downloads now use your site's 'counts as worn' and 'counts as missing' levels. Before, they used fixed 60% and 35%, so the picture could disagree with your settings.
With Sync cameras off, the other cameras now hold their picture while you play the main one. Before, their video kept running while their clock stood still.
A camera whose recording is switched off can still be opened in Playback, so you can watch what it recorded before. Its gaps now say that recording is off.
Opened without a time, Playback now starts 10 seconds before the newest event in the last half hour. A time typed past the latest recording now goes to the latest recording, and the export range stays usable.
Recorded people are labelled Person, not Person 0%. A stretch with no recording now gives its real start and end times instead of the same minute twice.
Two events seconds apart on the Playback timeline now each have their own side to click or tap. The recorded bar under the marks no longer blocks taps on a phone.
Playback no longer asks for people's names while the People & Visitors app is off, so it shows no permission error.
Playback now keeps the minute before the one you are watching loaded, as it already did for the minute after. A jump one minute either way starts at once instead of waiting for the file.
Boxes on recorded video could run up to a second ahead of the picture, because a recording's start time was kept only to the second. It is now kept to the millisecond, so the boxes line up with the picture in Playback and in exports.
On a big wall, the boxes are now drawn no more often than the video shows new pictures, and each redraw does less work. This leaves more of the computer for the video itself.
Hovering a match plays its 30 s clip again. Before, many clips stuck on their first frame, depending on where the moment fell between frames.
Picking a moment and choosing Search with this frame now finds other moments that look like it. Before, it stopped with an invalid date error.
When the AI engine stops, Video search now keeps the results already on screen and says the engine is not running. A camera with recording off shows as struck through instead of the page saying no footage is indexed.
Speed, Pause at events and Sync cameras now sit in a panel beside the pictures, and Play and the event steps sit at the top of the timeline. On a wide screen, Export and Saved views form a column on the right. The day picker and a Go to live button are in the page header.
The playhead no longer pushes the page wider than the screen, so Playback stays put on a phone and on a wide screen. The playhead's time stays inside the timeline at both ends.
On a phone the strip of the day's hours now gets its own full-width line instead of a sliver beside Jump to time. It scrolls to the half hour you are watching, and its hour bars now show against the panel.
Events
Alarm events show an Acknowledge button in the list and on the event page, and a Check filter narrows Events to one kind of check. The What column, evidence cards and the notification bell name the check behind each event.
With Safety checks on and a fire and smoke model installed, the Fire and Smoke checks open an alarm event when flames or smoke are seen steadily in a zone, not on a single frame.
With Safety checks on and a forklift model installed, the forklift proximity check warns when a person comes too close to a forklift. On a camera with a floor calibration it measures the distance in metres, otherwise it uses the gap between the two in the picture.
A lamp or vent that looks like fire or smoke now raises only a low, non-alarm event while it stays still. After the system learns it, or once you draw it as a fixed item, it is ignored. It alarms again as soon as it grows, moves or flickers.
With a pose model running on the PyTorch engine, the Person down check raises a high-severity alarm when someone in the zone stays lying down for the check's confirmation time. It can also use a dedicated fall model instead of pose.
With the cigarette model active, the experimental Smoking check flags a person in the zone holding a cigarette. It stays quiet when the object near the hand is a phone or food.
When an alarm check fires, such as fire or person down, a red banner and a repeating siren appear on every page until someone acknowledges the alarm or it clears. A header chip counts the open alarms, and the siren can be muted. Browsers play the siren only after you have clicked somewhere on the page once.
When a recognised person leaves and comes back during the cooldown, they no longer open a new violation event because the tracker gave them a new box.
Events, Training and camera health now show every time on the site's clock, not the clock of the computer you read them on. A manager in another country sees the same times as the floor, and the From and To filters on Events and the idle-hours bar on Training use the site's clock too.
A finished visit now has a Play back this visit link that opens Playback at the moment the person entered, next to the link to the person's page.
Reports
The compliance report now lists events, alarms and review precision for each check, and how many detections each camera's fixed items ignored. Both follow the report's filters and appear in the PDF and CSV too.
In Reports, the By check table, the PDF and the CSV show how many events a review confirmed, in place of a precision percentage. The figure only counts what someone chose to review, so a percentage gave a wrong idea of accuracy.
Video search
Video search finds moments in recorded footage when you describe them or show an example picture. It runs on this server, nothing leaves the site, and every search is logged.
Picking a match shows the moment with the frames 10 seconds before and 20 seconds after, the other matches that day on the same camera, and opens it in Playback or exports the 30-second clip.
Pointing at a match plays its 30-second clip with the boxes the system found at the time drawn over it. With reduced motion on, a Play button starts it instead.
Video search has a Boxes switch (key B). The hover clips and the clip export follow it, so an exported clip can now include the detection boxes.
Rules
PPE types can now start from a preset. Hygiene & food safety switches on hairnet, face mask, gloves and apron, and switches the construction gear off, without touching your zone rules.
Rules has a new Safety checks tab. It lists every zone against each check you can use, and you can switch checks on and off and set severity, alarm, settings and hours for each one.
Cameras
A camera the licence has paused no longer raises an 'is offline' alert telling you to check its power and network, and any such alert already open now closes by itself.
Find cameras on the Cameras page lists the ONVIF cameras that answer on this network and fills in the camera form, streams included, from the one you pick. A camera on another network can be found by typing its address range.
With Safety checks on, a camera has a Fixed items tab for things the checks should ignore, such as a lamp or a vent. Draw one by hand, or confirm, reject or label one the system suggests.
With Safety checks on, a camera's settings can store a floor calibration: mark the four corners of a measured rectangle on the floor and enter its size. Corners that cross over or sit on one line are refused with a plain message.
If the server's secret changes, for example after a restore on another machine, a camera's saved password can no longer be read. The server now stops calling that camera instead of trying with the user name alone, which could lock the camera's account. The camera shows "Password needs re-entering" until someone types the password again.
Changing a camera's port, or switching between rtsps and rtsp, now asks for the password again, as a new host already did. Adding a sub stream at the main stream's address no longer asks for it.
A password with a ? or # now reaches the camera intact, in Test connection too. A password with an @ after a / is refused with a hint to write it as %40, so no part of it stays in the saved address. Two people editing the same camera at once now get a "changed meanwhile" message instead of one save silently undoing the other.
Uploading a file under Cameras → Stored videos now shows a bar and a percentage instead of a bar that only moved back and forth. A large video no longer looks stuck while it uploads.
Training and models
The model library now offers RF-DETR and D-FINE person detectors under the Apache-2.0 licence. They need no extra add-on, so a site can find people without any copyleft model.
New training runs can use RF-DETR, which is Apache-2.0, instead of YOLO. A model trained this way may be sold with the product without an Ultralytics licence.
Every model in the library shows its licence. Installing one whose licence limits commercial use first asks an administrator to accept the terms, and that acceptance is recorded.
Installing a model from a web address now always asks an administrator to accept its licence, because the platform cannot tell what licence it carries.
A check in the Rules grid links to the Models page filtered to the models that serve it. With Safety checks on, the Models page has a hazard section where several hazard models can be active side by side and each can be switched off.
The model catalogue now offers a fire and smoke model, a forklift model and a construction-hazard model for the safety checks. Each is pinned to an exact file that is checked on install, and each asks an administrator to accept its AGPL licence first.
Drop a picture on the Test bench with a check such as fire or phone ticked, and its boxes appear on the result, so you can try a check before turning it on for a camera.
With Safety checks on, the Models page has sections for active behaviour and pose models, and the model library filter gains Behaviours and Pose. Several models of each kind can be active at once, as with hazard models.
With Safety checks on, the model library offers the official YOLO26 pose models (n and s) and an experimental cigarette detector. Each one is pinned to a fixed release and its checksum is verified on install.
Administrators can start a person-down model bake from the behaviour section of the Models page. The trainer turns text prompts into a model, which appears as a candidate to review once the job finishes. The trainer needs its open-vocabulary add-on installed for this job.
Each model on the Models page has a qualification card: its licence and commercial use, whether its checksum was verified, whether it loads on this PC, and its measured speed. Run or re-run the benchmark from the card; models installed from the library are measured automatically.
A YOLO training run that sets lr0 now trains at that rate instead of quietly picking its own. Pausing a run no longer spends time on a final check, because the run picks up again later.
An imported ONNX model has a Re-inspect button. It reads the class names from the file again if the first read was lost, so you are not stuck with guessed classes.
Automatic training now pauses and resumes on the site's clock too, so it runs in exactly the idle hours the Training page draws. Before, a server set to another time zone could start or stop jobs hours away from them.
The test bench used to show a broken player when a run's original video had been removed. It now says plainly that the video is no longer stored, and the run's totals and events stay.
On an installation without the Ultralytics add-on, Ultralytics models in the model library now show "Needs the Ultralytics add-on" instead of a Download button. The add-on is the only way these models can run, so you no longer accept a licence for a model that cannot load.
An imported model's real class names and a finished speed test now show on the Models page by themselves, including the speed shown in the ready-made catalogue. Before, you had to reload the page to see them.
Ultralytics (YOLO) models in the model library now install and run on every installation, release builds included. The "Needs the Ultralytics add-on" label and the warnings about a missing add-on are gone, and a .pt model keeps running when detection is set to ONNX Runtime or TensorRT.
Frames from site footage can now be loaded into the review queue with boxes already drawn, including dashed bare-head and missing-vest suggestions. A reviewer checks and corrects instead of drawing every box. Golden test frames come in first, from days the model never trains on.
Detection and counting
A test bench video run can name the safety checks it must exercise, and its card shows them. Only checks whose app is on are offered.
When the computer stays overloaded, detection runs loitering, phone, smoking and forklift checks at half rate, one at a time, and restores them when load drops. Fire, smoke and person-down checks are never slowed. The System page lists the slowed checks, and the header shows "Not enough compute" when even that is not enough.
The pose method of the person-down check now uses its minimum width-to-height ratio and confidence settings. Before, it used hidden values of 1.2 and 30%. The defaults are now the shown 1.0 and 25%, so lying people may be flagged a little sooner.
Storage
Cleaning up recordings by hand now also removes and counts their boxes files, and cleaning up a Test bench run no longer leaves training samples pointing at pictures that are gone. Edit rules on the Storage page now opens the Storage settings.
Recordings are now named by universal time, so the hour that repeats when daylight saving ends no longer overwrites the first pass of that hour. Footage recorded before the update still plays, exports and cleans up as before.
The two clean-up buttons sit under the Activity list instead of in its header, so the panel title stays readable and nothing spills outside the panel on a 1440 px screen.
Users and access
A bar at the top of every page now says when the licence is close to expiring, has expired or is pausing cameras. For an online licence it also says when the automatic renewal failed, so nobody is surprised by a locked feature.
Administrators, supervisors and reviewers can turn and zoom cameras; viewers see the pad but cannot move it. Saving or removing a view needs the right to change cameras.
The People page shows each person's group, a watchlist flag, a green dot while they are on site and where they were last seen; people enrolled but not seen yet say so. Filter by group or by On site now. Administrators manage groups there and set how many minutes count as on site in Settings.
On the People page, anyone who can edit people can enrol someone from up to five photos at a time. Each photo shows its own result, so you can see which worked and why the others did not, and you can add more photos to the same person later, up to ten.
When you name a person you can now set their group and put them on the watchlist with a reason. Their page shows the group, the reason and how many photos are enrolled, and from there or the list you can delete just their face data or the whole person.
When a button or field is off because of your role, your licence or the current state, hovering over it or moving to it with the keyboard now shows the reason. Before, many of these reasons were hidden and never appeared. Rules, zones, event review and sample review now explain every locked control.
Look and settings
Product name, accent colour and logo now come from your licence and show in Settings as read-only. Only the site name is still edited there, so the brand can no longer drift from what you are licensed for.
Administrators switch apps on and off on the new Apps page. The menu, the Overview and the settings follow the switches, and an app that is switched off keeps its recordings, events and rules.
Administrators can add notification channels in Settings → Notifications: email, a webhook, SMS, WhatsApp or an HTTP output such as a siren box. Each one can be tested, switched off and on, and its password or token is stored encrypted and never shown again.
Settings → Notifications now has routes: choose which checks and severities go to which channels. An alarm nobody acknowledges in time escalates to more channels, and quiet hours hold back ordinary events but never alarms. A delivery log shows what was sent, skipped or failed.
When someone acknowledges an alarm, every siren or beacon output it switched on gets its off request. A watchdog channel pings a fire panel or monitor while detection is healthy and stops when it is not, so that panel raises a fault. If the server stops responding, detection switches on the HTTP outputs by itself.
A notification route can now be limited to chosen cameras and zones. Before, saving a route dropped any camera or zone filter, so it sent alerts for every camera. A camera or zone deleted after you picked it now shows as a ticked removed entry, so a route never looks open to every camera while it actually matches nothing.
Quiet hours and the time shown in alert messages now use the site's time zone, including on daylight-saving days, instead of the server's clock. You can also choose which days quiet hours apply.
Email channels have a new Encryption setting: STARTTLS, TLS or none. Changing the port picks the usual one, and each field now explains what it needs. STARTTLS now refuses to send if the mail server cannot encrypt; a channel set up before this update keeps sending as it did until someone saves it.
The CCTV app now says it covers playback and export, and the Security app no longer promises a tamper check that is not built yet. The System page names the key-value store without naming a product.
Help, Documents now opens the copy of the documents that this installation serves, so it works on a site with no internet and shows no outside name. On-site installs no longer show a Live demo link.
A siren or beacon output set to switch off by itself now does so even if the server restarts before the time is up. The off time is kept, and the off request goes out as soon as the server is back, so a siren is no longer left sounding until someone acknowledges the alarm.
App cards now show their status beside the name, list what each app adds to the menu and needs, and keep the switch with its reason at the foot of the card. Wide screens show four cards a row, and the switch-off question puts each consequence on its own line.
Install and updates
Where your provider offers it, an admin can license a server by typing a product key on the Licence page, and the licence then renews itself online. A server can also be moved to another machine from there, and servers without internet keep using a licence file.
Rolling back an update now saves a copy of the database as it was before the rollback and keeps it for 7 days, as the Updates page already said. If the copy cannot be made, a rollback you start yourself stops before anything changes.
After an update file passed its check, the Install and Discard buttons on the Updates page did nothing. They now install it or throw it away. A version older than any installed before is refused even after a rollback, and a rollback re-checks the earlier version's files first.
Installing or upgrading on a server with no graphics libraries could leave the camera checks unable to start, because a desktop build of an image library replaced the server one. Installs and upgrades now keep the server build and repair a computer that already has the wrong one.
After a rollback restores the earlier database, the storage cleanup no longer deletes evidence, model and training folders recorded since that backup. They stay on disk for 7 days before the cleanup treats them as unused.
The deep health check no longer reports the vision service or trainer as alive when its last report is dated in the future, which points to a stuck process or a wrong clock. When low disk space is the only reason for a warning, the acceptance check now says so.
Opening the web app on its own port on the local network now gets the same browser protections as the proxy gives: no framing by other sites, no content-type guessing, a strict referrer rule and a content security policy. The documents the site serves at /docs keep their typefaces under the new policy.
On a phone the System page no longer scrolls sideways. The vision warnings stay on screen, and the cameras table scrolls inside its own panel.
The guide inside the Windows and macOS downloads now covers the cases where the usual first-open click is missing. On Windows it shows how to check Smart App Control, which blocks unsigned programs outright. On macOS it gives a one-line Terminal fix for when Open Anyway does not appear.
Installers now get a rehearsed path for site day. It includes an upgrade and rollback drill, a backup and restore check, a camera probe that reads what each camera really sends, an offline face-model pack, and a one-page signed alarm test card with an evidence folder for every acceptance item.
Monitor
If a rule asks for just a hard hat, the Monitor no longer draws or lists a missing vest or anything else the rule does not ask for. What shows as missing now follows the rules of that camera, that detection area and that time.
When your browser cannot reach the camera's video directly, the tile now plays it through the server instead of dropping to pictures. It runs about a second behind, and the tile's tooltip says so.
A live tile's badge tooltip now names the stream it plays and its picture size. The camera's Live tab says when boxes are checked on the sub stream.
A tile under 640 pixels wide, and every tile of a wall of five or more, now plays the camera's sub stream when it has one, so a busy wall stays smooth. A focused tile plays the full stream.
Pointing at a person's box on a live camera now lights that person's row in the summary and the track list, so a box is quick to match to its row.
A new Playback page shows up to four cameras' recordings at the same moment. Pick a time, and each camera shows what it recorded then, with a clear note where it recorded nothing.
Playback can draw the boxes and labels the system found while it recorded, filtered by PPE type. A chip says how often they update, so a box is never read as more exact than it is, and says so plainly when the boxes could not be loaded.
Customize on Playback now hides the day strip, the jump-to-time field or the legend, and remembers your choice. On a phone it shows one camera at a time: swipe the picture to change camera, and export opens from the bottom.
On Playback, each camera's lane shows where it recorded and where it did not, when something moved and where each event happened. Hover an event to see its picture, or jump to any time of the day.
Recordings play from a quarter speed to eight times, keep every camera on the same moment or move one alone, and can stop by themselves at each event. Space plays or pauses, and the arrow keys step one second, or ten with Shift. The boxes the system drew at the time play along with the video.
Mark a range and export each camera's original video, or one frame each, with a list of fingerprints anyone can check later. Boxes on an export come only from checks the system really made at the time.
Events
Resolving an incident from yesterday no longer jumps the Incidents panel to another one, and rows on a phone no longer run into the time. The incident PDF now reads its history in plain words, like the page does.
Event pages and incident panels link straight to the recording at that moment, and the Monitor inspector has a "Look back 5 minutes" link. Only roles that may watch recordings see the links.
Pictures of events saved before the earlier fix no longer show "No" boxes for equipment the camera's rules never asked for.
Reports
Switching to the Visits tab on Reports no longer stops on an error. On the Visits page the filter menus read All areas, All zones and so on, long PPE labels fit their column, and closing a visit's panel returns you to its row.
Cameras
Once every camera place in the licence is used, Add camera is turned off and says so. Cameras beyond the limit show Paused in the list, on their page, on the Monitor and in its inspector, and open no live feed. Remove a camera or raise the limit to resume them.
Training and models
The drop line keeps its buttons on one line, the figures no longer cut off "1 check", and the compare line shows on bright pictures. A phone no longer shows a second view switch, and a viewer no longer sees model-list errors on a page they can only look at. A picture over the limit is refused as 25 MB.
On an installation without the Ultralytics add-on, an Ultralytics model no longer stops detection. The System page says which model needs the add-on, and people are still found with the built-in licence-safe model.
An imported ONNX model now shows its classes and a suggested class map straight away, read by the AI engine itself, so it no longer waits for the training service.
A finished test video now plays the original footage with the boxes the run found drawn over it, and markers under it show where people were missing equipment. After you run a video again, Before and After replays both analyses.
Users and access
Applying a licence that allows fewer cameras than are in use now says straight away that the newest ones are paused. People who are not administrators see the licence status only, without installation details they cannot read, and the Licence page keeps itself up to date.
When your licence does not allow something, or the camera limit is reached, you see one clear message however many requests were refused. The page re-reads the licence straight away, so locks and switched-off buttons catch up without a reload.
Without the PPE detection module, rules on a camera are read-only and the Overview shows a lock in place of the violation figures; zones stay editable while any AI module is licensed. Without the Models module, Import, Download and Add from URL are switched off with the reason beside them, and pages stop asking for data the licence does not include.
Features your licence does not include stay in the menu and search, greyed with a lock. Opening one says what is missing and who to ask, and administrators see the installation ID to give their system provider.
Administrators now see on the Licence page whether the AI engine reads the licence the same way the server does. The System page flags a difference in red, with the engine's reason.
Administrators, supervisors and reviewers can export recordings. Viewers can watch them but cannot take a copy away.
Look and settings
The product name, logo and accent colour now come from your licence, so changing them in Settings no longer takes effect. The site name is still yours to edit.
Install and updates
Administrators can upload an update file under Settings, see what is new and how long the platform will pause, and install it with their password. The running version stays beside it: a failed update goes back by itself, and for seven days you can roll back.
Without a licence that includes PPE checks, cameras still show live video and keep recording, but no checks run and no boxes are drawn. Apply a licence on the Licence page to turn them on.
Installing a newer package no longer deletes the version it replaces, so going back stays possible; only versions older than that are removed.
Monitor
When a Monitor tile switches between the camera's full and lower-quality video, the new picture is started out of sight and takes over on its first frame, so the tile never goes black or drops to snapshots in between.
The Wall screen button is now a menu: show the whole site, this area, or rotate through areas you pick, every 30 seconds to 5 minutes. The band says which area is up and when the next one comes.
Events
People who manage storage can place an event on legal hold from its page, so no cleanup or delete touches it until the hold is released. The Events list has a Held only filter, and media a cleanup removed now says so instead of looking broken.
A new Incidents page lists every violation as an incident with a status and a person who has it. Take one, assign several at once, and close them as resolved or as a false alarm. Open one to add notes, read its history, and download the evidence pack or a PDF report.
When space saving or a full disk meant no annotated snapshot was kept, the event still shows its boxes and labels over the original photo.
The Events page has an Export CSV button that saves the events matching your filters, and an event's page now shows its incident, who has it and a link to work it.
The notification bell lists the open incidents assigned to you, with the missing PPE and the camera, and links straight to each one. New assignments add to the bell's badge until you have seen them.
Reports
Reports has a Visits tab: how many visits a period had, how long they lasted and which zones were busiest, with a landscape PDF and a CSV of every visit. It is for roles that can see people.
A new Visits page lists every stay of a person in a zone: when they came and left, how long they stayed and what PPE they were missing there. Filter by period, area, zone, camera, person or length, and export the list as a CSV. In the Reports zone menu, zones that share a name are now told apart by their camera. A person's page has a Visits tab with their visits, day by day.
After the first report PDF since a restart, later PDFs looked right but lost their full stops when their text was copied or searched. Every PDF now copies and searches as it reads.
Reports has an Incidents tab: how many incidents a period had, how many are still open, resolved or false alarms, and how long they took to be taken and resolved. Filter by status and severity, and download the log as a PDF or a spreadsheet.
Rules
A site set to an older time zone name, such as Asia/Calcutta, had rule schedules that failed on some Linux servers. Every time zone name now works on every system.
Cameras
A critical camera keeps recording when space saving is on or the disk is critically full. Only people who can change settings can mark one.
A camera with no pictures for a minute, stopped camera checks, a stopped training service or a disk running low now raise an alert in the bell, with a pop-up, and it clears itself when things are back. The System page lists every alert, and an administrator can acknowledge or reopen one.
On a camera's page, a new button next to the sub stream address checks that the sub stream shows the same area as the main stream. If it shows a different area, the camera stays on pictures so the boxes land in the right place.
A camera's sub stream is a second session on that camera. A new Monitor setting, "Use the sub stream on busy walls", lets a site turn it off for cameras that allow few sessions, and the camera's page now says where the sub stream uses 2 sessions.
Storage
A new cleanup window lets you pick what to remove, shows exactly how many items and how much space it frees, and only then deletes. Large deletes ask you to type DELETE, and you can watch progress or cancel while it runs.
Each kind of file now has a Free up space button, and test-bench data and stray files can be cleared in one click. A short notice tells you once that old files are deleted automatically and where to change that.
Settings has one Storage section for free-space thresholds, space saving, snapshot and clip sizes and every automatic deletion, with its age, a shorter age for low disk and a Never switch where it is allowed. Thresholds show their share of the disk and warn when more than a fifth is held back; event records are never removed before the minimum retention, and visit logs and sightings keep at least 90 days.
People who manage storage can set Space saving to Auto, On or Off on the Storage page. A banner there and a chip in the header show when space saving is on or the disk is critical, and Overview warns when the disk is critically low.
Signing in
Using the app now keeps you signed in: once half of your sign-in time has passed, each visit starts the clock again. You are only signed out after a full sign-in period without using it.
Users and access
A user can be marked as a display account: a viewer that stays signed in for 30 days at a time, renewed while the screen is on, so a wall screen does not ask for a password. The Users page marks them with a Display badge.
Look and settings
Settings, Re-identification has a new setting for how long a person can be out of sight in a zone before seeing them there again starts a new visit.
Install and updates
Administrators can see what this installation is licensed for, copy its installation ID to give to the system provider, and apply a licence by uploading the file or pasting its text. The page also shows cameras used against the limit and every licence applied so far.
The System page shows the version number, such as 1.0.985, beside the build, so you can tell your vendor exactly what this server runs.
For sites without browser access, platformctl update --from <file> on the server checks a new version, shows what changed and installs it, and platformctl rollback goes back.
Events
When the disk is too full to save an event's picture, the event now says the snapshot was not saved because the disk is full, instead of saying there is none.
A finished video run shows each violation on a timeline you can click, a table of the tracks that had one, and a CSV of both.
Training and models
The Test bench can run a picture or a video through any installed person or PPE model, not only the active one, so a candidate is tested without switching the live cameras. Every result names the models that made it.
If a chosen model is missing or will not load, that one result says so and names the model; the live cameras carry on unchanged. Looping runs keep using the live models.
Turn on Compare and each photo and video runs a second way, B, with its own models and mode. Photos show A and B side by side or on a slider, with a list of what only one of them found; videos play together on one timeline.
The Test bench now totals the people, checks, most-missed PPE and time for the files shown. Export a CSV, or pick results to download as a zip of annotated pictures with their CSV, run them again or remove them.
Detection and counting
Helmets, vests and the other items are drawn in the colour of their PPE type in the results, the full picture and downloaded pictures, as they are in Rules.
Each Test bench run can look harder: Fast is the live cameras' setting, Accurate checks a larger picture, and Max also searches tiles so far-away people are found, in about three times the time. The top bar's compute menu sets the default.
Another model can re-check each person for items the first model missed. Its finds are drawn dashed with a 2nd tag and count toward compliance only if you switch Count second opinion on.
Storage
Storage shows what is filling the data disk, how fast, and when free space will run low, by kind of file and by camera. It sits under Admin, next to System, which now carries a short version with a link to it.
When free space would drop below the safe minimum, photo, video, model and logo uploads are refused with a clear message, so the system keeps room for recordings and events. Free space on the Storage page and try again.
Look and settings
File and disk sizes are counted the way disk labels and your computer count them: 1 GB is one billion bytes. A limit you noted before, such as the upload size, reads a little higher for the same size.
The Test bench has one place each for setup, a summary, your files and the open result, and Customize reorders or hides any of them. Paste a picture from the clipboard, press L for labels, C for Compare, B for boxes, and the arrows to move between results.
Overview
Pick an area on the Overview and its counts, trend, latest violations and camera panel are about that area. Needs attention and the coverage figures still cover the whole site, and the page says so.
Monitor
Open the Monitor with no cameras in the address and it now brings back the cameras you picked last time, instead of starting again from the default set.
Events
The read-only note on Cameras names your role as Viewer, a camera that has been deleted no longer links to a page that is gone, and switching between Annotated and Raw on an event no longer carries over a failed picture.
Reports
Choosing an area on Reports no longer flashes "That area no longer exists" while the new figures are still loading.
Rules
On the Rules page, a Warn after value that was refused no longer looks saved when you then change Violate after. Both values are judged as a pair and saved together, and the fields stay in place while a save runs.
Cameras
Add from NVR buttons are full-size to tap on a phone, channels it never reached when detection is off say Not tested, and Add waits until a running test finishes.
When an area name is already taken, or a recorder refuses a channel, the reason now appears once, under the field, instead of also popping up. Moving or deleting an area that fails shows one message, not two.
Picking Hikvision, Dahua or EZVIZ now tells you when the camera's address has a space, a slash or a port in it, instead of quietly filling nothing, and address, port and channel each carry a hint. A Test connection result also disappears if you change the address or login while it runs, so it never sits beside details it was not made with.
A site that has areas but no cameras now says No cameras yet, with an Add camera button, above its areas instead of showing only empty area headers. An area that was named No area through the API keeps its edit and delete buttons.
Calmer busy moments, counts that leave out false alarms, and numbers that say how much they saw, Reports, installing from a download, and cameras grouped into areas
Overview
Violations a reviewer marked as false alarms no longer count on the Overview, in a person's violations or in the analytics totals, and nothing from a test-bench run is counted anywhere. Mark the newest open event a false alarm and the open count falls at once.
The Violations panel and each camera now show how much of the expected camera time was observed, inside the site's working hours. Under 90% a figure says partial; under 50% it shows no figure and names the camera, so a camera that was offline all morning never reads as a quiet morning. A camera that is online but checked less often than it is set to says so, and what to change.
The violations count now sits beside violations per 100 judged person-hours, and the arrow compares that rate on the cameras that were observed in both periods. Events reviewed as false alarms are shown beside the count, and hours and days follow the site's time zone.
Monitor
The counts card now has a Warning row for people who are missing an item but have not yet been counted as a violation, so Compliant, Warning, Non-compliant and Checking add up to the people in view.
A person who has been missing an item for the rule's warning time now shows in amber on the live wall, in the track list and in the summary, with the item named in words. Burned-in recordings and snapshots read "Warning: helmet missing" too, so a warning is never told from a violation by colour alone. Nothing is saved as an event until the violation time is reached.
Where the views of two cameras overlap, the Monitor summary counts a person seen by both only once, and marks the figure as an estimate. If only some of an area's cameras are on screen, it counts the people you can see.
The Monitor's compliance card now shows the share of judged time people wore what was required, with the seconds before a violation was declared counted as violating. A person who was too small, too new or had no PPE model to check is not counted as compliant: that time is shown as undecided, and the figure carries its best and worst case.
A person who is missing an item but has not yet become a violation is now labelled in amber, with the missing items named, in test-bench videos, processed-video exports and the fallback video feed. Red stays for confirmed violations.
The Monitor has an Area filter beside the Cameras menu. Choose an area and the wall shows that area's cameras, and an alarm in another area can still come to the wall. The choice is in the page address, so a link opens the same view.
Events
When many alerts arrive together, the lists on screen now refresh as a group about every second and a half. The alert count and the pop-ups still change the instant an alert arrives.
A test run's and the Monitor's session counts read "People seen (estimate)", "Compliant so far" and "Non-compliant so far", because a person who leaves and returns can be counted again. An event's "Confidence" is now called "Absence score", which is what it measures.
When two cameras of an area with overlapping views see the same person miss the same PPE, you now get one event, and the event page shows the other camera's pictures under Also seen by. Counts no longer double up.
Reports
The Analytics page is now Reports. It shows time in compliance with the range it lies in, violations with their rate, ids seen as an estimate and how long the cameras were up, each against the period before, with charts by day, item and hour. Download what you see as a branded PDF, or as a CSV that opens correctly in Excel; the old Analytics address still works.
While a report reloads after you change a filter, it dims and Download waits, so a file can no longer be named for a different period or camera than it holds. The sentence above the charts now agrees with the violations figure: it speaks of the rate on the cameras that can be compared.
Reports has an Area filter, first in the bar, and a By area table with each area's violations and time in compliance. The downloads carry the area too.
Rules
A rule's active hours now switch on and off by the time zone chosen in Settings → Site, not the server's clock. If the server cannot read that zone, the System page says so and the server's clock is used.
The Rules page now loads every camera's zones and rules together instead of one camera at a time, so it opens faster on sites with many cameras.
Each rule can now set how many seconds a person may miss an item before they show amber (the warning) and before an event is raised. Leave a field empty to use the site's own time. The Rules page also groups zones by the area their camera is in.
Cameras
Cameras now sit under areas you name, in an order you choose, with a last group for cameras that have none. Add, rename, move, fold or delete an area from the Cameras page, and mark an area as overlapping views when its cameras can see the same person.
The camera form can fill a Hikvision, Dahua or EZVIZ camera's stream addresses from its address and channel, lets you pick the camera's area, and has a Test connection button that reports the picture size, rate and codec, or why the camera did not answer. The password is never shown.
Add cameras from an NVR: enter the recorder's address and login, pick the channels, and see which ones answer before anything is added. Channels that do not answer are unticked, and the cameras are added together or not at all.
Detection and counting
The System page now explains each warning from the detection service in a sentence, including when it does not know the site's time zone and rule schedules follow the server's own clock.
Look and settings
Pointing at a menu entry or a change in the connection dot now fades the colour in about a seventh of a second instead of switching at once, like the rest of the app.
Pausing on an entry in the left menu, or tabbing to it, now starts loading that page's numbers, so it opens filled in instead of showing a placeholder first.
A new Settings tab sets the working hours cameras are expected to work, the hour the site's day starts (with a suggestion for the quietest hour), the coverage and judged-share cut-offs, how long a person must be tracked before they are counted, and the smallest person each check accepts.
Settings has a new Site page where an administrator picks the time zone the site works in and names its shifts; a night shift can run past midnight. Reports cut their days and show every time on that clock, so a server that starts on the wrong time no longer shifts every figure, and a Shift filter appears once a shift exists.
A setting left empty or out of range now says what to change in plain words instead of a technical message. A new shift starts with its own name, so adding one no longer opens on an error.
Install and updates
On a fresh Ubuntu, Debian, Windows 10 or 11 PC, or a Mac with Apple silicon (macOS 14 or later), one double-click now installs everything, starts the platform, checks it and opens the browser. Running it again repairs what is wrong and never reinstalls what is fine, and a new health check says in plain words what to fix. Other computers and phones on the site's network can open it too, at this computer's address or its .local name, and the first administrator password is shown once on screen.
The platform now comes as a download for Ubuntu, Debian, macOS and Windows: unpack it, double-click Install and Run, and it installs what it needs, starts, and checks itself. Installing a newer download over an older one keeps your settings, cameras and recordings.
Live video with boxes on top, a wall that moves to the cameras that need you, every model in one place, and one count of what still needs a person
Overview
The Overview's list now shows open violations that nobody has reviewed and leaves out test-bench runs. It names a camera that has stopped sending pictures, says "No video yet" for one that never sent any, and never shows a tick while a camera is not being checked.
The Overview's Open violations tile no longer counts an event someone has reviewed as a false alarm while it is still running, nor a test-bench run. It now matches the number in the header, and so do its severity split and the oldest-open time.
The Overview's five rows are now the five most severe open violations, so a pile of low ones on one camera can no longer hide a medium one under "more open violations".
Bars no longer grow in from nothing every time you open a page. When the numbers change, for example after a refresh, they glide to the new size.
Monitor
The new Wall screen button opens the Monitor in its own window with no menus: Auto is on, a thin strip always shows the connection, how many cameras need attention and the clock, and a band along the bottom says which camera is in front and why. The pointer hides after three seconds, the screen is kept awake where the browser allows it (the strip says when it cannot), and the band also says how many alerts are still open and how many are acknowledged. The strip and band also show in kiosk.
On a wall screen, a new high-severity violation now fills the whole screen with its camera for 15 seconds, and a banner stays across the top until someone acknowledges or reviews it. Acknowledge takes the banner down on every screen and ends the fill, with an Undo; a button sends the wall back at once.
The wall screen no longer says nothing needs attention while the list is still loading, could not be loaded or live updates are lost: it says so instead, with the last count marked as possibly out of date. The strip now shows the date, the site and the cameras on show, the banner names the zone and since when, the pointer goes after 3 seconds even over a picture, tiles on it are no longer buttons, and new-violation pop-ups no longer cover the band.
In the Monitor's Needs attention list, a short violation that has already ended no longer offers an Acknowledge button that could only fail. It says to review it on Events instead.
When a violation ends within its first minute, its camera now leaves the front of the Auto wall 15 seconds after the end, not nearly a minute later. The row stays in the Needs attention list for a while as a notice, but it no longer holds the wall.
Changing the Monitor between Auto, Focus and the column layouts now moves the pictures to their new places instead of closing and reopening each one, so nothing flashes or reconnects.
Each live tile now plays the camera's own smooth video, and the boxes, labels and zones are drawn over it and glide between checks instead of jumping. The Annotated and Raw buttons are gone: one Boxes switch shows or hides the boxes at once, without reloading the picture. When a camera's video cannot play, the tile shows pictures instead and keeps trying the video by itself, and a small badge on every tile always says which one you are seeing.
The line under the wall now reads what the tiles really show, such as "Live video · boxes on" or "Snapshots on 2 of 6 tiles", and each tile carries a small badge with its real update rate. Press B to switch the boxes on all tiles. For now a wall plays video on its first four tiles and shows the others as pictures.
On a camera's page, pointing at a row in the Tracks list rings that person's box on the video, and the camera page and the inspector have the same Boxes switch as the wall.
Settings has a new "Boxes follow the picture by" value, and an installer can nudge one camera's boxes earlier or later from the clock button on its tile. "Most annotated pictures per second" is now called "How often boxes update".
Each camera's tile now has a caption under the picture with its name and how many people are in view. When something is raised on a camera it gets a ring, the level in words and the reason, such as "Helmet missing, high severity". A camera that sends no data says "Not counted".
On the Monitor, Auto now keeps an even grid while the site is calm. When a camera has an open violation it moves to the front and grows, stays at least 20 seconds unless somebody reviews it first, and waits while you are using the wall. Clicking a tile puts it in front and pauses Auto; in a 2 or 3 column grid a click opens that camera in Focus.
Auto, Focus, 2 columns and 3 columns now each show a tiny picture of how they arrange the cameras and a line saying what they do: Auto moves cameras that need attention to the front, the column layouts never move.
Above the wall, Auto now says in words which camera is in front and why, for example "Dock 2 in front since 10:42:01, helmet missing (high)". "Why did it move?" lists the last ten moves, and while you are using the wall a button says how many cameras are waiting and lets you show them now.
Each Monitor tile has a Pin button (or press P over it). A pinned camera keeps its place and size and Auto never moves it to the front; if it needs attention the sentence above the wall says so. Viewers cannot pin, and the button says why.
The Monitor's summary now starts with a Needs attention list. Acknowledge says you have seen an alert and somebody has it: it leaves the count and the front of the wall, stays in the list with your name, and Undo or Reopen puts it back. It is not a review, changes no review figure, and Viewers do not get the button.
The Monitor's Focus view now keeps its camera in the address, so a link opens the same camera, and the left and right arrows and the keys 1 to 9 change camera. Clicking an alert in the summary rings that camera's tile; Auto also brings it to the front.
When a camera needs attention but is not in front (it was pinned, the pointer is on the wall, moves are off, or it has been open for five minutes), the sentence above the wall now says so instead of calling the wall calm, and so does the log. Before the list has loaded, or if it cannot be loaded, the Monitor says that rather than claiming nothing needs attention. A camera that has just cleared says it stays in front a little longer.
Resume Auto, choosing Auto, and the button that says how many cameras need attention now move the wall straight away, even while the pointer is on it. A pinned camera keeps its place in the even grid too, and clicking it says it is pinned instead of moving it.
Keyboard focus on the wall now holds Auto's moves only for 90 seconds after the last key press or click, the same wait as a click on a tile. A wall PC nobody is at keeps moving to the cameras that need attention, even if a tile was left focused.
On a narrow window or a phone, the camera Auto brings to the front is now as large as before or larger, and the buttons on a phone's tiles are big enough to tap. Dragging the Boxes timing slider on a tile no longer moves the wall.
The camera name and clock drawn in a picture's corner no longer slide under the small badge that says Live video or Snapshots, where only a stray bit of the time showed. They now sit just above it.
The Boxes timing clock stays on its tile while its panel is open, and when a camera's video cannot start, the badge's tooltip says the video relay answered with an error instead of naming a component.
A tile that has never received a picture now reads "No picture for N s" in red, and the line under the wall counts it as having no picture, instead of looking like a healthy snapshot tile.
While a tile tries its video again with pictures still showing, it keeps its Snapshots badge and stays in the wall's count, instead of vanishing for the length of the try.
A tile shows the camera's pictures at once and switches to the video as soon as it plays, so no tile waits empty, and its badge reads Snapshots until then. When a playing tile falls back to pictures, its last video frame stays until the first picture is drawn.
The page now reads Monitor, and the line under it says how many of the site's cameras are on the wall, how many people are in view and how many miss PPE. A camera that sent no picture is named, because its people are not in those counts. Your own title still wins if you set one.
On a phone, the hint under the layout picker on the Monitor now wraps onto a second line instead of being cut off.
The colours, labels and summary you choose in Customize view are now kept with your account, so they appear on any browser you sign in on. A look you saved in this browser before is carried over the first time you open the Monitor, unless your account already has one.
Customize now opens beside the wall, so each change shows at once, and every option has a plain name and one line saying what it changes. Options the chosen style does not draw are listed instead of greyed out, presets are drawn so you can judge them before applying one, and the parts that always stay on say why.
The layout the Monitor opens with, whether boxes start on, and each camera's timing nudge are now kept for you, not for one browser. Customize shows them under This page starts with, and Reset to default puts them back.
In the Customize view dialog on Settings and the Test bench, Save as site default now shares only the look you see there, not the layout and Boxes start you chose for yourself. Reset to site default likewise puts back only the look and keeps your starts and camera timing nudges.
Customize view has a new Auto layout tab with a separate switch for each thing Auto may do by itself: move tiles, bring in a camera from outside the wall, and fill a wall screen for a high event. You can also choose which events move a tile and how long a camera stays in front.
Customize now opens beside the wall with Needs attention sized Standard or Narrow, Row spacing, and three switches for the lines around the wall: the layout caption, Why did it move? and the tips, which now sit in the footer. Each one explains itself and takes effect at once.
The Customize panel kept the size choice for Needs attention switched off, although its own line said Narrow slims the column. The size can now be chosen; only hiding it is locked, with the reason beside it.
After Reset to default the keyboard stays inside the panel instead of jumping to the top of the page, and the wide fields (the title, the people counting, the word for a person) now sit under their explanations instead of squeezing them into a narrow strip.
The tabs in the Monitor's Customize panel now wrap onto a second line when they do not fit, so "Summary column" and the others are always readable without sliding the strip sideways.
The status dots on camera tiles and the new-release dot no longer pulse for ever. Each screen keeps a single moving dot, for what is live.
Moving a summary card in Customize view now glides it into place, the preset you applied says "In use" and its card pulses twice, and the alert count in the top bar and the menu bumps once when it changes.
Events
When the live connection drops and comes back, the bell now lists the violations that started while it was away, as unread and without pop-ups, so nothing is missed.
The number in the header, the Events badge in the menu and the number in the browser tab now come from the server, so they are right the moment the page opens or after a lost connection, and they always match. It counts open violations nobody has acknowledged or reviewed, low severity included, and the header number opens Events showing exactly those rows (a new Not acknowledged switch holds that filter). When no camera is on or detection is silent, the header says "Not checking" instead of a zero.
Training and models
A new All models page, opened from Models, lists every model that could be added: 652 for 60 jobs. Each card says what the model does, whether it may be used commercially and whether it loads today, and search finds any of them by name, job, licence or training data.
Put models on a shortlist to plan which one does each job. A job holds one model, so choosing another replaces the first, and a model marked avoid cannot be chosen. The list downloads as a CSV; nothing on it is installed.
Look and settings
If live updates are lost for more than five seconds, a slim notice says the numbers may be out of date and when the next try is, with a button to try again at once. The connection dot turns amber meanwhile, and a message tells you when updates are back.
On a phone the top bar now shows the page name beside the menu instead of a search field, followed by the open-alerts count, the connection dot and the bell.
Every setting on Frames to review, Retention, Training, Re-identification, Sign-in and the Monitor now has a plain name, one line on what changes, its default and its range, and a Reset to default once you change it. Settings that depend on a switch say which one.
If someone else saves a setting while you are editing, your unsaved changes stay and you are asked only when you both changed the same section. The page also says how long a saved change takes to reach the services, and Mining is now called Frames to review.
The PPE evidence settings now read back as one sentence, such as how long an item must be missing before a violation opens. Calm, Balanced and Quick set the values for you, and every value keeps its own name and explanation.
Which violations pop up, desktop notices and sound are now in your account menu and in the bell, open to every role. They apply to this browser only, and the page says when sound is waiting for a click.
Product name, site name, accent colour, logo, home page and row spacing each say what they do in one line. Someone who cannot change settings now sees why the branding fields are off.
A How this page works button on each page says what the page is for, points at its parts on a small sketch, and lists what changes if you use its main controls.
Press ? on any page to see the keys that work there and everywhere, with the right modifier key for your computer; it is also in the account menu, under Keyboard shortcuts. Words like zone and track now explain themselves in a small popover under Words on this page in each page's help.
A bar shows where an item counts as missing, checking or worn, a disk bar shows the free-space limits against today's free space, a week strip shows when training may run, and a small map shows which camera can follow which.
On a phone, every field, switch, preset button and tab in Settings and in the Customize panel is now tall enough to hit, and the sheet's close button has a bigger target.
The hour numbers under the training week no longer sit on top of Sunday, and on the route sketch an arrow no longer strikes through the walk time or a camera's name.
Hovers, menus and pop-ups now move at one pace and on one curve. With reduced motion switched on in your system, they fade briefly instead of sliding, and loading rings stay still while the words beside them say what is happening.
A page now fades in once when you first open it. Going back to it, or changing a filter, no longer re-plays the staggered build-up.
Switching between settings sections now cross-fades, the marker beside the current section slides to the next one, and the Save bar fades in when you change something instead of snapping in.
Overview
When more than five violations are open, the Overview now lists the most severe ones and adds a line saying how many more there are, with a link to them. An old high-severity violation is no longer hidden behind newer minor ones.
If the vision service stops reporting, or no PPE model is active or it failed to load, the list now says so instead of showing an all-clear. The camera counts wait for the system status rather than showing zero.
In the 7-day chart a day with only a violation or two now shows its number above the bar instead of squeezed inside it. The samples row also shows how long the oldest sample has waited.
The tiles at the top of the Overview no longer leave one alone on a row, at any window width and with the sidebar open or closed. On a mid-width window Needs attention keeps a full row, and a long title wraps to a second line before it is cut short.
An offline camera now says since when ("No video since 10:19", with the day if it is not today). A chart that could not refresh says so and counts toward Retry all, and a model that was imported rather than trained here reads "Added".
Monitor
On wide screens the summary now sits in a column next to the wall instead of a popup: compliance right now, who is missing PPE and how long they have been in view, which PPE was missed most today, and the latest events, each a click from the event. A status line under the title says how many cameras are on screen and how many people are in view, and Summary switches the column on and off. On a phone it still opens from the Summary button.
On the Monitor, a person who is missing PPE is now always listed as missing it, even when the severity of the rule is not known yet. Before, such a person could appear as fully compliant while the score counted them as a violation.
The summary column now appears only when the wall keeps a good width beside it, so a mid-width window or an open sidebar no longer squeezes the tiles into one narrow column. Widening the window closes the summary popup, the column is left out in kiosk, and Customize view now offers the summary as Shown or Hidden.
A small chip in the corner of every camera tile says how many people are missing PPE, in red, or how many are fine, so the wall can be read at a glance. Sites that never changed the summary now open on its four cards: compliance, active alerts, what was missed today and the latest events.
When a camera stops sending video, or its tile is switched to the raw view, its people drop out of the status line and the cards within a few seconds instead of staying listed as in view right now. The alert rows now fit the narrow column, with how long a person has been in view first, and the colours stay readable in the light theme.
The line under the wall now describes the cameras on screen: whether detection runs on sub streams or main streams, and how many of them record. It no longer says main streams are recording when they are not.
An account without access to people now sees the track number on the wall's labels, never a person's id, and the Global id label option is left out for it. With Score mode on session totals, the cards say they count tracks since each stream started.
A summary popup you left open on a narrow window no longer comes back when you narrow the window again after widening it, and the wall no longer flashes at full width before the summary takes its column.
How often the model looks at a camera is now called checks per second everywhere, not frames per second, because the video itself plays at the camera's own speed. On a camera's live view, Annotated and Raw now explain themselves on hover, and Annotated shows how often the boxes update next to what Raw would give.
A tile switched to Raw video now still counts its people in the wall and the summary, and the line under the title says "on 5 of 6 cameras" whenever a camera has sent nothing fresh. After a lost connection or a woken laptop the page catches up on its own, and the alert count starts from the server instead of zero. A site with no camera switched on no longer reads "Nothing needs attention": it says no camera is being checked yet and links to the cameras.
Events
Pick an event and its snapshot, clip, PPE probabilities and review buttons open beside the list, so you can work down it without leaving the page; T and F still mark true and false positives. The filters sit together above the list, the chosen event is part of the page address so you can share it, and the event page itself now uses the same look and names who reviewed it.
The event beside the list no longer jumps to a newly arrived violation, so T and F always mark the one you are looking at. Times in the panel and the list name their day when it is not today, the zone shows under the camera, and the list keeps every column in view.
Moving down or up the Events list with the arrow keys now opens that event beside it, so T and F always mark the row you are on. While the list loads the panel shows a placeholder instead of saying nothing is selected, a site with no events says there is nothing to review yet, and the review buttons show a spinner while they save. The reviewer's name keeps to one line, and the PPE readings follow the same order as your PPE types.
An account without access to people, such as a display left signed in on a wall, no longer sees who reviewed an event. It still sees when the event was reviewed.
Moving down the list with the arrow keys and pressing T or F now marks the event the panel shows, even when you press them quickly. The filters fit on one row, and a filter that finds nothing says "No events match these filters" instead of "Nothing to review yet".
When a camera stops reporting for three minutes, its open violations are closed at the last moment it was seen working, instead of staying open for ever or ending at the first frame after the outage.
Rules
Right-click a cell in the Rules matrix, or use its arrow, and its settings open beside it: required or not, severity, active hours, days and pause, with buttons to require or remove that PPE in every zone and a count under each column. The arrow menus and the schedule popup are gone; every change still saves as you make it, and stopping a rule or using the every-zone buttons still offers Undo. The selected cell is part of the page address so you can share it.
On a phone, tapping a cell to require or stop it no longer scrolls the page down, so you can set several in a row. A mistyped time is outlined in red, the PPE names fit on one line in the matrix, and the page eases in like the others.
On a 1600 px screen with the sidebar open, "Safety helmet" now fits on one line in the Rules matrix. A zone that is switched off or not checked keeps its whole name, with the badges on a line of their own on narrower windows.
On a phone the camera and zone column now keeps to a narrow width, with long names cut short and the badges on their own line, so at least two PPE columns stay in view.
Training and models
The running job now has its own panel with the epoch, the time left and live loss and accuracy curves, and the idle hours and the vision load sit beside it. Past runs show each model's golden-set score against your gate, and a person can activate a model, force one below the gate with a written reason, or roll back, right there. Automatic training and the gate settings are one click away, and the full list of jobs stays below.
A job paused by a person now says so and waits for Resume, instead of promising it will carry on by itself, and a cancelled job says it cannot be resumed. The time left no longer counts down when a job has gone quiet, and the model a finished job produced is named properly, with the day for older times.
The Metrics column under All jobs now shows each job's scores (mAP50, mAP50-95, precision and recall) instead of a dash. The log reads one short line per epoch, with the time, the losses and the scores, and the curves stay in step with the epoch even for a very long job.
A paused job can be cancelled straight away, and the confirmation says whether it stops now or at the end of the epoch. While it loads, Training no longer states a golden gate, a dataset, a last automatic job or a rollback it does not know yet, and it shows a Retry if the settings cannot be loaded.
The Models page now offers three more PPE detectors for one-click install, including a 19-class one that covers boots, ear protection and glasses. Each states its licence and whether commercial use needs a check.
A finished job in All jobs now lists recall next to mAP50, mAP50-95 and precision. If the training settings cannot be loaded, the Automatic training card says so instead of staying on "Loading".
A job started with Ignore idle windows now shows as running with its time left, instead of "pausing" outside the idle hours, and it has no Pause button because it never pauses. The idle-hours bar beside it now uses the same word as the job.
After you cancel a running training job, the page keeps saying it is cancelling, with the epoch it stops after, and Cancel job stays off until it ends, even after a reload. Cancelling a job a person paused hands scheduling back to automatic, so queued jobs can run again.
Analytics cuts and prints its hours in your time zone, so an evening event no longer lands in the wrong hour, including in half-hour zones. The Models page shows no Activate button until it knows the site's golden gate, and tells you with a Retry if it cannot load it.
Detection and counting
A worker standing next to someone wearing PPE is no longer credited with the neighbour's helmet or vest, so their own missing PPE is now raised. Sites may see more violations after this fix, because they were being missed before.
A face must be at least 40 px across to be matched to a person, up from 32. Smaller faces gave unreliable matches, and a wrong match puts the wrong name on someone.
A person is counted only after being tracked for about a second, so a detection that flickers on a single frame no longer raises the people count, and two boxes on one person count once. A person's box appears on the live view about a second later than before.
A person must be at least 40 px tall in the picture to be counted, and 140 px to be checked for gloves or boots (helmets and vests stay at 80 px), so people too small to see properly stop raising new violations nobody could verify. A violation whose person walked out of view, or too far away to be checked, now ends when it was last checked; the person stays marked while they are still followed. To be recognised again or listed under People a person must be at least 100 px tall; smaller people are still counted.
In the Test bench, a person whose picture could not be cut out, for example at the edge of the frame, no longer blanks everybody else's PPE. A person too small in the picture is also no longer reported as missing gloves or boots that cannot be checked at that size. Anyone who could not be checked for every required item now reads as not decided, never as compliant or as missing something.
Users and access
When an account is disabled or deleted, a password change is forced, or a session ends or runs out, its live camera video now stops straight away, as its other live connections already did. Before, an open video tile kept playing until the page was reloaded.
Look and settings
The green, amber and red used for status words such as "Passed" and "1 missing" are slightly darker in the light theme, and the red is slightly lighter in the dark theme, so small text on a coloured chip meets the standard for readable contrast.
On a site without its own logo, the collapsed sidebar showed a small mark with the first letter of the name cut off beside it. It now shows the mark at full size and nothing else, and the mark is full size when the sidebar is open too.
The People page now counts ids, because one person can appear under more than one. The Analytics tile that said Precision now says how many events a person has reviewed, and a message about missing access now says what your role cannot do and to ask an administrator.
Settings now refuse a pair that contradicts itself: the level for "absent" must stay under the level for "present", and the free space where recording pauses must stay under the free space retention aims to keep. The message appears under the field to change.
Clearing events in the developer tools now also clears the counting history for the same period, so time in compliance never sits beside zero violations. The confirm text says so.
A long list of changes is now folded into one row per page, with up to three plain lines on top saying what the release comes to. Open a row to see its changes and a change to read the detail; earlier releases are one line each. Nothing was removed.
Overview
A new list puts open violations, cameras that stopped reporting and events waiting for review in order of urgency, each one a click from where you deal with it. The Last 24 h tile becomes a violations chart you can switch between 24 hours and 7 days, with the period before for comparison, and the cameras sit in a compact grid that opens on whichever one needs you.
Cameras
A camera you reach through an outside address can now keep its address on the site network too. The server connects locally whenever it can reach the camera there, which gives the steadiest picture, and uses the outside address when it cannot.
The camera form asks for the user name and password apart from the address, so nobody has to write them into a link. If a camera needs a login, or refuses the one you typed, you are told when you save instead of finding the camera offline later.
Signing in
The sign-in page now has a "Keep me signed in" box, so you are not asked again for the number of days it names. Leave it unticked on a shared computer.
The password field tells you when Caps Lock is on, and a failed sign-in says plainly what went wrong, from a wrong password to a server that cannot be reached. If you are signed out while a page is open, for example because your password was reset on another device, the next thing the page does takes you to the sign-in page, which says so.
Anyone can request an account with a name, email and password, and an optional note on who they are. A strength meter helps pick a good password, each problem is shown under its own field, and an administrator reviews every request.
"Forgot password?" asks your administrator to reset it, and gives the same answer whether or not the address has an account. They hand you a one-time link that sets a new password and signs you out everywhere else; an expired or used link says so and lets you ask again.
After asking for access you can sign in and see that your request is waiting, with the date it was sent. The page checks every few seconds and opens the app the moment an administrator approves you, with no cameras or events shown before then.
"Change password" is now in the account menu, and a temporary password from an administrator takes you straight to choosing your own. Changing it signs you out everywhere else.
A new Sign-in & access section in Settings turns requests for access on or off, sets how many days "Keep me signed in" lasts, and sets how long password reset and invitation links stay valid.
A sign-in link can no longer send you on to another website after you sign in. When someone signs out, or their session ends, the next person to sign in on the same screen no longer sees their requests and alerts.
Users and access
A new Requests tab on the Users page lists everyone waiting for access, with their note, when they asked (and the address they asked from, when the server can see it), and a count on the tab. Pick a role, then approve or reject; a rejection can carry a private reason for the audit log, and a switch turns requests on the sign-in page off.
For people who forgot their password, create a one-time reset link or set a temporary password they must replace at their next sign-in. It is shown once with a Copy button, and on a site without a clipboard the text is selected for you to copy by hand. Accounts that are waiting, refused or switched off cannot be given one.
"Invite" on the Users page creates the account with the role you choose and a one-time link for the person to set their own password. The Users table also now shows whether each account is active, pending, rejected or disabled.
A request for access or a forgotten password rings the bell, raises a toast with a Review button, and is listed at the top of the notifications. The Users entry in the sidebar shows how many are still waiting, even for requests that arrived while nobody was looking.
In Settings → Developer tools, the Audit log option now says that it also clears the one-time reset and invite links and the password-reset queue, so clearing it no longer removes them without warning.
Names, face pictures, the People page and the person on each event now need a new People permission, which admins, supervisors and reviewers have. A viewer, such as an account left signed in on a wall display, still sees the cameras, the Monitor and the events, but no names, faces or person ids (track lists and alert rows show the track number), so a screen anyone can walk past shows no one's identity. A change of role now takes effect in a page that is already open.
A request for access that an admin refuses now stays on the Users page for 30 days, in case the decision changes, and is then deleted with the person's details. After that the same address can ask again.
The page you are on is marked with a bar, and the other pages sit quieter until you point at them. Your site's logo now shows whole instead of cropped, and the site name only appears when it differs from the product name.
A new Help section opens the user manual, the quick reference and the other documents, and a clickable demo of the finished system, each in a new tab.
The theme button in the top bar now flips between light and dark straight away, instead of opening a menu.
The browser tab shows your site's logo, fitted whole into the icon, or the default mark when no logo is set.
The release notes no longer open with a bright outline around them, and the Latest label is easier to read in both themes.
Browsers set to darken every website, such as Chrome's automatic dark mode or a dark-mode add-on, no longer repaint the light theme into washed-out pictures and bright grid lines. For a dark look, use the theme button.
Each camera now has a mode, PPE or Security. A security camera tracks people but raises no PPE events, and its PPE rules are kept, paused, until you switch it back. Change it in the Mode column on the Cameras page, or when you add or edit a camera.
Settings → Detection now has a PPE checking switch for the whole site, and turning it off asks you to confirm first. Off, every camera behaves as a security camera: people are still tracked, no new PPE events are raised, and open ones stay on record. Each camera keeps its own mode and rules, so switching it back on restores them.
Settings → Detection now holds the face recognition switch. When it is on, people you have named are recognised on any camera and on later days whenever their face is visible; masks and respirators hide it. Face data of people you have not named is deleted after 7 days by default, and you can change that there.
On larger screens the sign-in form now sits beside your site's branding and a short animated look at what the system detects; smaller screens keep just the form. A branded loading screen also appears when the app is slow to start, and pages ease in as you move between them.
If the PPE model cannot be loaded, the header's status dot now reads “Vision online, PPE model failed to load” and Overview explains that PPE cameras are not being checked. The system tries again about every five minutes and starts checking by itself once the model loads.
A class map you save on the Models page, or a change to your PPE types, now takes effect within about 15 seconds. There is no need to restart anything or re-activate the model.
Checking an image in the Test bench now judges only the PPE ticked under Required PPE, as video runs already did. Before, an image was always checked against every enabled PPE type.
Start with the live demo, then try it on a site: one server, the CCTV you already have, and your own brand.