Commit Graph

281 Commits

Author SHA1 Message Date
Steve Karg 766e0c020d Create bacnet strnlen and stricmp to avoid libc compiler problems 2024-07-22 16:22:36 -05:00
Steve Karg 3864421ac8 Fixed compile warning in network port object. 2024-07-22 16:04:40 -05:00
Steve Karg 3246d6bd72 Fixed zephyr B-SS sample build under native_sim 2024-07-22 14:56:12 -05:00
Önder Görmez 55f757c8a2 Fix typo (#701)
Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
2024-07-21 10:19:30 -05:00
Steve Karg e2349b719f Fixed bitstring-value header file duplication. 2024-07-19 17:22:13 -05:00
Steve Karg 00ab206075 * Changed header file include guards to unique namespace. Updated file headers comments with SPDX [issue #55] (#666) 2024-07-19 17:16:28 -05:00
Steve Karg 90714c094c Fixed BACnetHostNPort known property decoding. (#700)
* Fixed BACnetHostNPort known property decoding.

* Added BDT-Entry and FDT-Entry to BACapp for known property encoding/decoding.
2024-07-19 16:45:09 -05:00
GauiStori e984a19885 Added reject response to unknown reserved network layer message types. (#690) 2024-07-17 14:37:36 -05:00
GauiStori a12c552601 Added a check for apdu_len exceeding MAX_APDU in apdu_handler() for confirmed service and ignore the message if the APDU portion of the message is too long. (#696) 2024-07-17 12:13:56 -05:00
Steve Karg 734321a974 Moved timesync offset get/set from handler to ports to fix projects not using handler (#699) 2024-07-16 17:30:38 -05:00
Steve Karg 13debf3ead Fixed compile warnings from Binary Value header file. 2024-07-16 16:40:24 -05:00
GauiStori fda3cb5e82 Added set time callback with optional offset for BACnet TimeSynchronization services (#691) 2024-07-16 15:28:03 -05:00
Tomasz Kazimierz Motyl f4637325ad Added Binary Input and Binary Value intrinsic reporting CHANGE_OF_STATE algorithm as per 13.3.2 as per ASHRAE 135-2020 (#689) 2024-07-16 08:16:33 -05:00
GauiStori 2c819274af Fixed network priority reponses for test 10.1.2 (#687) 2024-07-11 10:26:22 -05:00
GauiStori 8bb93d3286 Fixed basic device object and ReadRange handling for test 9.21.2.2 and 9.21.2.3 array index (#692) 2024-07-11 09:23:55 -05:00
Tomasz Kazimierz Motyl 66fd9f5c48 Added BACnet/IPv6 properties to basic Network port object (#686)
Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
2024-07-08 07:46:01 -05:00
Steve Karg cb4f675e39 Reduced MS/TP MAX_APDU to use 480 by default in examples (#683)
* Reduced MS/TP MAX_APDU to 480 from 1476 so that devices not use new MS/TP extended frame types which older routers do not understand.

* Added extra objects to STM32F4xx example to elicit edge cases in object-list for testing.
2024-07-02 12:47:15 -05:00
Steve Karg ddb2b43125 Refactor/mstp zero config state machine (#676)
* Changed MS/TP master node self destination checks to be located in receive FSM

* Changed MSTP zero configuration: modified comments for state transition names; modified next station increment; refactored the UUID rand() to not be required by common zero config implementation; added more unit tests.

* Added another context to MS/TP user data to allow additional user data
2024-06-26 07:43:25 -05:00
Tomasz Kazimierz Motyl 9e0751f8c9 Adding activate-changes to the ReinitializeDevice options (#674)
Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
2024-06-17 20:27:31 -05:00
Jonathan 2cdbf20f9f ai.c, ao.c : Fix typos (#673) 2024-06-14 10:13:40 -05:00
Steve Karg 12d55ab3cb Fix datatype conversion errors found by splint. Fix Binary input/value set. (#672) 2024-06-12 21:13:33 -05:00
Steve Karg aa9370004b Added example basic bitstring value object. (#668) 2024-06-05 11:03:42 -05:00
Steve Karg 4576e41ec3 Refactor/ports xplained common dlmstp (#665)
* Refactored ports/xplained to use common DLMSTP module to enable extended frames

* Added floating point compares in cases where they don't exist in math library
2024-06-04 14:48:40 -05:00
Steve Karg 17c5e2e98d Added guards in create object initialization to prevent memory leaks (#664) 2024-06-02 07:09:26 -05:00
NikSchew ec066fcc70 Added wildcard check for bi objects (#663)
Co-authored-by: Nik Schewtschuk <nikonlinee@gmail.com>
2024-06-02 06:51:12 -05:00
NikSchew 7276bf471d Added guard for some object inits to prevent memory leak by misuse (#662)
Co-authored-by: Nik Schewtschuk <nikonlinee@gmail.com>
2024-06-02 06:42:47 -05:00
Steve Karg 52f3f08cb1 Bugfix/fix redundant compiler flags (#658)
* Improved GCC compiler flags in ARM, OS, and test builds. Removed redundant flags, and made them consistent across various builds.

* Fixed redundant redeclaration of various functions detected by change in compiler flags.

* Fixed string truncation warning in bip-init detected by change in compiler flags.

* Fixed some set-but-not-used variables by creating dummy functions instead of using macros.
2024-05-30 10:59:54 -05:00
Steve Karg 7ccde9790f Added simpler API to get/set Network Port MSTP MAC address (#653) 2024-05-24 10:42:07 -05:00
Steve Karg 4cd7acebcd Secure ReadPropertyMultiple code, and improve unit test coverage. (#650) 2024-05-21 08:28:50 -05:00
Steve Karg 7baf912acd Bugfix/secure apdu handler unconfirmed (#645)
* Secured APDU handler by avoiding read ahead.
2024-05-20 09:00:18 -05:00
Steve Karg cbd9b3f04f added secure BACnet primitive datatype encode functions. (#643)
* added secure BACnet primitive datatype encode functions.
2024-05-17 08:56:24 -05:00
Steve Karg 8eab077ebf Added function to determine if an object property is a BACnetARRAY. (#642)
* Added function to determine if an object property is a BACnetARRAY.  Added property test for BACnetARRAY members.
2024-05-15 13:25:44 -05:00
Steve Karg affb358139 Feature/add basic structured view object (#641)
* Added basic structured view object and unit test. Added example structured view into server example.

* Removed creation of objects from basic device object into the server example
2024-05-14 14:51:45 -05:00
Steve Karg c21c99fef3 Fixed basic analog-value object intrinsic reporting and write property (#640)
* Fixed basic analog-value object intrinsic reporting for ack notification.
* Fixed basic analog-value object write property of present-value to priority 6.
2024-05-14 11:28:28 -05:00
Steve Karg ec98da5989 Fixed basic analog-value alarm-ack functionality. (#639)
* Fixed basic analog-value alarm-ack functionality.

* Added reliability property to basic analog-value.

* Fixed some basic analog-value and analog-input object function header comments.
2024-05-13 16:34:10 -05:00
Steve Karg 3222244e4e Updated to version 1.3.6 for release on 2024-05-12 Mother's Day! (#635)
* Updated to version 1.3.6 for release on 2024-05-12 Mother's Day!
2024-05-12 09:06:23 -05:00
Steve Karg 06ff987b79 Issues/issue 632 invoke id mismatch (#633)
Fixed nuisance print messages in ports/linux/dlmstp by changing to debug print only.
2024-05-07 06:58:26 -05:00
Steve Karg 96222574f8 Bugfix/router mstp builds (#630)
* Fixed example app router-ipv6 to build under ports/win32

* Fixed example app router-mstp to build under ports/win32 with MinGW

* Added win32 builds of router-ipv6 and router-mstp to the Github pipeline
2024-04-30 13:52:00 -05:00
Tomasz Kazimierz Motyl b90b14e5f6 Merge pull request #39 from se-apc/devel/getters_and_setters_to_support_relative_permanence (#629)
Get/Set functions to support properties relative permanence requirement
2024-04-30 13:35:31 -05:00
Steve Karg fc56e8b4a6 Fixed invalid comparison in life-safety-zone basic object. 2024-04-29 09:46:55 -05:00
Steve Karg bb276e2431 Refactored all the sprintf to use snprintf instead. (#628) 2024-04-27 12:41:45 -05:00
Tomasz Kazimierz Motyl 4add49b549 Setting logic behind valit transitions check straight (#623)
Co-authored-by: Tomasz Kazimierz Motyl <tomasz.motyl@se.com>
2024-04-22 08:18:16 -05:00
Steve Karg 770be70688 Chore/bacnet-sc-unrelated-cleanup (#620)
* Added required linux Ethernet library for ethernet build

* Added .obj to gitignore

* Fixed BACnet port for APPLE to use BSD in CMake

* Changed format in CMake to enable cleaner SC merge

* Added create-object and delete-object recipes in GCC Makefile

* Added datalink timer to all example OS apps

* Changed most microcontroller ports to use BACAPP_MINIMAL to specify which datatypes can be written.

* Fixed zephyr OS for BACnet/IP warning

* Fixed zephyr OS log to not require log_strdup

* Added writefile API to file object example

* Added API to device-client to make it more robust.

* Added API in network-port object for getting the ASCII object-name

* Added debug print with a timestamp option

* Added debug print with hex dump print

* Added API to network port object for activate and discard

* Added default define for debug with timestamp

* Added prototype in header for disabled debug printf.

* Added fifo peek ahead function to peek at more than one byte.

* Added get-mac value for network port that uses buffer rather than octetstring
2024-04-19 12:54:56 -05:00
antocout 600508c357 Change first instance of an integer value from 1 to 0 (#619)
Integer_Values instances start at 1 while other object instances
start at 0. Change this to have the same start for all objects.

Signed-off-by: Antoine Coutant <antoine.coutant@smile.fr>
2024-04-17 08:53:12 -05:00
Steve Karg aca3a2bc82 Fixed basic network port object header dependency on readrange.h file. 2024-04-05 13:17:35 -05:00
Steve Karg e19cc0be1e Added API for multistate number-of-states 2024-04-04 17:09:51 -05:00
Steve Karg 5abdaf0916 Fixed binary object active and inactive text setting. 2024-04-04 13:04:02 -05:00
Steve Karg f3b1ea0ab9 Added reliability, active-text, inactive-text to binary-input object ReadProperty. 2024-04-04 12:35:52 -05:00
Steve Karg b8201dad26 Fixed unit test checking for unknown property. Added reliability property to binary-value ReadProperty. 2024-04-04 12:26:14 -05:00
Steve Karg d1f92cbb8f Change time-value object present-value to not report current time. Added out-of-service property to WriteProperty. 2024-04-04 11:33:54 -05:00