44055ff37f
I had a weird timing glitch when running mstpcap which I think was caused by a truncation error in timer.c so I've made some slight changes to try stop it happening again.
petermcs
2012-04-30 08:31:41 +00:00
8017610632
removed BACTEXT_PRINT_ENABLED wrapper around declarations as there are reasons to call some of these routines for non debug printing related purposes.
petermcs
2012-04-30 08:26:58 +00:00
9a86e51e46
Added BACNET_OK return status definition
petermcs
2012-04-30 08:08:03 +00:00
8d50bacbde
Changed output of current packet to stderr when using the --scan option so that the scan result can be piped to a file. Makes checking batches of captures easier.
petermcs
2012-04-30 08:03:13 +00:00
972afaa974
Updated AVR port projects to build with IAR and AVR Studio.
skarg
2012-04-25 19:05:59 +00:00
e65ec668e5
Corrected BDK port compile errors due to missing defines.
skarg
2012-04-21 11:47:13 +00:00
600626c21a
Fix comment in Makefile.
skarg
2012-04-18 16:36:49 +00:00
f6096f6a4d
Unified the licenses on header files since we don't have any inline functions or macros with substantial bodies. Per RMS: "Our view is that just using structure definitions, typedefs, enumeration constants, macros with simple bodies, etc., is NOT enough to make a derivative work. It would take a substantial amount of code (coming from inline functions or macros with substantial bodies) to do that."
skarg
2012-04-18 16:15:59 +00:00
9e96fdb62e
Updated PIC port MS/TP to not always Reply-Postponed frame when sent Data-Expecting-Reply frame.
skarg
2012-04-17 22:02:34 +00:00
bc8d262add
Added scanf bit-width modifiers due to ccpcheck warnings.
skarg
2012-04-16 22:00:53 +00:00
7a24c03c8a
updated some code::blocks projects
skarg
2012-04-16 14:59:45 +00:00
a7a67a76fd
Added more object properties to the property list module - it now more than EPICS demo used from existing demo objects.
skarg
2012-04-16 14:52:27 +00:00
fcb01f353e
Added comments. Moved MS/TP properties into optional. Initialized character string. Added database-revision link to device object id change. Removed malignant code.
skarg
2012-04-16 14:47:49 +00:00
b80039cf9b
aligned max-info-frames with PDU queue
skarg
2012-04-16 14:44:34 +00:00
f6c6a9cb8b
added property list library to return all required and optional properties of an object. Not finished with all object properties yet, but functional in the EPICs demo. Updated property enumerations and text names based on 135-2010 standard.
skarg
2012-04-15 21:00:43 +00:00
c2db7ee7c4
Added m option to mstpcrc demo to pass a line of bytes which get encoded into Wireshark pcap file for viewing in Wireshark. Useful when someone sends you a string of bytes from an MS/TP capture and you want to quickly decoding them using Wireshark.
skarg
2012-04-09 00:43:27 +00:00
4932dd1e79
Corrected edge case of parsing application for empty list.
skarg
2012-04-07 21:15:09 +00:00
400fa8e3c3
Used cast to fix compiler warning.
skarg
2012-03-22 18:39:59 +00:00
a8280dda95
Added CharacterString Value object example and unit tests, and added to demo/server example application. Added Multi-state Value object example and unit tests, and added to demo/server example application. Fixed Analog Input object, Analog Output object, Analog Value object, Device object, Multi-state Input object, Multi-state Output object examples to return correct error codes for WriteProperty service (per BACnet 135.1-2009-9.22.2.6). Fixed top level ReadProperty and WriteProperty handlers in Device object to return correct error codes (per BACnet 135.1-2009-9.22.2.5)
skarg
2012-03-22 18:22:42 +00:00
1c42bcfb92
Added function pointers (nulls) for ReadRangeInfo and Iterator for Binary Value objects.
skarg
2012-03-19 19:28:21 +00:00
6b544c0ec4
Changed service error ERROR_CODE_UNSUPPORTED_OBJECT_TYPE to ERROR_CODE_UNKNOWN_OBJECT to since ERROR_CODE_UNSUPPORTED_OBJECT_TYPE seems to only be acceptable to return from CreateObject service.
skarg
2012-03-16 20:09:20 +00:00
ae0008d569
Changed SubscribeCOV demo application to wait for APDU Timeout * Retries until the target device is found. After the target device is found, the demo application can wait the duration of the longest COV lifetime, if there is one. Thanks for the suggestion, Duane King!
skarg
2012-03-13 19:06:26 +00:00
eb649fe3c6
Added missing demo applications to default Borland Makefile. Cleaned up the makefile. Added missing ReadRange demo Makefile for Borland.
skarg
2012-03-13 18:55:43 +00:00
2a51a1db7c
Added MS/TP tweak to improve byte reception and processing at higher baud rates and larger packet sizes. Thank you Peter Mc Shane!
skarg
2012-03-12 21:26:53 +00:00
fdf387ed1d
Changed MS/TP receive to read more bytes from UART queue if they are available during each cycle. This fixes high baud rate issues on slower processors if the main loop cycle time is not fast enough.
skarg
2012-03-10 20:18:14 +00:00
d189f72abd
Notification Class had wrong array indexes when assigning priorities. Thank you, Dmitry Korobkov! Bug ID 3495994.
skarg
2012-03-07 22:04:01 +00:00
eaf6c9cee6
Removed unused parameter to clean up compiler warning.
skarg
2012-02-29 20:56:08 +00:00
8920f0df62
Removed accidental paste in Borland makefile.b32 that was causing DCC demo to fail.
skarg
2012-02-23 16:47:38 +00:00
0478d87d53
Added Append feature required by BACnet spec when File Offset is -1. Thank you Robert Bouwens!
skarg
2012-02-21 23:58:35 +00:00
b05fbf196c
Fixed file name in doxygen comment.
skarg
2012-02-21 22:10:05 +00:00
1c19bf7d09
Added checks in Error, Abort, Reject, and Acks for matching address and invoke ID so that out-of-order messages would not foul up the state machine and only the reply matching the request would be honored. Changed request so that an error message of segmentation-not-supported would trigger the read-property fallback mechanism.
skarg
2012-02-21 21:56:18 +00:00
48c756bc11
Removed checks for previous BVLC messages since that is not correct behavior for BIP, especially when a WhoIs, I-Am, ReadProperty sequence occurs. This was causing messages to be sent as broadcast instead of unicast.
skarg
2012-02-21 21:53:37 +00:00
43b3a58704
added define to pass make command define.
skarg
2012-02-17 04:15:16 +00:00
9e8c2b0927
Added explicit datalink_cleanup to all demo applications. Moved bip_cleanup() to port specific files. This works better for bacnet-stack DLLs.
skarg
2012-02-10 22:12:15 +00:00
2e6a060b26
Added volatile qualifier to ringbuffer library to be interrupt safe.
skarg
2012-02-10 22:10:17 +00:00
9226159c5d
Added MS/TP crc calculating demo application to use when writing articles that include example MS/TP code.
skarg
2012-02-07 23:54:15 +00:00
6c5fe45769
Changed buffer from volatile pointers to non-volatile data, to pointers to volatile variables.
skarg
2012-01-25 19:03:54 +00:00
bae2321abc
Fixed off by 1 error when checking length of string in WPValidateString()
petermcs
2012-01-21 10:30:23 +00:00
0f0c41d347
Added usleep for Tturnaround time before RS485 Transmit. Added tcdrain to wait for write to have written before returning. Thank you, Nikola Jelic!
skarg
2012-01-21 01:46:46 +00:00
52ea59f446
Removed MS C specific gettimeofday function from mstpcap.c as there is one in the timer.c in the Win32 port. Changed the conditional compilation in the Win32 timer.cto allow gettimeofday compile with MS C
petermcs
2012-01-17 07:46:53 +00:00
3f761a53dc
Added information about where to get the CMSIS and Standard Peripheral Driver library for STM32 project.
skarg
2012-01-16 16:46:43 +00:00
e0cf05f74a
Added in 76800 baud rate as it works on Win 7 with the B&B Electronics USOPTL4 USB adaptor that I have, YMMV. Added gettimeofday() function to allow me build with VS2008 C++ Express Edition
petermcs
2012-01-14 12:28:44 +00:00
6fefac808f
Added FIFO Pull function to remove one or more bytes from the FIFO. Added unit tests for FIFO Pull.
skarg
2012-01-13 17:56:55 +00:00
12d0d9f204
Created Rowley Crossworks AVR project for BDK port to ATmega644p.
skarg
2012-01-12 23:09:14 +00:00
e3e706ffa9
Increased number of cycles for testing FIFO.
skarg
2012-01-12 23:07:28 +00:00
79f5caf850
Corrected BACnet name in BDK port to clear end of string when new string is smaller than old string.
skarg
2012-01-11 22:18:56 +00:00
0fcd5132c2
Updated the example Visual Studio 10 project and solution files to build without errors. Thank you, Scott!
skarg
2012-01-09 23:29:11 +00:00
1006b642e7
I was thinking that this might need to be done to separate the head from tail in case head is incremented by ISR while this is called.
skarg
2012-01-09 23:16:53 +00:00
bf4cd368b0
Reverted r2140 as this breaks MS/TP and non-BACnet/IP builds. If this functionality is indeed required, then we will need to change the APDU dispatcher to include information with the service so that this can be discerned.
skarg
2012-01-09 22:52:59 +00:00
10b6e58f2c
Improved FIFO_Available by allowing the last byte to be available.
skarg
2012-01-06 18:52:44 +00:00
513663727f
Added function prototypes to support COV.
skarg
2012-01-06 18:52:22 +00:00
954d2b0079
Moved check for wild card Device Id to before call to rpm_ack_encode_apdu_object_begin so that the real Device ID is encoded in the response.
petermcs
2011-12-31 08:05:29 +00:00
a5f6477364
Moved check for wild card Device Id to before call to rp_ack_encode_apdu_init so that the real Device ID is encoded in the response.
petermcs
2011-12-31 07:58:13 +00:00
ad74c6d4ac
Corrected missing packet initialization in DLMSTP for several ports that may result in unusual REPLY-POSTPONED frames emitted for a DATA-EXPECTING-REPLY frame.
skarg
2011-12-29 03:37:38 +00:00
ef40b6e180
Removed superfluous ',' at end of last entry in enum definition which trips up some compilers
petermcs
2011-12-22 10:41:33 +00:00
cb620a9432
Made the perl bindings ReadProperty example more generic
gri6507
2011-12-16 23:25:56 +00:00
fd4a0ebb62
* Updated the perl bindings to work with the new style extract API and removed vestigial code * Updated the perl bindings readme.txt * Fixed a small bug in the new bacapp_print_value() function which incorrectly interpreted the return status from the snprintf function.
gri6507
2011-12-15 00:03:04 +00:00
6e82afde79
Another attempt to refactor the bacapp_print_value function into a print() and an extract() function. The original implementation used calloc() inside the extract() routine which forced all clients, including embedded builds, to have a heap. This was very heavy handed. The new solution is must more flexible. * If the client want to use the print() functionality, they will have to support calloc and string safe variable argument length function similar to snprintf. This seems reasonable because if you can print, then you can typically support these complex capabilities. * For clients that don't want to print, but still want to parse the bacpp value into a string, they can use the new extract() method, which only requires supports for snprintf. This would require a compile time definition of BACAPP_SNPRINTF_ENABLED. * For clients which don't want the overhead of these heavy handed methods, it is possible to set compile time flags to not inherit either the print() or the extract() functions.
gri6507
2011-12-12 16:22:04 +00:00
fcf2c4a8ba
Corrected BACnet Name in BDK port to use EEPROM instead of SEEPROM (it was overwritten by BO data).
skarg
2011-12-07 03:40:20 +00:00
4c78ada0ed
Changes from r2160 broke microcontroller ports compiles. Reverting until fixed.
skarg
2011-12-07 03:16:57 +00:00
0f54598505
Corrected bug in BACnet Name that prevented names longer than 6 characters from being written or read. Thanks for the bug report, Randall!
skarg
2011-12-03 16:02:29 +00:00
a5f6a1d77b
Adding the perl bindings example.
gri6507
2011-11-28 18:40:12 +00:00
2b433d72a7
Added the ability to parse the OBJECT_PROPERTY_VALUE into a string (bacapp_extract_value) in addition to outputting it to a stream (bacapp_print_value).
gri6507
2011-11-28 15:33:58 +00:00
d875b3fb8e
improved error handling to correctly process requestID and device address. Fixed a copy/paste bug where the ACK handler was for a READ_FILE instead of a WRITE_FILE
gri6507
2011-11-26 19:46:51 +00:00
087584e85e
Corrected baud rate setting for mstpcap demo utility. Thank you, Michael D!
skarg
2011-11-26 16:32:17 +00:00
d009a1a15e
Pulled in the changes from SVN commit 2145 (Makefiles default BACNET_PORT to linux only if that ENV VAR has not yet been specified) into the trunk.
gri6507
2011-11-25 23:30:11 +00:00
26681f7f39
Changed demo COV handler to reduce memory footprint, and to minimize the task cycle time. Also fixed COV clear race condition.
skarg
2011-11-23 18:52:53 +00:00
abc8135eff
Added ability of the SubscribeCOV demo to subscribe to multiple objects in the device.
skarg
2011-11-22 22:47:22 +00:00
d3d2e9d030
Updated the developer doc.
skarg
2011-11-22 22:46:38 +00:00
16ef8818ee
Moved optional properties to optional section.
skarg
2011-11-02 21:45:11 +00:00
ff3c0590f2
Extend handler_who_is_unicast() to broadcast I-Am anyway if the Who-Is request was an Original-Broadcast or Forwarded-NPDU.
tbrennan3
2011-10-28 14:43:06 +00:00
6eb2aef654
Fixed compiler error (copy/paste from last fix).
skarg
2011-10-28 14:15:10 +00:00
cbc62dd6c0
Extended the test for supported services for routed devices to the device's PROP_PROTOCOL_SERVICES_SUPPORTED. Support calling of Routed_Device_Service_Approval() with a NULL buffer if just testing for support.
tbrennan3
2011-10-27 20:34:45 +00:00
1eeaeda585
Little scripts to build or rebuild under MinGW (with complaints about unknown command "rem")
tbrennan3
2011-10-21 20:19:12 +00:00
710ac3d34c
Added checking in with each device (in the BAC_ROUTING case) to see whether it supports RD or DCC. Sends a Reject message if not supported. Added to the respective handlers.
tbrennan3
2011-10-21 17:02:11 +00:00
0291493fd2
Fixes a build error when BACAPP_PRINT_ENABLED=1 but PRINT_ENABLED isn't.
tbrennan3
2011-10-20 19:25:20 +00:00