Skip to content
Patrick Grimm edited this page Apr 6, 2017 · 18 revisions

Dep:

  • libubox
git clone git://nbd.name/luci2/libubox.git
cd libubox/; cmake -D BUILD_LUA:BOOL=OFF .;make
sudo make install
  • uci
git clone git://nbd.name/uci.git
cd uci/; cmake -D BUILD_LUA:BOOL=OFF .;make
sudo make install
  • bacnet-stack
git clone https://github.com/stargieg/bacnet-stack.git

Linux:

make clean;make BUILD=debug BACNET_PORT=linux BACDL_DEFINE=-DBACDL_BIP=1 BACNET_DEFINES=" -DPRINT_ENABLED=1 -DINTRINSIC_REPORTING -DBACFILE -DBACAPP_ALL"

MAC OS X with ports:

make BACNET_PORT=bsd BUILD=debug "BACDL_DEFINE=-DBACDL_BIP=1" \
BACNET_DEFINES="-I/opt/local/include -DBAC_UCI -DPRINT_ENABLED=1 -DBACAPP_ALL \
-DBACFILE -DINTRINSIC_REPORTING -DMAX_NOTIFICATION_CLASSES=10 -DMSV \
-DMAX_MULTI_STATE_VALUES=128" UCI_LIB_DIR=/usr/local/lib \
UCI_INCLUDE_DIR=/usr/local/include server
  • Make Flags

  • BACNET_DEFINES:

-DBAC_ROUTING -DPRINT_ENABLED=1 -DBACAPP_ALL -DBACFILE -DINTRINSIC_REPORTING

  • BACDL_DEFINE:

-DBACDL_ETHERNET=1 -DBACDL_ARCNET=1 -DBACDL_MSTP=1 -DBACDL_BIP=1

  • BBMD_DEFINE:

-DBBMD_ENABLED=1 -DBBMD_ENABLED=0 -DBBMD_CLIENT_ENABLED

BACNET_PORT = arm7 at91sam7s atmega168 atmega8 bdk-atxx4-mstp bsd dos linux lwip pic18f6720 rtos32 rx62n stm32f10x win32

  • Configure
  • create uci configuration dir /etc/config
  • create a device instance configuration /etc/config/bacnet_dev
config dev '0'
	option description 'Openwrt Router'
	option modelname 'Openwrt Router'
	option location 'Europe'
	option app_ver '12.09'
	option name 'openwrt-router-bip'
	option id '4711'
	option port '47808'
	option net '0'
	option iface 'lan'
	option bacdl 'bip'

config dev '1'
	option description 'Openwrt Router'
	option modelname 'Openwrt Router'
	option location 'Europe'
	option app_ver '12.09'
	option name 'openwrt-router-ethernet'
	option id '4712'
	option net '0'
	option iface 'lan'
	option bacdl 'ethernet'
  • create a Notification Class configuration /etc/config/bacnet_nc
config nc 'default'
	option description 'Notification Class default'
	option name 'Notification Class'
	option group 'ZF'

config nc '0'
	option description 'Network Monitoring'
	option name 'Komunikationfehler'
	option group 'ZF'
	list recipient '65535'
	list recipient '1,104.13.8.92:47808'

config nc '1'
	option description 'Modbus Sensor Fehler'
	option name 'Sensor Fehler'
	option group 'ZF'
	list recipient '65535'
	list recipient '1,104.13.8.92:47808'
  • create a Trendlog configuration /etc/config/bacnet_tl
config tl 'default'
	option description 'Analog Value'
	option nc '1'
	option interval '300'
	option device_type 8
	option object_type 2


config tl '0'
	option object_instance '0'
	option interval '10'

config tl '1'
	option object_instance '1'
  • create a Analog Value configuration /etc/config/bacnet_av
config av 'default'
	option si_unit '98'
	option description 'Analog Value'
	option nc '1'
	option event '7'
	option limit '3'
	option high_limit '40'
	option low_limit '0'
	option dead_limit '0'
	option cov_increment '0.1'
	option value '23.8'

config av '0'
	option pgroup 'ZF_EZR08'
	option name 'R801_RT'
	option description 'Raumtemperatur'
	option addr '1'
	option tagname 'modbus-s1'
	option si_unit '62'
	option dead_limit '0.5'
	option cov_increment '0.2'
	option resolution 'doublefloat'
	option value '0.000000'
	option Out_Of_Service '0'
	option value_time '1384274334'

config av '1'
	option pgroup 'ZF_EZR08'
	option name 'R802_RT'
	option description 'Raumtemperatur'
	option tagname 'modbus-s1'
	option si_unit '62'
	option resolution 'doublefloat'
	option addr '3'
	option value '0.000000'
	option Out_Of_Service '0'
	option value_time '1384274334'
  • create a Multistate Value configuration /etc/config/bacnet_mv
config mv 'default'
	list state 'up'
	list state 'down'
	list state 'unreachable'
	list state 'flaping'
	list alarmstate 'down'
	list alarmstate 'unreachable'
	list alarmstate 'flaping'
	option description 'Multi State Value'
	option nc '1'
	option event '7'

config mv '0'
	option name 'TR_EZR00_SV01'
	option value '1'
	option description '192.168.100.29'

config mv '1'
	option name 'TR_EZR01_SV01'
	option value '1'
	option description '192.168.100.30'
  • create a Binary Value configuration /etc/config/bacnet_bv
config bv 'default'
	option description 'Binary Value'
	option inactive 'AUS'
	option active 'EIN'
	option nc '1'
	option event '7'
	option time_delay '3'

config bv '0'
	option name 'BV_00'
	option alarm_value '0'
	option tagname 'modbus-s1'
	option addr '5'
	option bit '0'
	option resolution 'dword'
	option active 'Ein'
	option inactive 'Aus'
	option description 'Datenwort 2 Bit 0'
	option value '0'
	option Out_Of_Service '0'
	option value_time '1384274334'

config bv '1'
	option name 'BV_01'
	option alarm_value '0'
	option tagname 'modbus-s1'
	option addr '5'
	option bit '1'
	option resolution 'dword'
	option active 'Ein'
	option inactive 'Aus'
	option description 'Datenwort 2 Bit 1'
	option Out_Of_Service '0'
	option value '0'
	option value_time '1384274334'
  • Run
BACNET_IFACE=en0 BACNET_DATALINK=bip BACNET_IP_PORT=47808 UCI_SECTION=0 bin/bacserv
  • Debug
BACNET_IFACE=en0 BACNET_DATALINK=bip BACNET_IP_PORT=47808 UCI_SECTION=1 lldb bin/bacserv
Clone this wiki locally