One core system, built into the fields that run buildings, devices and businesses
Plantroom Labs connects systems that were never meant to work together and
builds the useful thing on top: a station that behaves, a device fleet a platform
can read, an agent that can see a building, a web app a business can deploy.
Each project gets a team picked for the fields it touches, led by one person who
writes the specification and answers every email.
Every job is a fixed price against a written specification agreed before
work starts.
A LoRaWAN sensor, a Niagara station and an invoicing spreadsheet
look nothing alike. The job on each is the same, and so is the way it is checked.
1
Read
Get the data off the system as it really is: the protocol, the decoder, the export, the jar. Measured, not taken from the manual.
2
Name
Map it to one data model with your names and tags, so the next system and the next engineer can find it.
3
Act
Write back only where it is meant to: priorities, schedules, commands. Every write is scoped and reversible.
4
Show
Put it in front of the person who needs it: a graphic, a dashboard, an alarm, an agent answer.
5
Hand over
Source, notes and access in your name. Support afterwards if you want it, and nothing that only we can keep alive.
Sensor → Firmware → Radio → Network server → Payload decode → Platform → Interface Bold is what you can open on this site today. The rest is ours too, and travels under NDA.
One job, seven stages, one practice. We have built at every one of them
— the sensor and its firmware on our own connected-product programme, the
decode, the platform and the interface in public here — which is why the
boundaries between them are the part we are usually hired for.
Boards, firmware, SOLIDWORKS enclosures and printed parts, for the projects that need something physical.
Project teams
Each project gets its own team
A job is staffed for what it touches, not from a bench. The
specification names which of these roles the job needs and who fills each one,
so you know who built what before you pay for any of it.
Project lead
Owns the specification, the fixed price and every reply from the first email to handover. On every job, named in the quote. Today that is Usama Iqbal.
Integration and software
Protocols, data models, back ends, agents and the web apps around them.
Interfaces
Operator graphics, widgets and dashboards built against the live data model.
Hardware and firmware
Electronics, PCB layout and firmware for device work, named in the specification when a job needs it.
Mechanical design
SOLIDWORKS enclosures, brackets and 3D-printed parts for projects with something physical in them.
Services
Eleven deliverables, scoped one at a time
The fields are where the work sits; these are what you can buy.
Each one is scoped in writing and priced per deliverable, and
six of them need no BMS in the building at all.
Custom IoT and LoRaWAN builds: decoders that survive a station, a self-hosted ChirpStack server, MQTT, and the points or dashboards the readings become.
Niagara operator screens built once and reused: standard PX plant sheets bound by relative ORD, bajaux web widgets and dashboards, and a written standard.
JACE controller and Niagara station setup end to end: platform commissioning, TLS, users, roles, BACnet and Modbus, tagging, histories, alarms, backups.
Custom Workbench views and tools for repetitive Niagara work: bulk renaming and retagging, station audits, provisioning helpers and module inventories.
A connected-device platform for retail and facilities: battery-powered devices on a long-range radio network, a provisioning path, remote configuration, telemetry, an operator dashboard and an internal operations app.
Live demos, free tools and notes, none behind a form
The demo below is the real widget code running in your browser
against a simulated station.
Fourteen programs: three for an unfamiliar
network, nine for what Niagara will do with your file,
one for the spreadsheet a business runs on. All read-only,
MIT-licensed and one file each.
And the notes. There are 54, on narrow questions about protocols,
stations, devices and the web, written from the system rather than from memory.
Plant dashboard — AHU-01
Supply and return air temperature, fan power, zone CO₂, a fan-speed dial, a demand chart, a writable zone set point, plant commands and the alarm queue. Twelve tiles, each bound to its own station ORD — and the values are moving because a simulated station is pushing them. Move the set point and the plant responds.
Niagara 5 moves off Java 8, makes a valid module
signature mandatory and does not run on JACE-8000 hardware. Every third-party
module has to be recompiled and re-signed, and the bespoke ones are only found
by looking. The module scan is free: send a modules/
listing, the jars or a backup and a per-module table comes back by email. It is
static analysis against a Java 25 JDK, not a test on a Niagara 5 build.