* Fix type definitions in bacapp.c for inner_tag and object_instance when uint32_t is defined as long unsigned int instead of unsigned int
* Change DNET_list type from int to int32_t across multiple files to avoid compiler warnings when int32_t is defined as long int instead of int.
* Fixed special-event to print priority for the RP and RPM and EPICS example apps.
* Improved error message for tag value parsing in WP example app.
* Added BACnet property array parsing function to handle property string name in RPM example app.
* Added unit test to validate BACnet special event with multiple time-value pairs
When Routed_Device_Index reached MAX_NUM_DEVICES, Get_Routed_Device_Object()
returned NULL without updating iCurrent_Device_Idx, causing Send_I_Am() to
broadcast the previous device's I-Am again.
* Initialize Routed_Device_Index to 1 (first routed device index)
* Move increment after Send_I_Am() to prevent out-of-bounds access
Signed-off-by: kimhyeongjun <hjun1.kim@samsung.com>
* Expanded Object_List to Object_List[MAX_NUM_DEVICES] array to support per-device objects for virtual remote devices
* Added multi-device iteration for COV handler, device timer, and intrinsic reporting
* Added apps/gateway2 demo application
* When MAX_NUM_DEVICES == 1, behavior is identical to the original implementation
* Conditional compilation with macros ensures no impact on non-gateway applications
---------
Signed-off-by: Hyeongjun Kim <hjun1.kim@samsung.com>
Co-authored-by: haemeok-kang <haemeok.kang@samsung.com>
* Add Raspberry Pi Pico port
- Adds BACnet/IP with abstracted network layer
- Adds BACnet MS/TP support using RS485/UART
- Includes README with examples
* Add Pico 2 MS/TP demo, CI, and docs
* Add low and high trim fade functionality to lighting command operations
* Refactor lighting command override functions and fix operating and normalized range.
* Add physical range clamping function and update related clamping logic
* Add new functions for duplicating and copying octet string buffers.
* Move and update octet string value object structure with description string and add object-name and description WriteProperty handling using strdup. Add functional tests to ensure the correctness of the new features.
* feat: add octetstring_length_value_same function for length and content comparison
* feat: add tests for characterstring UTF-8 validation
* feat: add tests for octetstring_init_ascii_epics validation
* feat: add test for bacnet_strdup string duplication validation
* feat: add utf8_isvalid test cases
* feat: add octet string value API for present-value octet-string value and length, and out-of-service properties
* Fix: Corrected `rr_address_list_encode` to properly handle the end of the address cache and added a new test case to validate ReadRange operations near the cache limit.
* Added WriteProperty handler in the Structured View object with handling for object-name, description, node-subtype, node-type, default-subordinate-relationship, represents, subordinate-list, subordinate-annotations, subordinate-node-types, and subordinate-relationships in the basic Structured View object.
* Changed Structured View character strings for object-name, description, and node-subtype to use dynamic strings to support WriteProperty.
* Added characterstring_utf8_valid(), characterstring_utf8_strdup() and write_property_characterstring_utf8_strdup() for UTF-8 string duplication.
* Added write property tests for array handling and validation of array index values
* Added backup failure timeout functionality and related methods in device management
* Fixed STARTBACKUP to hold at PERFORMING_A_BACKUP per spec, not IDLE.
* Added error handling for reinitialization during restore process to prevent accidental delete of all objects.
* Added some missing Create/Delete object functions. Formatting.
* Fixed Program object type in bacnet_device.c module.