Search code examples
volttron

volttron BACnet discovery not all points coming through


I am trying to scrape a BACnet device where I noticed not all of the points are being captured on scripts/bacnet/grab_bacnet_config.py

In the screenshot below of the BACnet scanner tool these are the BO's that dont come through:

enter image description here

Any ideas to try?

If I do a vctl config edit platform.driver registry_configs/1100.csv everything seems to be captured but BACnet Binary Outputs (BO's):

Duct Static Pressure Local,Duct Static Pressure Local,inchesOfWater,-5.02 to 5.02,analogInput,presentValue,FALSE,5,,
Control Cabinet Space Temperature,Control Cabinet Space Temperature,degreesFahrenheit,-58.00 to 482.00,analogInput,presentValue,FALSE,6,,
config: operation timed out,IT Closet Space Temperature,degreesFahrenheit,-58.00 to 482.00,analogInput,presentValue,FALSE,7,,
Return Air Humidity Local,R(volttron) volttron@volttron:/var/lib/volttron$ 00,analogInput,presentValue,FALSE,8,,
Outdoor Air Relative Humidity Local,Outdoor Air Relative Humidity Local,percent,-150.00 to 150.00,analogInput,presentValue,FALSE,9,,
Supply Fan Speed Command,Supply Fan Speed Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,FALSE,1,,
Return Fan Speed Output Command,Return Fan Speed Output Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,FALSE,2,,
Outdoor Air Damper Command,Outdoor Air Damper Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,TRUE,3,8,
ERU Supply Damper Command,ERU Supply Damper Command,percent,-150.00 to 150.00 (default 0.0),analogOutput,presentValue,FALSE,4,,
Return Fan offset,Return Fan offset,percent,-150.00 to 150.00 (default 15.0),analogValue,presentValue,FALSE,1,,
Supply Fan P-Gain,Supply Fan P-Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,2,,
Duct Static Pressure Setpoint BAS,Duct Static Pressure Setpoint BAS,inchesOfWater,-5.02 to 5.02 (default 1.0),analogValue,presentValue,FALSE,3,,
Discharge Air Cooling Setpoint BAS,Discharge Air Cooling Setpoint BAS,degreesFahrenheit,-58.00 to 482.00 (default 60.0),analogValue,presentValue,FALSE,4,,
Cooling Capacity Status,Cooling Capacity Status,percent,-150.00 to 150.00 (default 0.0),analogValue,presentValue,FALSE,5,,
Economizer Minimum Position Setpoint BAS,Economizer Minimum Position Setpoint BAS,percent,-150.00 to 150.00 (default 10.0),analogValue,presentValue,FALSE,6>
Economizer Outdoor Air Enable Setpoint BAS,Economizer Outdoor Air Enable Setpoint BAS,degreesFahrenheit,-58.00 to 482.00 (default 55.0),analogValue,present>
Outdoor Air Temperature BAS,Outdoor Air Temperature BAS,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,8,,
Outdoor Air Temperature Active,Outdoor Air Temperature Active,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,9,,
Space Temperature BAS,Space Temperature BAS,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,10,,
Space Temperature Active,Space Temperature Active,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,11,,
Discharge Air Temperature Setpoint Active,Discharge Air Temperature Setpoint Active,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentVal>Discharge Air Temperature,Discharge Air Temperature,degreesFahrenheit,-58.00 to 482.00 (default 0.0),analogValue,presentValue,FALSE,13,,
Cooling P Gain,Cooling P Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,14,,
Duct Static Pressure Setpoint Active,Duct Static Pressure Setpoint Active,inchesOfWater,-5.02 to 5.02 (default 0.0),analogValue,presentValue,FALSE,15,,
Econoomizer P Gain,Econoomizer P Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,16,,
Warmup Terminate Setpoint,Warmup Terminate Setpoint,degreesFahrenheit,-58.00 to 482.00 (default 70.0),analogValue,presentValue,FALSE,17,,Warmup will Initia>
Heating Capacity Primary Status,Heating Capacity Primary Status,percent,-150.00 to 150.00 (default 0.0),analogValue,presentValue,FALSE,18,,
Heating P-Gain,Heating P-Gain,noUnits,-1000.00 to 1000.00 (default 2.0),analogValue,presentValue,FALSE,19,,
Discharge Air Heating Setpoint BAS,Discharge Air Heating Setpoint BAS,degreesFahrenheit,-58.00 to 482.00 (default 100.0),analogValue,presentValue,FALSE,20,,
Outdoor Air Enthalpy Active,Outdoor Air Enthalpy Active,btusPerPoundDryAir,-98.90 to 98.90 (default 0.0),analogValue,presentValue,FALSE,21,,
Return Air Enthalpy Active,Return Air Enthalpy Active,btusPerPoundDryAir,-98.90 to 98.90 (default 0.0),analogValue,presentValue,FALSE,22,,
Occupancy Request,Occupancy Request,State,State count: 5 (default 1),multiStateValue,presentValue,TRUE,1,8,"1=Unoccupied, 2=Occupied Bypass, 3=Occupied Sta>
Occupancy Status,Occupancy Status,State,State count: 5 (default 1),multiStateValue,presentValue,FALSE,2,,"1=Unoccupied, 2=Occupied Bypass, 3=Occupied Stand>
Economizer Airside Enable BAS,Economizer Airside Enable BAS,State,State count: 2 (default 1),multiStateValue,presentValue,FALSE,3,,1=Enabled

EDIT JUNE 2022 Still an issue with the HVAC rooftop unit I am dealing, I put in a github issue here: https://github.com/VOLTTRON/volttron/issues/2976


Solution

  • @HenryHub I ran scripts/bacnet/grab_bacnet_config.py on my BACnet device and was able to get a point that is a binaryOutput. Below is a snippet of the registry csv file that was generated from the script. Note that the first line contains the headers. I add this as a reference. In your case, what would be an example of a binaryOutput register? In other words, if the script were able to capture your binaryOutputs, what should it look like?

    Without knowing the details of the device that you're targeting and since you have direct access to your device, I'd recommend manually writing one binaryOutput and add it to your registry csv file; then see if Volttron can scrape that binaryOutput point. This would do things: 1) If the point can be read, then this suggests that the grab_bacnet_config.py is not working as expected and 2) If the point can't be read, then it might suggest that your device is not allowing access to binaryOutput for some unknown reason. Or it could be related to @DennisVM-D2i's comment above. BTW, I have heard another Volttron user experiencing this same problem; so you are not the only one.

    Example of binary output in the registry file:

    Reference Point Name,Volttron Point Name,Units,Unit Details,BACnet Object Type,Property,Writable,Index,Write Priority,Notes
    3820a/Field Bus.3820A-AHU.SF-C,3820a/Field Bus.3820A-AHU.SF-C,Enum,0-1 (default 0),binaryOutput,presentValue,FALSE,3000034,,Supply Fan Command