BACstac/Linux with Source Code (B1100)
BACstac/Linux is a full-featured, source-code BACnet protocol stack for Linux systems. Designed for embedded, single-board, and server-class devices, it supports BACnet/IP, IPv6, MS/TP, and BACnet/SC, along with routing and gateway capabilities, and is fully compliant with BACnet Protocol Revision 24.
Product Highlights
* Full C-language source code with example programs, unit tests, and makefiles
* Supports BACnet routing and creation of multi-device gateways
Compliant with BACnet Revision 24 (2016) and 2020 addenda
* Broad network layer support, including BACnet/SC, BACnet/IP (IPv4 & IPv6), BACnet Ethernet, and MS/TP
* Supports all standard BACnet object types and services (with noted exclusions)
* Scalable for large projects with high device counts and diverse network types
* Secure design with BACnet/SC support for encrypted communications
Description
Develop BACnet-Compliant Applications for Linux Faster, Smarter, and at Scale
The Trusted BACnet Stack for Linux Developers
BACstac/Linux from Cimetrics (Cimetrics B1100) is a full-featured BACnet protocol stack and development toolkit designed to streamline the creation of BACnet-compliant products and applications on Linux systems. Whether you’re targeting high-performance servers or resource-constrained embedded devices, BACstac/Linux saves man-years of engineering effort by handling the complexities of BACnet—so you don’t have to.
Developed by Cimetrics, a founding member of the BACnet community, BACstac is the backbone of hundreds of BTL-listed products used by top-tier global OEMs.
Why BACstac/Linux?
Implementing the BACnet standard is notoriously complex, requiring domain expertise far beyond traditional IT protocols. The BACnet spec spans over 1,300 pages, and keeping pace with revisions, addenda, and compliance tests is an ongoing challenge.
That’s why even the largest building automation companies—like Honeywell, Siemens, LG, and Mitsubishi—rely on Cimetrics BACstac.
BACstac/Linux – Key Features
-
Supports BACnet Protocol Revision 24
-
Includes full C-language source code
-
Supports BACnet routing + multi-device gateways
-
Ready for Linux 2.6.23+ on x86, ARM, and embedded targets
-
Packages available for Ubuntu 20.04/22.04/24.04 and Debian 11/12
-
Addendum Support: 2020cn, 2020bx (client-only), 2020cj (client-only)
-
Secure, field-proven codebase trusted in global commercial products
Supported BACnet Data Links
-
BACnet/IP (IPv4 & IPv6) Foreign Device & BBMD support
-
BACnet/SC (BACnet Secure Connect over IPv6 with TLS)
-
BACnet over Ethernet
-
MS/TP (Master-Slave/Token-Passing serial link)
Supported BACnet Profiles (Revision 24)
BACstac/Linux supports all required functionality for the following BACnet profiles:
-
Controllers: B-AAC, B-AACC, B-AACWS, B-ACDC, B-ACSD, B-ASC
-
Client & Workstation: B-ACC, B-ACCR, B-ACWS, B-AEC, B-AEWS, B-ALCS, B-ALSC, B-ALSWS, B-ALWS, B-AWS, B-OWS, B-XAWS
-
Gateways & Devices: B-BBMD, B-GW, B-RTR, B-OD, B-SA, B-SS
-
Logging, Scheduling, and Access Control: B-LCS, B-LD, B-LOD, B-LS, B-LSAP, B-LSC, B-LSWS, B-EWS, B-BC, B-EC, B-ED, B-EM, B-SCHUB
Supported BACnet Object Types
BACstac v7.10 supports all common and extended BACnet object types:
-
Analog: Analog Input, Analog Output, Analog Value, Large Analog Value
-
Binary: Binary Input, Binary Output, Binary Value, Binary Lighting Output
-
Multistate: Multi-state Input, Multi-state Output, Multi-state Value
-
Logging & Scheduling: Averaging, Calendar, Schedule, Trend Log, Trend Log Multiple, Event Log
-
Event & Notification: Event Enrollment, Notification Class, Alert Enrollment, Audit Log, Audit Reporting, Notification Forwarder
-
Access Control: Access Door, Access Point, Access Zone, Access User, Access Rights, Access Credential, Credential Data Input
-
Specialized: Program, Command, Load Control, Structured View, Global Group, Life Safety Point, Life Safety Zone, Network Port, Network Security
-
Advanced Value Types: CharacterString Value, BitString Value, OctetString Value, Integer Value, Positive Integer Value, Time Value, Date Value, DateTime Value, DateTime Pattern Value, Time Pattern Value, Date Pattern Value
-
Other Devices: Elevator, Elevator Group, Escalator, Escalator Group, Lift, Accumulator, Channel, Lighting Output, Timer, Staging
Supported BACnet Services
Alarm & Event Services
-
Acknowledge-Alarm
-
Confirmed-COV-Notification
-
Confirmed-COV-Notification-Multiple
-
Confirmed-Event-Notification
-
Get-Alarm-Summary
-
Get-Enrollment-Summary
-
Get-Event-Information
-
Subscribe-COV
-
Subscribe-COV-Property
-
Subscribe-COV-Property-Multiple
-
Life-Safety-Operation
-
Confirmed-Audit-Notification
-
Unconfirmed-Audit-Notifications
-
Audit-Log-Query
-
Unconfirmed-Event-Notification
-
Unconfirmed-COV-Notification
-
Unconfirmed-COV-Notification-Multiple
File Access Services
-
Atomic-Read-File
-
Atomic-Write-File
Object Access Services
-
Read-Property
-
Read-Property-Multiple
-
Read-Range
-
Write-Property
-
Write-Property-Multiple
-
Add-List-Element
-
Remove-List-Element
-
Create-Object
-
Delete-Object
Remote Device Management Services
-
Reinitialize-Device
-
Device-Communication-Control
-
Confirmed-Private-Transfer
-
Confirmed-Text-Message
Unconfirmed Services
-
I-Am, I-Have, Who-Is, Who-Has, Who-Am-I, You-Are
-
Unconfirmed-Private-Transfer
-
Unconfirmed-Text-Message
-
Time-Synchronization
-
UTC-Time-Synchronization
-
Write-Group
What’s Included
-
Full C Source Code
-
Example Programs
-
Unit Tests
-
Makefiles for Build Automation
-
Documentation: User’s Guide & Programmer’s Reference
Secure Development & BTL Support
-
✔️ Developed using ISA/IEC 62443 secure development lifecycle
-
✔️ Built-in support for BACnet/SC (Secure Connect) with TLS
-
✔️ Technical assistance available during BTL certification testing (for customers on paid support)
Platform & OS Support
-
Linux Kernel 2.6.23+, glibc 2.12+, GCC 4.1+
-
Supports x86_64, ARM, and embedded Linux platforms
-
Tested packages for:
-
Debian 11, 12
-
Ubuntu 20.04, 22.04, 24.04
-
-
Source package included for porting to other distributions
Ideal For
-
Developers building BACnet devices or applications on Linux
-
Embedded system integrators targeting single-board computers or controllers
-
Companies developing secure BACnet gateways, routers, or servers
-
OEMs requiring full source code control and flexibility
Compare with Other BACstac Editions
| Feature | BACstac/Linux | BACstac/Win (B1091) | BACstac/Win (B1061) |
|---|---|---|---|
| Source Code | ✅ | ✅ | ❌ |
| Platform | Linux | Windows | Windows |
| Routing Support | ✅ | ✅ | ❌ |
| Gateway Creation | ✅ | ✅ | ❌ |
| Ideal For | Embedded & Linux Devices | Advanced Windows Apps | Single-device Windows Apps |
For more BACstac products check out this page.
Join the Global BACnet Community
Over 1,000 manufacturers—including Siemens, Honeywell, LG, Trane, Mitsubishi, and Samsung—trust the Cimetrics BACstac to power their BACnet-enabled products.
Software
| Supported Platform | Linux 2.6.23 or later, glibc 2.12 or later, GCC 4.1 or later |
| Source Code | Full C-language source code included, along with example programs, unit tests, and makefiles |
| BACnet Routing | Supported; enables multi-device gateway creation |
| BACnet Compliance | BACnet Revision 24 (2016) with Addendum 2020 (cn, bx client-only, cj client-only) |
| Unsupported Features | Virtual Terminal, DM-SP-B, BACnet/WS |
| Network Support | BACnet/SC, BACnet/IP (IPv4 & IPv6), BACnet Ethernet, MS/TP |
| Object & Services | All standard BACnet 2016 object types and services (except exclusions) |

