Commit Graph

19 Commits

Author SHA1 Message Date
Steve Karg 343d9f893d Fix and extend BACnetReliability per 135-2020 (#399)
Fix member-fault and tripped values.
Extend BACnetReliability to include:
monitored-object-fault (14),
tripped (15),
lamp-failure (16),
activation-failure (17),
renew-dhcp-failure (18),
renew-fd-registration-failure (19),
restart-auto-negotiation-failure (20),
restart-failure (21),
proprietary-command-failure (22),
faults-listed (23),
referenced-object-fault (24),
multi-state-out-of-range (25),

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2023-02-17 08:24:48 -06:00
Steve Karg 196ac2b0fd Fix BACnet object text off-by-one. 2022-09-16 08:42:07 -05:00
Steve Karg cc4911a185 make pretty 2022-09-10 10:32:50 -05:00
Steve Karg a945588340 Bugfix/print property name units lighting (#313)
* Fix EPICS property name proprietary range

* Fix Lighting Command decode length

* add function to determine property name and units proprietary range

* improve test coverage for AI, AO, AV, BI, BO, BV, LO

* refactor common property encoding to proplist module

* add decoder for priority array

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2022-07-29 17:11:38 -05:00
Steve Karg 38d213b47c Feature/color objects color command (#302)
* added BACnetColorCommand and BACnetxyColor encoding and unit testing

* Added Color object and unit testing.

* Added Color Temperature object and Unit test

* Fix BVLC unit test warning.

* add port Makefile for extra types

* added RGB to and from CIE xy utility in sys folder, and add unit tests.

* added cmake-win32 target

* Change RP and RPM to use known property decoder.

Add color object RP and RPM decoding and printing
Fix RPM print for new reserved range above 4194303
Change default protocol-revision to 24 for Color object

* Integrate Color and Color Temperature objects into demo apps

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2022-07-13 09:54:36 -05:00
Steve Karg f147283293 Feature/apdu null length returned (#285)
* Add APDU as NULL to get BACnet type lengths.

* Fix bacapp copy test to succeed

* fix BACnet REAL and DOUBLE decode

* Add unit test for NULL APDU encoding for length

* Add unit tests for bacapp context

* refactor host-n-port to hostnport.c module

* fix BVLC decoder

* additional unit testing for bacapp

* include bacdevobjpropref module in builds

* simplify bacapp snprintf to be able to return length

* adjust compiler for variable-length arrays

* fix bug found by scan-build

Authored-by: Steve Karg <skarg@users.sourceforge.net>
2022-06-01 15:42:50 -05:00
Steve Karg 3c64869dca Updates for protocol-revision 20 through 24 (#258)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2022-05-03 11:59:27 -05:00
Steve Karg 601e3b80f9 Add enums and text for BACnet Errors (#257)
Add new enumerations for BACnet Errors
Add new enumerations from BACnet Errata
Add enumeration text for new enumerations.

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2022-04-27 11:25:46 -05:00
Steve Karg 94623c63c5 Add new enumerations and text (#255)
Add enumerations and text for Color and Color Temperature objects
Add enumerations and text for Audit Log and Audit Reporter objects
Add enumerations and text for BACnet/SC Network Port object

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2022-04-22 12:39:57 -05:00
Steve Karg a7bc145c43 Feature/alarm ack application (#164)
* Added alarm-ack application

* fix error and simple ack handling for event notification

* Added ack-alarm application

* Update CMake for ack-alarm

* update example objects for alarm and events

* Allow repeated ack-alarm for same transition

* add event state API. Fix COV event state.

* add event state API to AV. Fix COV event state.

* Use event time for ack notification

* Enable notifications for all transitions by default. For testing.

* Use unconfirmed device notification to 4194303 for testing.

* initialize local vars

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-04-22 08:33:04 -05:00
Steve Karg 117db88ce6 Feature/confirmed event notification app (#153)
* Initial ConfirmedEventNotification app

* Fixed event argument processing

* Adjust event argument processing.

Move the common event arguments
Enable text lookup for some event arguments.

* Fix CMAKE for event app.

Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2021-02-10 10:58:47 -06:00
Steve Karg 15dce68947 make pretty using clang-format 10 2020-06-19 14:44:32 -05:00
Steve Karg 1fe6b7e670 Fixed #15 bactext engineering units for new reserved range (#77)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2020-04-23 14:42:38 -05:00
Steve Karg 0f82748413 Added abort to error code conversion. Added unit test. (#20)
* Added abort to error code conversion. Added unit test.

* add javadoc header to new function.
2020-01-15 14:50:16 -06:00
Roger Light 0a414b88f6 Units fixes (#13)
* Match unit name to name used in specification.

* Add missing unit strings to bactext.
2020-01-14 23:20:16 -06:00
Roger Light 5a7049557b apps - allow text strings for object-type and property arguments. (#8)
The existing method of calling various example apps requires the user to
know the enumeration value for the object-type and property values. This
patch enhances to allow the object-type and property arguments to be
specified as strings, using the strings as defined in the spec. It does
not remove the old behaviour.

Current:
  bacrp 1234 3 1 85

New:
  bacrp 1234 binary-input 1 present-value

This change does not currently apply to the property arguments of the
readm and writem applications.
2020-01-14 23:18:30 -06:00
Steve Karg 35a8c47213 Added protocol-revion 20 support 2020-01-04 12:41:31 -06:00
Roger Light b22f745c79 Match property name to name used in specification. (#7) 2019-12-19 22:12:54 -06:00
Steve Karg d50c190957 Issue 2 move folders and use deep path include file names to prevent collisions (#4)
* moving folders and files and adjust server demo build

* Fix Makefile for apps/server on Linux

* fix unit test source file folders

* fix datetime convert UTC functions. Add Code::Blocks project for datetime testing

* added some ignore extensions

* disable parallel make option

* fix build for abort, dcc, and epics apps

* fix build for dcc, epics, error, and getevent apps.

* Fixed building of all apps

* fix the ipv4 to ipv6 router app build

* Change indent style from Google to Webkit

* make pretty to re-format style

* removed common Makefile since we already had one and two was too many

* remove scripts from root folder that are no longer maintained or used

* remove mercurial EOL and ignore files for git repo

* remove .vscodeconfig files from repo

* tweak clang-format style

* clang-format src and apps with tweaked style

* added clang-tidy to fix readability if braces in src

* result of make tidy for src and apps

* fix clang-tidy mangling

* Added code::blocks project for BACnet server simulation

* added code::blocks linux project for WhoIs app

* update text files for EOL

* fix EOL in some files

* fixed make win32 apps for older gcc

* Removed Borland C++ Makefile in apps. Unable to maintain support for Borland C++ compiler.

* created codeblocks project for apps/epics for Windows

* fixing ports/xplained to work with new data structure.

* fix ports/xplained example for Atmel Studio compile

* fix ports/stm32f10x example for gcc Makefile compile

* fix ports/stm32f10x example for IAR EWARM compile

* fix ports/xplained timer callback

* fix ports/bdk_atxx_mspt build with subdirs

* fix ports/bdk_atxx_mspt build with subdirs

* updated git ignore for IAR build artifacts

* updated gitignore for non-tracked files and folders

* fixed bdk-atxx4-mstp port for Rowley Crossworks project file

* fixed bdk-atxx4-mstp port for GCC AVR Makefile

* fixed atmega168 port for IAR AVR and GCC AVR Makefile

* fixed at91sam7s port for IAR ARM and GCC ARM Makefile

* removed unmaintainable DOS, RTOS32, and atmega8 ports.  Updated rx62n (untested).

* changed arm7 to uip port
2019-12-13 15:19:10 -06:00