Tel: +1-617-350-7550


BACstac/32 - BACnet protocol stack for 32-bit embedded controllers (B1140)

This product is only available upon request. Contact us for a quote.

  • The Cimetrics BACstac (BACnet protocol stack) saves man-years of development when your company needs to create a BACnet solution for a 32-bit and 64-bit embedded platform.

    Implementation of the BACnet standard is a challenging assignment for even the most skilled computer programmers.  The differences between BACnet and traditional IT protocols can lead to a significant learning curve when starting from scratch.

    Our software team has created a set of BACnet libraries that greatly simplify the task of creating BACnet-compliant products.  Even the largest companies in the HVAC industry use our code because it is a very complex and time-consuming task keeping up with the ongoing changes that are taking place in the BACnet standard.  Numerous BACstac-based products are now BTL listed.

  • BACstac Comparison Chart:

    BACstac Comparison Chart


    This is a BACnet protocol stack, a BACnet development kit designed for the creation of BACnet-compliant applications that run on 32-bit and 64-bit embedded platforms. Complete C-language source code is included.  The customer is responsible for porting the BACnet software to the target platform.

    BACstac 7.5 supports all required functionality of BACnet 2016 (protocol revision 19) for all BACnet profiles. Support of IPv6 (ANNEX U).

    New! Support of the BACnet Secure Connect (BACnet/SC) data link for Windows and Linux only.

    Most optional functionality of BACnet 2016 is also supported with the following exceptions:

    - Network Security (Chapter 24)*.
    - Virtual Terminal services.
    - Slave Proxy functionality.
    - BACnet/WS (ANNEX N).

    * Network Security has been removed in BACnet 2020

    This release has added a simplified configuration of B/IP and B/IPv6 with BDT.

    Supports following profiles: B-XAWS, B-AWS, B-OWS,
    B-ACDC, and B-ACCR.

    Data links: BACnet/SC, BACnet/IP with Foreign Device and BBMD support, BACnet/IPv6 with Foreign Device and BBMD support Ethernet (IEEE 802.3), MS/TP, PTP.

    BACnet routing: This product supports BACnet routing functionality and the creation of multi-device gateways.

    Operating system requirements: The target platform must support threads (tasks), semaphores, recursive mutexes, dynamic memory allocation, time, persistent storage (for configuration data), and the required network interfaces; please refer to the Porting Guide for more information. BACstac 7.5 has been verified on Debian GNU/Linux 10 (Buster), Ubuntu 18.04 (Bionic), Ubuntu 20.04 (Focal), STM32F7 (ARM Cortex M7 + FreeRTOS + LWIP). For lower-end ARM Cortex M microprocessors (M0 to M4) suggest using uBACstac.

    Development tools: For Linux-based target platforms, supported development environments are gcc version4.1 or later, Perl 5.6 or later (5.8 is recommended). 
    BACstac/32 is good for Cortex M7. ARM Cortex family includes a very powerful Cortex-A series, which runs Linux and are perfectly supported by both BACstac/32 and BACstac/Linux.

    Code provided: Example programs, unit tests, makefiles for both, and complete C-language source code.

    Documentation provided: User's Guide, Porting Guide, and Programmers Reference.

    Customers that want to develop a BACnet-compliant device that will run on Microsoft Windows should also consider the B1091 BACnet Software for Windows (source code).

    * NOTE: BACstac v7.5 supports all BACnet 2016 object types: Analog Input, Analog Output, Analog Value, Averaging, Binary Input, Binary Output, Binary Value, Calendar, Command, Device, Escalator Group, Elevator-Group, Event Enrollment, File, Group, Life Safety Point, Life Safety Zone, Lift, Loop, Multi-state Input, Multi-state Output, Multi-state Value, Notification Class, Program, Pulse Converter, Schedule, Trend Log, Access Door, Event Log, Load Control, Structured View, Trend Log Multiple, Access Point, Access Zone, Access User, Access Rights, Access Credential, Credential Data Input, CharacterString Value, DateTime Value, Large Analog Value, BitString Value, OctetString Value, Time Value, Integer Value, Positive Integer Value, Date Value, DateTime Pattern Value, Time Pattern Value, Date Pattern Value, Network Security, Global Group, Notification Forwarder, Alert Enrollment, Channel, Lighting Output, Binary Lighting Output, Network Port, Elevator Group, Lift, Escalator, Accumulator, Network Security, Timer.

    Services supported: 
    Alarm and Event Services - Acknowledge-Alarm, Confirmed-Cov-Notification, Confirmed-Cov-Notification-Multiple, Confirmed-Event-Notification, Get-Alarm-Summary, Get-Enrollment-Summary, Get-Event-Information, Life-Safety-Operation, Subscribe-Cov, Subscribe-Cov-Property, Subscribe-Cov-Property-Multiple,
    File Access Services - Atomic-Read-File, Atomic-Write-File,
    Object Access Services - Add-List-Element, Remove-List-Element, Create-Object, Delete-Object, Read-Property, Read-Property-Multiple, Read-Range, Write-Property, Write-Property-Multiple,
    Remote Device Management Services - Device-Communication-Control, Confirmed-Private-Transfer, Confirmed-Text-Message, Reinitialize-Device,
    Unconfirmed Services - I-Am, I-Have, Unconfirmed-Cov-Notification, Unconfirmed-Event-Notification, Unconfirmed-Private-Transfer, Unconfirmed-Text-Message, Time-Synchronization, Who-Has, Who-Is, Utc-Time-Synchronization, Write-Group, Unconfirmed-Cov-Notification-Multiple 

  • Join the BACnet Global Community!

    BACnet Protocol Stack

    More than 1000 manufacturers are registered members of the BACnet community.  This group includes prestigious companies like Siemens, Honeywell, Secom, JVCTrane, KMC Controls, LG ElectronicsPriva, Loytec, Matsushita, Matrikon, Mitsubishi, Samsung, Sauter, Trend, Wago, and many more.

    ALL of these companies mentioned using the Cimetrics BACstac!

    Use the BACstac to create BACnet-compliant products for HVAC control, lighting control, physical access control and alarm systems.

  • The following documents are available to customers upon request:

    Programmers Reference for all versions


    Product Q&A

    Ask a Question
    Q: Any road map to have security implementation n stack.

    A: Hello, We have not and will not be implementing BACnet Security addenda (addendum g).

    Q: Is this product is compatible with STM32F0 microcontrollers ARM Cortex - M0. Thanks!

    A: For ARM Cortex we would recommend our BACnet Protocol stack for small devices - uBACstac.