Commit Graph

3466 Commits

Author SHA1 Message Date
Steve Karg d094278116 Fixed configure script and removed aptfile duplicity. (#946) 2025-03-21 17:40:44 -05:00
Steve Karg 8028d7b79a Updated readme and fixed some spelling and grammar. 2025-03-19 09:03:20 -05:00
Steve Karg 4d62ec83d9 Added BACnet BACnet Testing Laboratories Implementation Guidelines 2025-03-17 15:39:12 -05:00
Steve Karg e7147bda48 Fixed the COV for Analog Input and Analog Value objects when fault is detected in Reliability property. (#943) 2025-03-15 08:17:44 -05:00
Steve Karg f1ea03647f Bugfix/bacmini-updates-with-program-object-and-cmake (#941)
* Added bacmini example app with minimal analog and binary objects  (#934)

* Fixed bacmini app build for Makefile and CMake

* Changed the folder for bacmini application to server-mini

---------

Co-authored-by: Ben Bartling <ben.bartling@gmail.com>
2025-03-13 17:18:47 -05:00
Steve Karg d7858c0b3a Updated readme for ports/atmega328 2025-03-13 17:17:38 -05:00
Steve Karg 4df896b820 Feature/basic-program-object (#940)
* Added basic Program object and unit test.

* Integrate the basic Program object with example applications.
2025-03-13 15:51:37 -05:00
Steve Karg 4ee129e249 Added bypass in basic WriteProperty handler to accept writes of NULL to non-commandable properties (#919) 2025-03-10 07:30:55 -05:00
Steve Karg 7e725ce028 Bugfix/win32 build warnings (#936)
* Changed win32 port of localtime to use secure OS API functions when compiled with MSVC

* Changed all the sprintf to use snprintf instead in BSC tests to ensure null string endings.
2025-03-03 10:32:28 -06:00
Steve Karg b0a26cf2cd Changed BACnet app example server-basic name (#935) 2025-03-03 09:10:04 -06:00
Steve Karg 5cd453c925 Fixed WriteProperty error code for FD_BBMD_ADDRESS and FD_SUBSCRIPTION_LIFETIME (#925)
* Fixed WriteProperty error code for PROP_FD_BBMD_ADDRESS and PROP_FD_SUBSCRIPTION_LIFETIME properties.  

* Fixed dead-code warning after enabling all datalinks for basic network port object using the property list as the R/W checking for the port type.
2025-03-03 08:04:07 -06:00
Steve Karg 3e480f41e2 Ported bacnet-basic from zephyr project to create basis for mini example. (#933) 2025-02-27 15:49:29 -06:00
Steve Karg 4ebc1a4566 Fixed the basic multi-state output priority-array datatype encoding. (#932) 2025-02-26 17:22:08 -06:00
Steve Karg 5ff02ea837 Fixed windows build of bacpoll and bacdiscover by removing DLL export in basic client headers (#930) 2025-02-26 17:21:06 -06:00
Steve Karg f61038ad6c Added Send_I_Am_Broadcast() function to Who-Is handler so that other Send_I_Am() will honor DCC Disable-Initiatiation. (#918) 2025-02-26 17:01:53 -06:00
Steve Karg 849cbb238b Fixed Device_Write_Property_Object_Name() to return WRITE_ACCESS_DENIED in case where an object name is not writable using BACnet protocol. (#927) 2025-02-26 17:00:51 -06:00
Steve Karg 2f5b45c542 Fixed WriteProperty writing to object properties when the array-index is valid (#931) 2025-02-26 16:51:14 -06:00
Steve Karg 87309e4b84 Fixed line endings in script. 2025-02-25 10:39:12 -06:00
Steve Karg 6486dfcacb Added simple script to aid in mirror the Github repository with Sourceforge. 2025-02-21 11:42:31 -06:00
Steve Karg 7a5190f295 Fixed Who-Has object instance by checking for valid instance. (#922) 2025-02-20 17:29:39 -06:00
Steve Karg 08f152b4ac Fixed out-of-service writability to be consistent with present-value in objects using Write_Enabled flag (#921) 2025-02-20 09:42:15 -06:00
Steve Karg 97490dacb1 Fixed the NDPU encoding for confirmed COV notifications (#917) 2025-02-18 08:44:16 -06:00
Steve Karg aa87bd8051 Bugfix/ipv6 leave multicast on foreign device registration (#899)
* Fixed IPv6 handler to ignore original-broadcast when registered as a foreign-device

* Fixed IPv6 to leave multicast when registering as foreign device.
2025-02-17 09:07:27 -06:00
Steve Karg adff1f9c0f Fixed the ReinitializeDevice and DeviceCommunicationControl password length checking for non-UTF8 passwords. (#914) 2025-02-13 12:58:54 -06:00
Steve Karg f8e9ab8d86 Changed link-speed, network-number, network-number-quality, and apdu-length properties of the network port object to be optional when protocol-revision is 24 or greater. (#913) 2025-02-13 08:44:30 -06:00
Steve Karg 7b9d6d7dc5 Fixed error-code returned when an object does not support WriteProperty but has properties that are known. (#912) 2025-02-12 16:54:40 -06:00
Steve Karg ae135cd368 Bugfix/property list consistency testing (#910)
* Added unit test while reading all object properties to flag properties not in the property-list.

* Added enumeration for last-property used in unit testing.

* Added missing reliability property in the basic multistate output object example.

* Removed polarity property in binary value object as it is not standard.
2025-02-12 12:14:01 -06:00
Steve Karg bc2438f85b Fixed structured view object subtype get and set. (#909) 2025-02-10 09:56:52 -06:00
Steve Karg 66329a05a0 Bugfix/property array element zero size (#908)
* Changed BACnetARRAY index validation into ReadProperty, ReadPropertyMultiple, WriteProperty, and WritePropertyMultiple handlers.

* Changed the basic and example objects after refactoring BACnetARRAY index validation into ReadProperty, ReadPropertyMultiple, WriteProperty, and WritePropertyMultiple handlers.

* Added BACnet application decoder that understands that an array element of zero is an unsigned integer tagged value.  Fixes RP and RPM apps when reading the array element zero of arrays.
2025-02-10 09:44:53 -06:00
Steve Karg da3aaf3b48 Added Write_Enabled flag API into multi-state-input and multi-state-value basic objects. (#903) 2025-02-06 14:10:56 -06:00
Steve Karg 77bdaaf853 Fixed usage of 8-bit modulo operator off-by-one maximum. (#901) 2025-02-04 13:56:53 -06:00
Steve Karg 19ef7f74cd Added MS/TP automatic baudrate detection option into the core MS/TP state machine. (#900) 2025-02-03 15:10:31 -06:00
Steve Karg c5b129e9ab Fixed legacy make build recipe for library. 2025-02-03 09:28:51 -06:00
Steve Karg 4d0c626c1d Fixed IPv6 handler to ignore original-broadcast when regiistered as a foreign-device (#898) 2025-01-29 15:28:35 -06:00
Steve Karg d4a32171b7 Changed date encoding when year is out of range to use wildcard. Updated APDU encoding pattern (#897) 2025-01-27 08:42:43 -06:00
Steve Karg 44c2bccdeb Added linked list of lighting-command notification callbacks, (#893) 2025-01-21 14:30:38 -06:00
Steve Karg cfe257fe69 Fixed spelling errors detected by code-spell utility. (#895)
* Fixed spelling errors detected by code-spell utility.

* Fixed cppcheck preprocessorErrorDirective. Suppressed new cppcheck warnings until fixed.
2025-01-21 13:31:43 -06:00
Steve Karg ece31443b6 Secured SubscribeCOVProperty decoder. (#892)
* Secured SubscribeCOVProperty decoder.

* Changed datatype of monitoredProperty in struct BACnet_Subscribe_COV_Data
2025-01-09 14:27:39 -06:00
Steve Karg 9f858fdb4f Added bvlc6.sh script to enable foreign-device-registration for client tools. (#889) 2025-01-09 08:57:05 -06:00
Steve Karg 39109f5929 Secured the BACnet Who-Request decoder by changing deprecated decode functions. (#891) 2025-01-09 08:55:57 -06:00
Steve Karg 6806cc3bb7 Fixed CharacterString Value object name default and reverted API chan… (#888) 2025-01-06 11:40:03 -06:00
Tomasz Kazimierz Motyl 2ba59abbf8 Added DeleteObject and Cleanup support to basic CharacterString object (#886) 2025-01-06 08:20:49 -06:00
Steve Karg 94b3809a58 Bugfix/confirmed handlers empty service request (#885)
* Added reject in all confirmed service handlers, except GetEventInformation, when confirmed services with zero length occur which rejects with required parameters are missing message.

* Refactored errno use in service using debug_perror. Changed debug_perror usage to debug_fprintf. 

* Updated file and function headers in basic/service modules.

* Changed NDPU priority on confirmed messages to use requested NDPU priority.

* Renamed debug_aprintf to debug_printf_stdout for clarity.

* Convert most debug_fprintf usage to debug_print to reduce text bloat in AVR build
2025-01-05 10:09:39 -06:00
Steve Karg 1f41e2c933 Fixed datalink environment for BIP6 foreign device registration for the example apps. (#884) 2025-01-03 09:43:58 -06:00
Jonathan 788d31902e PROP_RELIABILITY added to MSI and MSV as they answer to read request (#880)
Read request worked but write request gave "unknown property" error.

PROP_RELIABILITY is already (at least) in AI and AV (meaning that it make sense to add it to MSI and MSV rather than removing its reading).
2024-12-19 10:28:12 -06:00
Jonathan a9942de186 av.c, write present value: If type is not valid, don't overwrite error code (#881) 2024-12-19 10:27:10 -06:00
Steve Karg a1d0a5ff5a Added bitstring-bits-used-set API to use in audit-log status bits (#879) 2024-12-19 10:25:15 -06:00
Steve Karg 6b6be4a434 Added check for zero length buffer size in primitive decoders that returns zero to enable simpler complex value optional element decoding. (#876) 2024-12-18 15:29:27 -06:00
Jonathan 389b6a7d4d h_dcc.c : Return correct error when no service request (#877) 2024-12-18 11:40:23 -06:00
RJ Vandermate f0461078ba Fixed CMakeLists routing option (#874)
* If BAC_ROUTING was turned off, the gateway app wasn't deselected
2024-12-12 09:16:46 -06:00