CMMS BMS IoT Integration: Connect Data for Predictive Maintenance

By Corin Hale on September 28, 2026

cmms-bms-iot-integration-predictive-guide

Predictive maintenance fails less often because of weak analytics than because the data never reaches the people who fix equipment. The building management system sees temperatures, pressures, and alarms. IoT sensors see vibration and power. The CMMS holds asset history, work orders, and parts. Until those three speak the same language, alerts stay on a screen instead of becoming scheduled work. Teams that plan the connection carefully, and choose a maintenance platform built around assets and work orders, get far more value from every sensor they install.

CMMS + BMS + IoT Integration

Connect Building Data to Maintenance Action

Predictive maintenance needs signals, context, and a work order system that can act on them. This guide covers integration architecture, protocols, data modeling, and the pitfalls facility teams hit most often.

Field layerSensors, meters, controllers, drives
Building layerBMS and BACnet network, alarms, trends
Integration layerMapping, rules, thresholds, API or gateway
Maintenance layerCMMS assets, work orders, schedules, history

Why Three Systems Rarely Work as One

  • The BMS is built for control and alarming, not for maintenance history or labor tracking.
  • IoT platforms often arrive through a vendor or pilot project and sit outside standard IT and facilities processes.
  • The CMMS may have clean asset records that do not match the point names used in the BMS.
  • Each system has a different owner, a different naming habit, and a different definition of an "alarm."

The cost of the gap

Technicians re-key alarms into tickets, duplicate alerts flood the queue, and real warnings get lost among nuisance points. The result is predictive equipment with reactive habits.

Reference Architecture: Four Layers, One Direction of Meaning

1. Collect
Sensors and controllers publish values. BMS trends and IoT gateways buffer them.
2. Normalize
Point names, units, and equipment relationships are mapped to a common model.
3. Evaluate
Rules compare values with thresholds, trends, or run-time meters.
4. Act
A qualified event creates or updates a work order against the right asset.
5. Learn
Completed work and findings refine thresholds and asset records.

Keep control and maintenance separate

Integration should read from the BMS for maintenance purposes. Writing commands back into control systems raises safety and cybersecurity concerns and should follow a separate approval process.

Protocols and Standards You Will Meet

Standard or ProtocolTypical RoleIntegration Consideration
BACnet (ASHRAE 135)Communication between building controllers and supervisory systemsObject and property names vary by vendor and site, so mapping is still required
BACnet/SCSecure connectivity option within the BACnet standardCheck whether your controllers and network policy support it
ModbusMeters, drives, and equipment controllersRegister maps are device specific and need documentation
MQTTLightweight publish and subscribe messaging for IoTDefine topic structure and retention rules early
REST and webhooksApplication-level exchange with software platformsPlan authentication, rate limits, and retry behavior
Project Haystack and BrickSemantic tagging of equipment and pointsGive a consistent model that rules and dashboards can share

Data Modeling: The Step Most Projects Underfund

Unstructured points
  • AHU3_SAT_2 and similar labels with no equipment link
  • Units and scaling unknown outside the controller
  • Alarms cannot be tied to a CMMS asset ID
  • Every new rule requires custom scripting
Tagged and mapped points
  • Each point tagged with equipment, function, and unit
  • Equipment relationships stored, such as air handler feeds VAV
  • BMS equipment matched to a CMMS asset record
  • Rules reused across identical equipment types

An asset register that matches the field

Start with a single identifier that appears in both systems. Without it, every integration becomes a manual translation table that ages badly.

From Signal to Work Order: Rules That Earn Trust

Trigger TypeExample ConditionCMMS Action
Run-time meterFan or compressor hours reach an intervalGenerate a preventive maintenance work order
Threshold alarmFilter pressure drop exceeds a set limitOpen a filter replacement task with priority
Trend deviationMotor current rises steadily at constant loadCreate an inspection request for bearings or alignment
Sustained faultSame alarm persists beyond a delay periodCreate a corrective work order and notify the supervisor
Condition scoreCombined vibration and temperature indicators worsenSchedule a condition-based inspection

Guardrails that prevent alert fatigue

  • Use time delays so brief spikes do not create tickets.
  • Deduplicate: one open work order per asset and fault type.
  • Suppress alerts during known events such as maintenance mode or commissioning.
  • Require a technician outcome code, so false positives can be reviewed.
Give Every Alert a Place to Land
Oxmaint keeps assets, inspections, preventive schedules, and work orders together, so signals from your building systems have a clear maintenance record to connect to.

Integration Patterns and Their Trade-Offs

Point-to-point API
Direct connection between two systems. Quick for one use case, but hard to scale as sites and vendors grow.
Gateway or edge device
Collects protocol data locally and forwards structured events. Useful where the BMS network must stay isolated.
Central data platform
Stores normalized history for analytics and feeds the CMMS with qualified events only.

Choosing between them

Small portfolios with one BMS often succeed with a gateway and a few rules. Multi-site owners with mixed vendors usually need a normalized data layer and shared tagging.

Security and Governance

  • Segment building control networks from business networks, and expose only the required data.
  • Use least-privilege service accounts and rotate credentials.
  • Log who or what created each automated work order.
  • Document data ownership, retention, and who approves new rules.

Pitfalls Facility Teams Hit Most

Mismatched asset names
Create a shared asset ID and maintain it during equipment replacement.
Too many alarms sent to the CMMS
Send only maintenance-relevant events and apply delays and deduplication.
Sensors installed without a response plan
Define the action, owner, and target response time before installing.
Unverified sensor accuracy
Calibrate and spot-check readings against field instruments.
Integration built by one person
Document mappings and rules so support survives staff changes.

A Practical Rollout Path

Phase 1
Clean the asset register, assign IDs, and rank equipment by criticality.
Phase 2
Pick one equipment class, such as air handlers, and connect run-time and status points.
Phase 3
Automate preventive work orders from meters and validate them with technicians.
Phase 4
Add condition-based triggers and review false positives monthly.
Phase 5
Extend to other equipment classes and sites using the same model.

What Oxmaint contributes

  • Asset management with hierarchy, location, and maintenance history.
  • Preventive maintenance schedules based on time or usage.
  • Work orders for corrective and condition-based tasks, with mobile access for technicians.
  • Inspections, inventory, and reporting to review outcomes and repeat failures.

KPIs to Judge the Integration

Alert-to-work-order ratio
How many alerts become real tasks.
False positive rate
Tasks closed with no fault found.
Mapped critical assets
Critical equipment linked to live data.
Unplanned downtime trend
Change in failures on connected assets.

Frequently Asked Questions

Do I need IoT sensors if I already have a BMS?
Not always. Start with BMS points and run-time data, then add sensors where key failure modes are not covered.
Is BACnet enough for CMMS integration?
BACnet moves data, but you still need mapping, rules, and an integration method. Talk through your setup with our team.
Should alarms create work orders automatically?
Only maintenance-relevant, filtered alarms. Use delays and deduplication to avoid flooding technicians.
What is the first step toward predictive maintenance?
Build a reliable asset register and preventive schedule. Set up your assets in Oxmaint.
Why use Haystack or Brick tagging?
Consistent tags let one rule apply to many similar assets and simplify later analytics and reporting.
Turn Building Signals Into Scheduled Work
Start with clean assets, preventive schedules, and mobile work orders in Oxmaint, then connect your building and sensor data with a plan your team can maintain.

Share This Story, Choose Your Platform!