| Overview

CCU, the aggregator of 75F devices' data to the 75F cloud, is now also a BACnet server, aggregating the 75F device's data, and serving a BACnet BMS/ explorer.

A step further in the vision towards platform play and interoperability, CCU can now coexist in a BACnet network, aggregating 75F device data using the 75F profiles.

This support is backed by the introduction of BACapp, a BACnet protocol-supporting application.

| BACapp Overview

BACapp is a powerful utility app designed to integrate with CCU seamlessly. Its enhanced capability provides efficient communication with BACnet devices. Built with simplicity and reliability, BACapp operates in the background.

The BACapp is initiated via a configurable section in CCU, where the configuration details are entered.

| Key Features

  • Effortless Integration: BACapp is a robust bridge, enabling CCU to communicate effectively with BACnet devices. BACapp ensures that data exchange between CCU and BACnet devices occurs smoothly and without any hiccups.
  • Silent Operation: Unlike traditional apps, BACapp operates silently, with no user interface or intrusive notifications. It remains inconspicuous in the background, diligently performing its designated tasks without disrupting the user experience.
  • User-Initiated Initialization: To get started with BACapp, the user can access a configurable section within CCU, where they can input the necessary field configuration details for establishing the connection with BACnet devices.
  • Stability and Reliability: BACapp has been engineered to uphold the highest standards of stability and reliability. It continually monitors the connection between CCU and BACnet devices, ensuring a robust and uninterrupted data flow.
  • Optimized Performance: With a focus on efficiency, BACapp is optimized to minimize resource consumption while maximizing performance. It operates efficiently in the background, preserving battery life and device responsiveness.
  • Security Measures: BACapp prioritizes data security and employs industry-standard encryption protocols to safeguard the communication between CCU and BACnet devices. 

| Prerequisites 

  • Update the CCU to version 2.10.2 or above.
  • Permit the app to access various aspects, like any other app on the pop-ups for the app to work seamlessly.


Note: Only the above-mentioned versions could support a BACapp to favor the server support for BACnet BMS. 

It is in this version the object instances and tagging for the haystack points are hardcoded, that can be used by a BACnet BMS.

| Installation

Remote Installation

To remotely install the BACapp,

  • Access the system widget screen from the heatmap page.
  • Select update BACapp from the list under the remote command drop-down as below.

  • Use the command with the latest version details of the BACapp, and execute the command.

You can also trigger the remote installation for BACapp from the tuner section of the internal portal as below.

Note: From the tuners section you can remotely install the BACapp for multiple CCUs at a time.


Note: For fresh installation of BACapp in a CCU, pop-ups requesting permission for various levels of access, like any other app are displayed, for the user to confirm, for the app to start working,

OnPrem Installation 

To install BACapp on premises

  • Download the .apk version for the BACapp
  • Place the .apk file in a folder
  • Run the following remote commands to install.
    • adb devices

    • adb shell mount -o rw,remount /system

    • adb install "file location" [eg: "C:\Users\Mahalingam Chandrasekhar\Downloads\BacApp_Beta_v2.1.10.2.apk"]

| Configuration

 To configure CCU as a BACnet server, and define the settings for the BACapp

  • Navigate to the communication setting screen in CCU.

  • Scroll to the BACnet Config section to locate the configuration options.

  • Use the table below to set the required configuration.
Field Description Entry
IP device Object name Auto populates with the building/site name the CCU is registered under. NA
Zone to Virtual Device Mapping

A toggle to switch between viewing a flattened hierarchy, or a hierarchy as per the zone structure in the building.

Note: Every time there is a need to enable or disable the toggle, the user needs to stop the BACnet initialization and reinitialize for the changes to take effect.

Enable/ Disable
Description You can use this to provide more information, about the site or the controls installed.  Any string
Location You can use this to provide location details of the server or device. Any string
Device Password

You can use this to set up a password for the device.

Note: Useful for servers configured as BBMD/ Foreign Device. 

Alphanumeric combination 
IP Address Populate with the CCU's IP address NA
Local Network Number Filed property to provide a local network number within a predefined range 1 to 65535
Virtual Network Number

Filed property to provide a virtual network number within a predefined range

Note: The virtual network number should always be a different one from the local network number.

1 to 65535

Field property to provide the port number, within a predefined range

Note: The default is set to 47808

47808 to 47823
IP device Instance Number

This is by Default the CM pairing address, but you can also use this to provide a desired number within a predefined range.

0 to 4194302
APDU Timeout

You can use this to provide an appropriate APDU Timeout.

