{"id":9797,"date":"2026-08-06T18:18:47","date_gmt":"2026-08-06T10:18:47","guid":{"rendered":"https:\/\/blog.facilitybot.co\/?p=9797"},"modified":"2026-08-06T18:18:47","modified_gmt":"2026-08-06T10:18:47","slug":"how-to-connect-building-automation-systems-bas-to-a-cmms","status":"publish","type":"post","link":"https:\/\/facilitybot.co\/resources\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/","title":{"rendered":"How to Connect Building Automation Systems (BAS) to a CMMS"},"content":{"rendered":"<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"9:1-9:437;320-756\">Your building automation system already knows when something is wrong. A chiller pulling too much amperage, an AHU running hot, a fire panel throwing a fault at 2 a.m., the BAS sees all of it in real time. The problem is what happens next. In most facilities, that alarm sits on an operator workstation until someone happens to notice it, decides it&#8217;s worth acting on, and manually types up a work order in a completely separate system.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"11:1-11:353;758-1110\">BAS CMMS integration closes that gap. When you connect BMS to CMMS, building performance data flows directly into your maintenance workflow, so alarms become prioritized work orders in minutes instead of hours. This guide walks through why that connection matters, the protocols and architectures involved, and a step-by-step process for setting it up.<\/p>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"13:1-13:42;1112-1153\">Why BAS and CMMS Need to Work Together<\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"15:1-15:314;1155-1468\">A building automation system and a CMMS are built to do different jobs. The BAS monitors and controls HVAC, lighting, fire systems, and other mechanical equipment, collecting thousands of data points an hour. The CMMS manages the human side of maintenance: work orders, technician assignments, parts, and history.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"17:1-17:455;1470-1924\">Left disconnected, the handoff between &#8220;something is wrong&#8221; and &#8220;someone is fixing it&#8221; depends entirely on a person noticing the alarm and manually creating a ticket. That gap is where facilities teams lose the most time. Industry research on facilities operations consistently points to reactive maintenance eating up a large share of a maintenance team&#8217;s week, much of which could be avoided if building data triggered maintenance action automatically.<\/p>\n<div class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\" dir=\"ltr\" data-sourcepos=\"19:1-24:80;1926-2319\">\n<table class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\">\n<thead class=\"text-left\">\n<tr>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">Impact area<\/th>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">Without integration<\/th>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">With integration<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Alarm response time<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Hours (next shift reviews logs)<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Minutes (auto-generated work order)<\/td>\n<\/tr>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Energy waste detection<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Days to weeks<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Same-day<\/td>\n<\/tr>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">PM scheduling<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Calendar-based, fixed intervals<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Runtime-based, matched to actual usage<\/td>\n<\/tr>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Compliance reporting<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Manual log compilation<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Combined, largely automated<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"26:1-26:46;2321-2366\">The Protocols Behind a BAS-CMMS Connection<\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"28:1-28:140;2368-2507\">Before you connect BMS to CMMS, it helps to know which language your building speaks. Three protocols cover the vast majority of buildings:<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"30:1-30:485;2509-2993\"><strong>BACnet.<\/strong> Developed by ASHRAE and published as an ANSI standard, BACnet is the closest thing building automation has to a universal language. It&#8217;s object-oriented, meaning every data point (a temperature sensor, an alarm, a schedule) is a defined object with standard properties, which makes it straightforward for a CMMS to interpret. BACnet also has native alarm and event notification, so your CMMS can subscribe to specific alarm types instead of constantly polling for changes.<\/p>\n<p dir=\"ltr\" data-sourcepos=\"30:1-30:485;2509-2993\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-9799 aligncenter\" src=\"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-40.webp\" alt=\"\" width=\"677\" height=\"510\" \/><\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"32:1-32:306;2995-3300\"><strong>Modbus.<\/strong> Older and simpler than BACnet, Modbus is still common on standalone equipment like boilers, chillers, and submeters. It&#8217;s register-based, so your integration needs a register map, and it has no built-in alarming; your integration layer has to poll and compare values against thresholds itself.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"34:1-34:193;3302-3494\"><strong>LonWorks.<\/strong> A peer-to-peer protocol popular in older and European buildings, LonWorks usually needs a dedicated gateway to translate into BACnet or a web API before a modern CMMS can use it.<\/p>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"36:1-36:37;3496-3532\">Three Ways to Connect BMS to CMMS<\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"38:1-38:151;3534-3684\">There isn&#8217;t one universal path for BAS CMMS integration. The right approach depends on your BAS age, protocol, and how many buildings you&#8217;re managing.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"40:1-40:386;3686-4071\"><strong>1. API-based integration.<\/strong> Your BAS head-end (Niagara, Honeywell EBI, Siemens Desigo CC, Johnson Controls Metasys, and similar platforms) exposes data through a REST API, and your CMMS consumes it directly. This is usually the fastest and cheapest route for a modern, single-vendor BAS, and it works well with cloud-based CMMS platforms since it typically only needs outbound HTTPS.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"42:1-42:335;4073-4407\"><strong>2. Middleware.<\/strong> For portfolios running multiple BAS vendors across different sites, a middleware layer (Niagara, SkySpark, CopperTree, or a custom pipeline) sits between the BAS systems and the CMMS, translating and normalizing everything into one feed. It handles complexity well but adds another platform to license and maintain.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"44:1-44:306;4409-4714\"><strong>3. Direct or IoT-native integration.<\/strong> Some CMMS platforms speak BAS protocols natively, or use lightweight edge gateways, so alarm data flows straight into the same system that manages work orders and assets. Fewer moving parts, lower latency, but it depends on your CMMS having that native capability.<\/p>\n<div class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\" dir=\"ltr\" data-sourcepos=\"46:1-50:101;4716-5012\">\n<table class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\">\n<thead class=\"text-left\">\n<tr>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">Factor<\/th>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">API-based<\/th>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">Middleware<\/th>\n<th class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\">Direct\/IoT-native<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Typical setup time<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">4 to 8 weeks<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">8 to 14 weeks<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">3 to 6 weeks<\/td>\n<\/tr>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Ongoing maintenance<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Low<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Medium to high<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Low<\/td>\n<\/tr>\n<tr>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Best for<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Single-vendor modern BAS<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Multi-vendor portfolios<\/td>\n<td class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\">Buildings with a native-IoT CMMS<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"52:1-52:51;5014-5064\">What Automated Work Order Generation Looks Like<\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"54:1-54:101;5066-5166\">This is the core use case that makes BAS CMMS integration worth the effort. Here&#8217;s the typical flow:<\/p>\n<ol class=\"[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3 print:block print:space-y-1\" dir=\"ltr\" data-sourcepos=\"56:1-60:109;5168-5684\">\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"56:1-56:113;5168-5280\">The BAS detects a fault, for example an AHU supply air temperature exceeding setpoint for a sustained period.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"57:1-57:79;5281-5359\">The alarm is sent to the CMMS through an API webhook or direct integration.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"58:1-58:105;5360-5464\">The CMMS auto-creates a work order with the asset ID, location, alarm details, and recent trend data.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"59:1-59:111;5465-5575\">The system assigns priority and routes the ticket to the right technician based on skills and availability.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"60:1-60:109;5576-5684\">The technician gets a mobile notification and responds, often with the relevant history already attached.<\/li>\n<\/ol>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"62:1-62:192;5686-5877\">Facilities teams that put this in place typically see alarm-to-response time drop from hours to minutes, along with fewer emergency callouts, because problems get caught before they escalate.<\/p>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"64:1-64:30;5879-5908\">Other High-Value Use Cases<\/h2>\n<ul class=\"[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3 print:block print:space-y-1\" dir=\"ltr\" data-sourcepos=\"66:1-69:160;5910-6693\">\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"66:1-66:224;5910-6133\"><strong>Runtime-based preventive maintenance.<\/strong> Instead of servicing an AHU every 90 days regardless of how hard it&#8217;s been running, the CMMS triggers PM work orders based on actual accumulated runtime hours pulled from the BAS.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-9798 aligncenter\" src=\"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-41.webp\" alt=\"\" width=\"706\" height=\"470\" \/><\/p>\n<ul class=\"[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3 print:block print:space-y-1\" dir=\"ltr\" data-sourcepos=\"66:1-69:160;5910-6693\">\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"67:1-67:172;6134-6305\"><strong>Energy anomaly detection.<\/strong> When equipment consumption drifts from its baseline, the CMMS opens an investigation ticket instead of the waste going unnoticed for weeks.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"68:1-68:228;6306-6533\"><strong>Comfort complaint correlation.<\/strong> A tenant complaint about a stuffy room can automatically pull current zone temperature and damper position from the BAS, so the technician knows what they&#8217;re walking into before they arrive.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"69:1-69:160;6534-6693\"><strong>Compliance reporting.<\/strong> Operational data from the BAS and maintenance records from the CMMS combine into one report instead of two separate manual exports.<\/li>\n<\/ul>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"71:1-71:47;6695-6741\">Step-by-Step: Connecting Your BAS to a CMMS<\/h2>\n<ol class=\"[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-decimal flex flex-col gap-1 pl-8 mb-3 print:block print:space-y-1\" dir=\"ltr\" data-sourcepos=\"73:1-78:181;6743-7818\">\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"73:1-73:161;6743-6903\"><strong>Audit your BAS.<\/strong> Document the vendor, protocol (BACnet, Modbus, LonWorks, or proprietary), network setup, and how many alarms you&#8217;re currently generating.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"74:1-74:196;6904-7099\"><strong>Decide what data actually belongs in the CMMS.<\/strong> Fault alarms and runtime hours should flow through in real time or daily; setpoints and schedules usually don&#8217;t need to leave the BAS at all.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"75:1-75:170;7100-7269\"><strong>Choose your architecture.<\/strong> API-based for a modern single-vendor BAS, middleware for a multi-vendor portfolio, direct integration if your CMMS supports it natively.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"76:1-76:225;7270-7494\"><strong>Map alarms to work orders.<\/strong> Decide which alarm severities map to which work order priorities, which equipment maps to which CMMS asset, and how you&#8217;ll prevent one flapping alarm from generating fifty duplicate tickets.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"77:1-77:143;7495-7637\"><strong>Test before going live.<\/strong> Simulate alarms, confirm routing and notifications work, and check that runtime data is accumulating correctly.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"78:1-78:181;7638-7818\"><strong>Tune after launch.<\/strong> Expect to adjust alarm thresholds in the first few weeks; BAS alarms tuned for a human operator are often too sensitive for automatic work order creation.<\/li>\n<\/ol>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"80:1-80:33;7820-7852\">Common Integration Challenges<\/h2>\n<ul class=\"[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3 print:block print:space-y-1\" dir=\"ltr\" data-sourcepos=\"82:1-85:176;7854-8649\">\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"82:1-82:176;7854-8029\"><strong>Alarm flooding.<\/strong> Route only confirmed fault conditions, not every advisory alert, and add a short time delay so transient issues that self-resolve don&#8217;t generate tickets.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"83:1-83:221;8030-8250\"><strong>Network segmentation.<\/strong> BAS systems often sit on an isolated operational technology network. A secure edge gateway with outbound-only data flow is usually enough to satisfy IT security without opening the network up.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"84:1-84:223;8251-8473\"><strong>Inconsistent asset naming.<\/strong> If the BAS calls something &#8220;AHU-3F-01&#8221; and the CMMS calls it &#8220;Air Handler, 3rd Floor East,&#8221; nothing will match. A standardized naming convention mapped early on saves a lot of rework later.<\/li>\n<li class=\"font-claude-response-body whitespace-normal break-words pl-2\" data-sourcepos=\"85:1-85:176;8474-8649\"><strong>Legacy protocols.<\/strong> Protocol gateways (BACnet-to-Modbus, for example) are inexpensive and mature enough to bridge most older systems without a full controller replacement.<\/li>\n<\/ul>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"87:1-87:30;8651-8680\">Frequently Asked Questions<\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"89:1-90:176;8682-8908\"><strong>What&#8217;s the difference between a BAS and a BMS?<\/strong> The terms are largely used interchangeably in the industry; both refer to the centralized system that monitors and controls a building&#8217;s HVAC, lighting, and related equipment.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"92:1-93:145;8910-9099\"><strong>How long does BAS CMMS integration take?<\/strong> Anywhere from three to fourteen weeks depending on the architecture, with API-based and direct integrations generally landing on the faster end.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"95:1-96:144;9101-9297\"><strong>Can an older BAS still connect to a modern CMMS?<\/strong> In most cases, yes. Protocol gateways and middleware exist specifically to bridge legacy BAS protocols with modern, cloud-based CMMS platforms.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"98:1-99:168;9299-9517\"><strong>What data should actually be sent to the CMMS?<\/strong> Prioritize fault alarms, runtime hours, and energy anomalies. Leave setpoints, schedules, and routine control data in the BAS unless there&#8217;s a specific reporting need.<\/p>\n<h2 class=\"mt-3 -mb-1 text-[1.125rem] font-bold\" dir=\"ltr\" data-sourcepos=\"101:1-101:38;9519-9556\">Bringing BAS Data Into FacilityBot<\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\" data-sourcepos=\"103:1-103:807;9558-10364\">FacilityBot is a <a href=\"http:\/\/facilitybot.co\">cloud-based CMMS software<\/a> built to turn building automation alarms into action, not just another log entry. Its <a href=\"https:\/\/facilitybot.co\/features\/fault-reporting\">fault reporting software<\/a> connects directly with BAS-generated alerts and converts them into prioritized, assigned work orders in real time, so problems get routed to the right technician before they turn into a bigger repair bill. As <a href=\"https:\/\/facilitybot.co\/features\/preventive-maintenance\">maintenance management software<\/a>, <a href=\"https:\/\/facilitybot.co\/\">FacilityBot<\/a> goes beyond basic ticketing: it centralizes asset history, preventive maintenance scheduling, and inventory in one platform, giving facilities teams a single source of truth instead of juggling the BAS workstation and a separate CMMS. For teams evaluating <a href=\"https:\/\/facilitybot.co\/\">CMMS software<\/a> with BAS integration as a requirement, FacilityBot is built to make that connection straightforward rather than an afterthought.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Your building automation system already knows when something is wrong. A chiller pulling too much amperage, an AHU running hot, a fire panel throwing a fault at 2 a.m., the BAS sees all of it in real time. The problem is what happens next. In most facilities, that alarm sits on an operator workstation until<\/p>\n","protected":false},"author":9,"featured_media":9800,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[52,4],"tags":[],"topics":[],"audiences":[],"class_list":["post-9797","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cmms","category-facilities-management"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>BAS CMMS Integration: How to Connect BMS to CMMS? - CMMS Software<\/title>\n<meta name=\"description\" content=\"A practical guide to BAS CMMS integration. Learn how to connect BMS to CMMS, which protocols matter, and how automated work orders cut response times.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"BAS CMMS Integration: How to Connect BMS to CMMS? - CMMS Software\" \/>\n<meta property=\"og:description\" content=\"A practical guide to BAS CMMS integration. Learn how to connect BMS to CMMS, which protocols matter, and how automated work orders cut response times.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/\" \/>\n<meta property=\"og:site_name\" content=\"FacilityBot - Facilities Management Software\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-06T10:18:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-39.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"287\" \/>\n\t<meta property=\"og:image:height\" content=\"175\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Anns Ahmad\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Anns Ahmad\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/\"},\"author\":{\"name\":\"Anns Ahmad\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#\\\/schema\\\/person\\\/bc5310d8986f7371a33a70124640db83\"},\"headline\":\"How to Connect Building Automation Systems (BAS) to a CMMS\",\"datePublished\":\"2026-08-06T10:18:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/\"},\"wordCount\":1502,\"publisher\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.facilitybot.co\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/images-39.webp\",\"articleSection\":[\"CMMS\",\"Facilities Management\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/\",\"url\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/\",\"name\":\"BAS CMMS Integration: How to Connect BMS to CMMS? - CMMS Software\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.facilitybot.co\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/images-39.webp\",\"datePublished\":\"2026-08-06T10:18:47+00:00\",\"description\":\"A practical guide to BAS CMMS integration. Learn how to connect BMS to CMMS, which protocols matter, and how automated work orders cut response times.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blog.facilitybot.co\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/images-39.webp\",\"contentUrl\":\"https:\\\/\\\/blog.facilitybot.co\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/images-39.webp\",\"width\":287,\"height\":175,\"caption\":\"BAS CMMS Integration\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/blog\\\/how-to-connect-building-automation-systems-bas-to-a-cmms\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/blog.facilitybot.co\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Connect Building Automation Systems (BAS) to a CMMS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#website\",\"url\":\"https:\\\/\\\/blog.facilitybot.co\\\/\",\"name\":\"FacilityBot - Facilities Management Software\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.facilitybot.co\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#organization\",\"name\":\"FacilityBot - Facilities Management Software\",\"url\":\"https:\\\/\\\/blog.facilitybot.co\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blog.facilitybot.co\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/fb_logo.png\",\"contentUrl\":\"https:\\\/\\\/blog.facilitybot.co\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/fb_logo.png\",\"width\":150,\"height\":38,\"caption\":\"FacilityBot - Facilities Management Software\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/sg.linkedin.com\\\/company\\\/facilitybot\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCFykie6GjYNh4fxv2PIv8mA\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blog.facilitybot.co\\\/#\\\/schema\\\/person\\\/bc5310d8986f7371a33a70124640db83\",\"name\":\"Anns Ahmad\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d8db3b047d8a61885018b84f5665326f69a9c942cfd42f59eeeca20eeef9cb8b?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d8db3b047d8a61885018b84f5665326f69a9c942cfd42f59eeeca20eeef9cb8b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d8db3b047d8a61885018b84f5665326f69a9c942cfd42f59eeeca20eeef9cb8b?s=96&d=mm&r=g\",\"caption\":\"Anns Ahmad\"},\"url\":\"https:\\\/\\\/facilitybot.co\\\/resources\\\/blog\\\/author\\\/anns\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"BAS CMMS Integration: How to Connect BMS to CMMS? - CMMS Software","description":"A practical guide to BAS CMMS integration. Learn how to connect BMS to CMMS, which protocols matter, and how automated work orders cut response times.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/","og_locale":"en_US","og_type":"article","og_title":"BAS CMMS Integration: How to Connect BMS to CMMS? - CMMS Software","og_description":"A practical guide to BAS CMMS integration. Learn how to connect BMS to CMMS, which protocols matter, and how automated work orders cut response times.","og_url":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/","og_site_name":"FacilityBot - Facilities Management Software","article_published_time":"2026-08-06T10:18:47+00:00","og_image":[{"width":287,"height":175,"url":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-39.webp","type":"image\/webp"}],"author":"Anns Ahmad","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Anns Ahmad","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#article","isPartOf":{"@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/"},"author":{"name":"Anns Ahmad","@id":"https:\/\/blog.facilitybot.co\/#\/schema\/person\/bc5310d8986f7371a33a70124640db83"},"headline":"How to Connect Building Automation Systems (BAS) to a CMMS","datePublished":"2026-08-06T10:18:47+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/"},"wordCount":1502,"publisher":{"@id":"https:\/\/blog.facilitybot.co\/#organization"},"image":{"@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-39.webp","articleSection":["CMMS","Facilities Management"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/","url":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/","name":"BAS CMMS Integration: How to Connect BMS to CMMS? - CMMS Software","isPartOf":{"@id":"https:\/\/blog.facilitybot.co\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#primaryimage"},"image":{"@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-39.webp","datePublished":"2026-08-06T10:18:47+00:00","description":"A practical guide to BAS CMMS integration. Learn how to connect BMS to CMMS, which protocols matter, and how automated work orders cut response times.","breadcrumb":{"@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#primaryimage","url":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-39.webp","contentUrl":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2026\/08\/images-39.webp","width":287,"height":175,"caption":"BAS CMMS Integration"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.facilitybot.co\/blog\/how-to-connect-building-automation-systems-bas-to-a-cmms\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.facilitybot.co\/"},{"@type":"ListItem","position":2,"name":"How to Connect Building Automation Systems (BAS) to a CMMS"}]},{"@type":"WebSite","@id":"https:\/\/blog.facilitybot.co\/#website","url":"https:\/\/blog.facilitybot.co\/","name":"FacilityBot - Facilities Management Software","description":"","publisher":{"@id":"https:\/\/blog.facilitybot.co\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.facilitybot.co\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/blog.facilitybot.co\/#organization","name":"FacilityBot - Facilities Management Software","url":"https:\/\/blog.facilitybot.co\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.facilitybot.co\/#\/schema\/logo\/image\/","url":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2025\/03\/fb_logo.png","contentUrl":"https:\/\/blog.facilitybot.co\/wp-content\/uploads\/2025\/03\/fb_logo.png","width":150,"height":38,"caption":"FacilityBot - Facilities Management Software"},"image":{"@id":"https:\/\/blog.facilitybot.co\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/sg.linkedin.com\/company\/facilitybot","https:\/\/www.youtube.com\/channel\/UCFykie6GjYNh4fxv2PIv8mA"]},{"@type":"Person","@id":"https:\/\/blog.facilitybot.co\/#\/schema\/person\/bc5310d8986f7371a33a70124640db83","name":"Anns Ahmad","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d8db3b047d8a61885018b84f5665326f69a9c942cfd42f59eeeca20eeef9cb8b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d8db3b047d8a61885018b84f5665326f69a9c942cfd42f59eeeca20eeef9cb8b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d8db3b047d8a61885018b84f5665326f69a9c942cfd42f59eeeca20eeef9cb8b?s=96&d=mm&r=g","caption":"Anns Ahmad"},"url":"https:\/\/facilitybot.co\/resources\/blog\/author\/anns\/"}]}},"_links":{"self":[{"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/posts\/9797","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/comments?post=9797"}],"version-history":[{"count":1,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/posts\/9797\/revisions"}],"predecessor-version":[{"id":9801,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/posts\/9797\/revisions\/9801"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/media\/9800"}],"wp:attachment":[{"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/media?parent=9797"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/categories?post=9797"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/tags?post=9797"},{"taxonomy":"topics","embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/topics?post=9797"},{"taxonomy":"audiences","embeddable":true,"href":"https:\/\/facilitybot.co\/resources\/wp-json\/wp\/v2\/audiences?post=9797"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}