Skip to content
Contact Us

Compare

How the CAS BACnet Stack compares

37 features across 9 other BACnet stacks: the commercial stacks and the open-source libraries product teams most often weigh. Each column is what that product publishes about itself.

Commercial BACnet stacks

The CAS BACnet Stack and the commercial bacnet stacks, feature by feature
CAS BACnet StackChipkin Automation SystemsBACstacCimetricsBACnet stack | EmbeddedMBS GmbH (CS-Lab); sold through ST as BBACnet StacksoftBACSoftdel
Licensing and support
LicenceCommercial licence, royalty-freeCommercialFalls short: Leasing, library buyout or source buyoutCommercial
No per-device royaltiesNone: ship as many devices as you buildYesFalls short: Not publishedFalls short: Not published
Source code includedThe full source code, with every licenceFalls short: On some editionsFalls short: With the source buyoutFalls short: Not published
Support from the people who maintain itDirect from the engineers who maintain it: consultation, integration help and custom developmentYesMaintenance contracts, pre-testing, custom developmentFalls short: Not published
Languages
Written inC++, behind a flat C interfaceCCFalls short: Not published
C and C++NativeYesYesFalls short: Not published
C# and .NETAdapter includedOn its .NET editionsFalls short: Not publishedFalls short: Not published
JavaAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
PythonAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Node.js and TypeScriptAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
GoAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
RustAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Platforms
Windowsx64, as a static library or DLL ready to linkYesFalls short: Not publishedYes
Linuxx64, x86, ARMv7 and ARM64YesFalls short: Not publishedYes
Microcontrollers, RTOS or bare metalBare metal (no OS), FreeRTOS, TI RTOS and Zephyr, with a lean embedded buildBACstac/32 and uBACstacCortex-M4 class, no OS, Keil RTX or ThreadXBare metal, FreeRTOS, TI RTOS
Zephyr RTOSA ready Zephyr module, verified on an ESP32-S3Falls short: Not publishedFalls short: Not publishedFalls short: Not published
The standard
BACnet protocol revisionRevision 30 by default, configurable from 24Falls short: 28; uBACstac 16Falls short: 26Falls short: 23, with variants at 14 and 19
Edition of the standardANSI/ASHRAE 135-2024Falls short: Not publishedFalls short: Not publishedFalls short: Not published
Device profiles with every required BIBB, published39 device profiles, every required BIBB implementedFalls short: 36 profiles named as supportedFalls short: B-SS, B-SA, B-ASC, B-AAC and moreFalls short: 11 profiles named
BIBBs implemented, published160 BIBBs, each one publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Object types, published61 object types in full, 3 more in partFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Data links
BACnet/IPBuilt inYesYesYes
BBMD and foreign device registrationBuilt inAll editions except uBACstacFalls short: Not publishedYes
BACnet MS/TPBuilt in, over your RS-485 portBACstac/32, BACstac/Linux and uBACstacYesYes
BACnet/SC nodeBuilt in: WebSocket over TLS 1.3All editions except uBACstacYesYes
BACnet/SC hubA full BACnet/SC hub, with an example projectFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Device roles
ServerYesYesYesYes
ClientYesYesFalls short: Not publishedYes
RouterB-RTR, with an example projectAll editions except uBACstacFalls short: Not publishedB-RTR named
GatewayB-GW, with an example projectB-GW namedFalls short: Not publishedB-GW named
Many virtual devices in one processBuilt inFalls short: Not publishedFalls short: Not publishedFalls short: Not published
For your engineers
An example project for each device profileA public example project for every device profileFalls short: Example programsFalls short: Not publishedFalls short: Not published
Ready-to-run example binariesWindows and Linux binaries with every releaseFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Manual and API referenceExtensive documentation that includes every function, callback and constantFalls short: SomeFalls short: A data sheetFalls short: Not published
Unit test suite you can runAn extensive suite that ships in the release packageBACstac/LinuxFalls short: Not publishedFalls short: Not published
Decodes messages to JSON or XMLDecodes every message to JSON or XMLFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Release statusStable, with new versions released regularlyCommercial productCommercial productCommercial product

Open-source BACnet libraries