Note: It is crucial to ensure that communication between devices is reliable and timely. (If the timeout is too short, it may result in frequent communication failures and retries, leading to performance issues. On the other hand, if the timeout is too long, it may cause unnecessary delays in the system's response time.)

Note: The default is set to 6000

6000 to 65535
Number of APDU Retries You can use this to provide an appropriate APDU retry number, that indicates the number of retries data units are permitted. 0 to 255
APDU Segment Timeout

You can use this to provide an appropriate APDU segment timeout, that indicates the amount of time in milliseconds between the retransmission of an APDU segment.

Note: The default is set to 5000

5000 to 65535
Notification Class Objects You can use this to provide an appropriate Notification Class Object Number, that indicates the number of Alarms or alerts planned for the server malfunctioning. 0 to 10
Trend Log Objects You can use this to provide the required Trend Log Multiple for the gateway. 0 to 10
Schedule Objects You can use this to provide the required number for a schedule object for the gateway, that indicates network visible representation of a time-based series of events. 0 to 10
Offset Value (%)

BACnet mandates low limit and high limit for alerts in an analog type point. Since Haystack doesn’t contain tags to define the low limits and high limits, an offset percentage tag is used to set the values for low limits and high limits which are derived from the corresponding minimum value and maximum value.

1 to 99%


Configure As
Field Description
BBMD To configure the server or gateway as the one, that bridges multiple networks. 
Foreign Device

To configure the server or gateway as the one, that has an IP address different from those comprising the BACnet/IP network which the device seeks to join. 

Note: FD type of config will be supported with a table in the future implementation for need more information

Neither not to configure the server or gateway as any of the above, Do we have a name for this type of configuration?

| Initialization

After the user has provided the necessary configuration details,

  • Click Initialize BACnet to initialize the BACapp.

Once the BACnet is initialized BACapp screen comes to the forefront as below.


And a toast message displays a message that the BACapp is started as below.

pop up.png

BACapp is initialized and begins its background operations to facilitate seamless communication with BACnet devices.

Note: For any further changes to the configuration, users will have to disable BACnet from the configuration screen, make necessary changes, and reinitialize BACnet to include the modifications.

| Profile Configuration

Once BACapp is installed and the CCU is initialized as a BACnet server, all of the 75F-supported edge devices with corresponding terminal profiles (For now all terminal profiles except Smartstat and PI profiles) can be utilized by the BACnet-based BMS.

Once an edge device is used with a terminal profile, all the points instantiated are available and exposed as objects and devices over the BACnet for the BACnet BMS to poll for data.

Note: If the edge devices are paired already with the CCU, the devices will have to re-paired to accommodate the effects of the CCU version 1.642.6 and the BACapp installed.

| Object Instance Tagging

Favoring the above possibility, once a profile is paired, after a CCU is initialized as a BACnet server, the points created would come with a BACnet tag, to ease the detection, and points inclusion for surveying and broadcasting data by the BACnet-based BMS.

| Visualizing in BACnet Explorer 

Note: Any BACnet explorer can be used to visualize the objects. In this case, we have used the YABE (Yet Another BACnet Explorer) which is a graphical program to explore and visualize BACnet devices.

  • Access the BACnet explorer.

  • Click the Add device    icon to add CCU to the explorer.

The BACnet communication channel window displays.

  • Use the drop-down to select the system IP address as the local endpoint.
  • Click the Start button to initiate the communication.

The network access request window displays requesting for the access.

  • Click allow access the proceed.

The CCU is added to the explorer with the CM pairing address, IP address, and port as the extension of its name. 


  • Click on the device to visualize the actual details of the device as per the 75F standard nomenclature, with the building name, CCU name, and pairing address.

You can also visualize the objects/ points that come with the device with their generic names.

Note: The object ID of the BACnet objects is usually the pairing address of the device, followed by the BACnet ID of the object instantiated.

  • Click all the points or use the down arrow button from the keyboard to access all the points.

The points display their actual names, with the building name, and point name as shown above.

| Hierarchy Based on the Zones Structure in the Building

To switch the hierarchy of the devices displayed in the explorer, 

  • Close the explorer.
  • Disable BACnet.

  • Enable the toggle for the Zone to Virtual Device Mapping.

  • Intialize the BACnet again.
  • Wait for the BACapp to open in the foreground.
  • Wait for the BACapp started message.
  • Open the BACnet Explorer again.
  • Repeat the steps to add the device again.

The devices are added as separate virtual devices in the explorer.

  • Click on the devices to visualize the actual details of the devices as per the 75F standard nomenclature, with the building name, CCU name, and pairing address for the CCU, the zone names for the edge devices.

  • Click a particular device to visualize the objects/ points corresponding to it.

  • Click all the points or use the down arrow button from the keyboard to access all the points.

The points display their actual names, with the building name, and point name.

Note: The devices and objects displaying the generic names prior to the click, is a known issue with the YABE. With other BACnet explorers, this might not be the case.

The actual names of the devices and points will be displayed from the time the device is added.

| Object Details

  • Click on an object to visualize the object details.

  • Scroll to the end of the object list for a device to locate the Mutli state value type objects, as below.

  • Click on a multi-state value object to visualize the name & details of the object.

| Setting New Value to the MSV object

You can visualize the existing value for an MSV object as below.

  • Click the state text drop-down to visualize the value applicable to the object.

  • Type the required value in the present value section of the object details as below, and press Enter to confirm the change.

Example: To set the fan operating mode to Auto




Please sign in to leave a comment.

Was this article helpful?

0 out of 0 found this helpful
Powered by Zendesk