@halsystems/red-bacnet
Version:
NodeRED BACnet IP client
76 lines (57 loc) • 7.71 kB
Markdown
# TS Node BACstack
A BACnet® protocol stack written in pure TypeScript from contributors and maintained by [PLUS for Node-RED](http://plus4nodered.com/).
BACnet® is a protocol to interact with building automation devices defined by ASHRAE.
## Install
Run the following command in your Node-RED user directory - typically `~/.node-red`
npm install ts-node-bacnet
try these options on npm install to build from source if you have problems to install
--unsafe-perm --build-from-source
### Features
The BACnet standard defines a wide variety of services as part of it's
specification. While Node BACstack tries to be as complete as possible,
following services are already supported at this point in time:
| Service | Execute | Handle |
|--------------------------------|:---------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------:|
| Who Is | [yes](http://books.plus4nodered.com/ts-node-bacnet/whoIs) | [yes](http://books.plus4nodered.com/ts-node-bacnet/event:whoIs) |
| I Am | yes¹ | [yes](http://books.plus4nodered.com/ts-node-bacnet/event:iAm) |
| Who Has | yes¹ | yes¹ |
| I Have | yes¹ | yes¹ |
| Time Sync | [yes](http://books.plus4nodered.com/ts-node-bacnet/timeSync) | [yes](http://books.plus4nodered.com/ts-node-bacnet/event:timeSync) |
| UTC Time Sync | [yes](http://books.plus4nodered.com/ts-node-bacnet/timeSyncUTC) | [yes](http://books.plus4nodered.com/ts-node-bacnet/event:timeSyncUTC) |
| Read Property | [yes](http://books.plus4nodered.com/ts-node-bacnet/readProperty) | yes¹ |
| Read Property Multiple | [yes](http://books.plus4nodered.com/ts-node-bacnet/readPropertyMultiple) | yes¹ |
| Read Range | [yes](http://books.plus4nodered.com/ts-node-bacnet/readRange) | yes¹ |
| Write Property | [yes](http://books.plus4nodered.com/ts-node-bacnet/writeProperty) | yes¹ |
| Write Property Multiple | [yes](http://books.plus4nodered.com/ts-node-bacnet/writePropertyMultiple) | yes¹ |
| Add List Element | yes¹ | yes¹ |
| Remove List Element | yes¹ | yes¹ |
| Create Object | yes¹ | yes¹ |
| Delete Object | [yes](http://books.plus4nodered.com/ts-node-bacnet/deleteObject) | yes¹ |
| Subscribe COV | [yes](http://books.plus4nodered.com/ts-node-bacnet/subscribeCOV) | yes¹ |
| Subscribe Property | [yes](http://books.plus4nodered.com/ts-node-bacnet/subscribeProperty) | yes¹ |
| Atomic Read File | [yes](http://books.plus4nodered.com/ts-node-bacnet/readFile) | yes¹ |
| Atomic Write File | [yes](http://books.plus4nodered.com/ts-node-bacnet/writeFile) | yes¹ |
| Reinitialize Device | [yes](http://books.plus4nodered.com/ts-node-bacnet/reinitializeDevice) | yes¹ |
| Device Communication Control | [yes](http://books.plus4nodered.com/ts-node-bacnet/deviceCommunicationControl) | yes¹ |
| Get Alarm Summary² | [yes](http://books.plus4nodered.com/ts-node-bacnet/getAlarmSummary) | yes¹ |
| Get Event Information | [yes](http://books.plus4nodered.com/ts-node-bacnet/getEventInformation) | yes¹ |
| Get Enrollment Summary² | [yes](http://books.plus4nodered.com/ts-node-bacnet/getEnrollmentSummary) | yes¹ |
| Acknowledge Alarm | yes¹ | yes¹ |
| Confirmed Event Notification | yes¹ | yes¹ |
| Unconfirmed Event Notification | yes¹ | yes¹ |
| Unconfirmed Private Transfer | [yes](http://books.plus4nodered.com/ts-node-bacnet/unconfirmedPrivateTransfer) | yes¹ |
| Confirmed Private Transfer | [yes](http://books.plus4nodered.com/ts-node-bacnet/confirmedPrivateTransfer) | yes¹ |
¹ Support implemented as Beta (untested, undocumented, breaking interface)
² Deprecated BACnet® function, available for backwards compatibility
## Contribution
Special thanks to Fabio Huser for the [fundamental work](https://github.com/fh1ch/node-bacstack).
**Yes, sure!** Please help us to make it even better and become a community member of [PLUS for Node-RED](http://plus4nodered.com/)!
#### Happy coding!
## License
MIT
Copyright (c) 2022-present [PLUS for Node-RED](http://plus4nodered.com/)
origin Copyright (c) 2017-2021 Fabio Huser <fabio@fh1.ch>
## Note
This is not an official product of the BACnet Advocacy Group.
BACnet® is a registered trademark of American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE).
We're buying the specifications of ASHARE to programm for this library.