The CAS BACnet Stack and the open-source bacnet libraries, feature by feature
CAS BACnet StackChipkin Automation Systemsbacnet-stackOpen-source project (C)BACnet4JOpen source (Java), commercial licences from Radix IoTBACnet for .NETOpen source (C#), from the YABE projectBACpypes3Open source (Python)@bacnet-js/clientOpen source (TypeScript), Innovation-Systemrusty-bacnetOpen source (Rust)
Licensing and support
LicenceCommercial licence, royalty-freeFalls short: GPL-2.0-or-later with the GCC exceptionFalls short: GPL-3.0, or a paid commercial licenceMITMITMITMIT
No per-device royaltiesNone: ship as many devices as you buildYesFalls short: Not publishedYesYesYesYes
Source code includedThe full source code, with every licenceYesYesYesYesYesYes
Support from the people who maintain itDirect from the engineers who maintain it: consultation, integration help and custom developmentFalls short: Community: GitHub issues and SourceForgeFalls short: With a paid commercial licenceFalls short: CommunityFalls short: CommunityFalls short: CommunityFalls short: Community
Languages
Written inC++, behind a flat C interfaceCJavaC#PythonTypeScriptRust
C and C++NativeYesFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
C# and .NETAdapter includedFalls short: Not publishedFalls short: Not publishedYesFalls short: Not publishedFalls short: Not publishedFalls short: Not published
JavaAdapter includedFalls short: Not publishedYesFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
PythonAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedYesFalls short: Not publishedYes
Node.js and TypeScriptAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedYesFalls short: Not published
GoAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
RustAdapter includedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedYes
Platforms
Windowsx64, as a static library or DLL ready to linkYesFalls short: Not published.NET Framework 4.8 and .NET 8 and 10Falls short: Not publishedFalls short: Not publishedFalls short: Not published
Linuxx64, x86, ARMv7 and ARM64YesFalls short: Not published.NET 8 and 10Falls short: Not publishedFalls short: Not publishedFalls short: Not published
Microcontrollers, RTOS or bare metalBare metal (no OS), FreeRTOS, TI RTOS and Zephyr, with a lean embedded buildRTOS or bare metal, STM32, AVR and moreFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Zephyr RTOSA ready Zephyr module, verified on an ESP32-S3In a separate repositoryFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
The standard
BACnet protocol revisionRevision 30 by default, configurable from 24Falls short: Not publishedFalls short: 19 in its README, 20 in its 7.0.0 notesFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Edition of the standardANSI/ASHRAE 135-2024Falls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: 135-2020
Device profiles with every required BIBB, published39 device profiles, every required BIBB implementedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
BIBBs implemented, published160 BIBBs, each one publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Object types, published61 object types in full, 3 more in partFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Data links
BACnet/IPBuilt inYesYesYesYesYesYes
BBMD and foreign device registrationBuilt inYesFalls short: Not publishedYesBBMD operationsForeign device registrationYes
BACnet MS/TPBuilt in, over your RS-485 portYesYesYesFalls short: Not publishedFalls short: Not publishedFalls short: Standard frames, tested on a simulator
BACnet/SC nodeBuilt in: WebSocket over TLS 1.3YesFrom version 7.0.0Falls short: Not publishedFalls short: Not publishedFalls short: Not publishedYes
BACnet/SC hubA full BACnet/SC hub, with an example projectFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedYes
Device roles
ServerYesYesFalls short: Not publishedYesYesFalls short: Not publishedYes
ClientYesYesFalls short: Not publishedYesYesYesYes
RouterB-RTR, with an example projectYesFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedYes
GatewayB-GW, with an example projectYesFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Many virtual devices in one processBuilt inFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
For your engineers
An example project for each device profileA public example project for every device profileFalls short: Demo applicationsFalls short: Not publishedFalls short: An examples folderFalls short: SamplesFalls short: An examples folderFalls short: Not published
Ready-to-run example binariesWindows and Linux binaries with every releaseFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Manual and API referenceExtensive documentation that includes every function, callback and constantFalls short: A doc folderFalls short: Not publishedFalls short: Not publishedYesYesFalls short: Not published
Unit test suite you can runAn extensive suite that ships in the release packageYesFalls short: Not publishedYesFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Decodes messages to JSON or XMLDecodes every message to JSON or XMLFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not publishedFalls short: Not published
Release statusStable, with new versions released regularlyActiveFalls short: Version 6.0.1, November 2024Version 4.0.0, July 2026Falls short: Version 0.0.108, before 1.0Version 3.3.2, May 2026Falls short: Version 0.12.0, before 1.0

Contact us

Weighing stacks for a product?

Tell Chipkin your platform, your device profile and the data link you need, and an engineer will show you how the CAS BACnet Stack covers it.

  • Consultation: talk directly with BACnet specialists about your project.
  • Run an example: every profile example project publishes a Windows and a Linux binary.