1
0
mirror of https://github.com/stargieg/bacnet-stack synced 2025-10-26 23:35:52 +08:00
Commit Graph

28 Commits

Author SHA1 Message Date
Steve Karg
2faa1123e7 [r3162] Added WritePropertyMultiple demo application. 2018-03-25 16:48:16 +02:00
Steve Karg
de1c4b5baa [r3148] Added property enumerations from BACnet 2016 standard. Thank you, Mario Sousa! 2018-03-25 16:12:09 +02:00
Steve Karg
6fe2e16ad3 [r3147] added engineering units from 135-2012ag and 135-2012ar 2018-03-25 16:11:25 +02:00
Steve Karg
17058b23b3 [r3137] Adds two new functions to the ring buffer implementation, one to walk the ring by getting a pointer to the next element in the ring, and the other to Pop (remove) a specified element from somewhere in the ring and then move any elements up towards the head to fill the gap left. With these new functions in place, the Linux MS/TP datalink MSTP_Get_Reply() has been updated to walk the ring buffer to try to find the matching reply. If it is found then it is processed in the same way as usual, and then removed from the ring.
When a packet is received which expects a reply a copy is stored in the PDU ring buffer so it can be matched with the reply. Unfortunately when the reply is received it is only checked against the first entry in the ring buffer. This can cause a failure if a second packet expecting a reply has been received while waiting for the first reply to arrive.
This is a known issue in the bacnet-stack open source stack, and there is a outstanding FIXME in the latest version of the source code:

        /* The ANSWER_DATA_REQUEST state is entered when a  */
        /* BACnet Data Expecting Reply, a Test_Request, or  */
        /* a proprietary frame that expects a reply is received. */
        /* FIXME: MSTP_Get_Reply waits for a matching reply, but
           if the next queued message doesn't match, then we
           sit here for Treply_delay doing nothing */

The fix for this is to check all the messages in the PDU queue to see if any of them match, and if one does then handle it in the normal way. Thank you to Ian Smith of Abelon Systems Ltd. for the patch!
2018-03-25 15:59:10 +02:00
Steve Karg
25ca4375f9 [r3096] Fixed compilation of unit tests. 2017-04-04 23:58:02 +02:00
Steve Karg
9b6ba1e69a [r3094] Fixed the BITMASK_CHECK macro to actually compare to the mask. 2017-04-04 23:29:56 +02:00
Steve Karg
fa84dccaee [r3093] Added function to BIP to detect when the UDP port number changed. 2017-04-04 23:29:56 +02:00
Steve Karg
8252eb1242 [r3090] Added structure name. 2017-04-04 23:29:55 +02:00
Steve Karg
7261d40214 [r3089] Updated ringbuffer library to remove alloc and include data-peek and data-put. 2017-04-04 23:29:55 +02:00
Steve Karg
787197908a [r3087] Refactored memcopy range check. 2017-04-04 23:27:20 +02:00
Steve Karg
7b121febce [r3086] Fixed JavaDoc comments. 2017-04-04 23:25:49 +02:00
Steve Karg
fdc1b38bef [r3085] Added wildcard date comparison functions. 2017-04-04 23:25:03 +02:00
Steve Karg
123f5ef788 [r3084] Added buffer size to COV handler function parameters. 2017-04-04 23:24:30 +02:00
Steve Karg
44aa7b6667 [r3083] Added DCC enum text names. 2017-04-04 23:23:49 +02:00
Steve Karg
8f8193719d [r3082] Added functions to encode/decode unsigned64 values. 2017-04-04 23:23:17 +02:00
Steve Karg
ae02d4fcc2 [r3081] Added encode/decode for BACnet address. 2017-04-04 23:22:21 +02:00
Steve Karg
61fc4614f1 [r3079] Added function to get the DCC password from demo handler. 2017-04-04 22:29:27 +02:00
Steve Karg
85e3109f58 [r3078] Added buffer size to COV handler function parameters. 2017-04-04 22:28:35 +02:00
Patrick Grimm
cd7123bfcb fix compiler warning unused var. add macro unused_var 2016-12-03 12:23:18 +01:00
Patrick Grimm
b1b85404f9 [r3063] Merged revision(s) 3061 from branches/releases/bacnet-stack-0-8-0:
Fixed typedef so that uses of it are const.
........
Author: skarg@r3063
2016-11-01 19:27:17 +01:00
Patrick Grimm
1b4cb0eee5 update add compile switch for bac objects ai,ao,.. 2016-10-30 23:48:37 +01:00
Patrick Grimm
b9bb161ade update to r3056 from https://sourceforge.net/p/bacnet/code/3056/tree/trunk/bacnet-stack/ add ipv6 and schedule support 2016-10-30 16:16:03 +01:00
Patrick Grimm
5d710a2baa add Out_Of_Service and write value to uci for av 2013-11-02 22:56:20 +01:00
Patrick Grimm
3dfa360ef5 load uci value if uci config has mod time change 2013-09-21 04:19:45 +02:00
Patrick Grimm
d063b6e093 fix gcc warnings, cleanups 2013-04-12 04:24:46 +02:00
Patrick Grimm
70268c0205 make nc propertis r/w for uci 2013-03-29 03:44:49 +01:00
Patrick Grimm
d15d16f681 add uci header and wrapper functions 2013-03-21 23:04:57 +01:00
Patrick Grimm
01349ec9e8 fork from http://sourceforge.net/projects/bacnet/ 2013-03-21 22:53:31 +01:00