diff --git a/bacnet-stack/doc/README.developer b/bacnet-stack/doc/README.developer index 2543c7f0..ebdeed4b 100644 --- a/bacnet-stack/doc/README.developer +++ b/bacnet-stack/doc/README.developer @@ -70,11 +70,14 @@ example object files in the BACnet stack include: * demo/object/ai.c - analog input object demo * demo/object/ao.c - analog output object demo + * demo/object/av.c - analog value object demo * demo/object/bacfile.c - File object demo * demo/object/device.c - device object demo * demo/object/bi.c - binary input object demo * demo/object/bo.c - binary output object demo - * demo/object/lsp.c - life safety point demo + * demo/object/bv.c - binary value object demo + * demo/object/lsp.c - life safety point object demo + * demo/object/lc.c - load control object demo The BACnet stack includes a number of core files that handle the service packets that come in from the datalink layer. The core files include: @@ -82,17 +85,19 @@ that come in from the datalink layer. The core files include: * apdu.c - handles dispatching the services to the proper handlers * bacdcode.c - primitive BACnet datatype encoding and decoding * bacstr.c - BACnet string encoding and decoding - * bigend.c - determines if CPU is bigendian - * datalink.c - generic API for all datalink layers + * bacint.c - BACnet integer encoding and decoding + * bacreal.c - BACnet REAL encoding and decoding * npdu.c - handles dispatching of the network message to the apdu -dispatcher. It would be where routing is handled if the stack supported more -than one physical layer. + dispatcher. It would be where routing is handled if the + stack supported more than one physical layer. -The DataLink Layer controls orderly access to the physical medium. The following -files are used for the datalink handling in this BACnet stack: +The DataLink Layer controls orderly access to the physical medium. +The framework is listed in the header file, and the code is nornally +located in the ports/x/ directory. The following files are used for +the datalink handling in this BACnet stack: * bip.c - BACnet/IP functionality - depends on bip_init.c in port/xx - * dllmstp.h - MS/TP datalink layer (see also dlmstp.c,mstp.c,crc.c) + * dlmstp.h - MS/TP datalink layer (see also dlmstp.c,mstp.c,crc.c) * arcnet.h - ARCNET datalink layer functionality API * ethernet.h - BACnet Ethernet datalink layer functionality API diff --git a/bacnet-stack/doc/README.faq b/bacnet-stack/doc/README.faq index d84de0d4..4b4a380b 100644 --- a/bacnet-stack/doc/README.faq +++ b/bacnet-stack/doc/README.faq @@ -232,6 +232,9 @@ PROP_PROTOCOL_OBJECT_TYPES_SUPPORTED (especially in bacdcode.c) * Compile and Link. If the linker fails, then that function was needed. + * Some compilers and linkers have garbage collection + for unused code/functions. GCC has this feature: + http://gcc.gnu.org/ml/gcc-help/2003-08/msg00128.html Q-15: I have downloaded the BACnet stack but can't get demo/server to work. I am using a single computer. In one console window I run diff --git a/bacnet-stack/doc/README.msvc b/bacnet-stack/doc/README.msvc index 34a1e05d..6a98e7b7 100644 --- a/bacnet-stack/doc/README.msvc +++ b/bacnet-stack/doc/README.msvc @@ -47,7 +47,7 @@ its datalink layer. In Visual C++, add a Preprocessor Definition by: 3. Select the "C/C++" tab (3rd Tab) 4. Select the Category: General 5. You can see the "Preprocessor Definitions:" box -6. Type BACDL_BIP=1 in that edit box (using a comma if necessary) +6. Type BACDL_BIP in that edit box (using a comma if necessary) 7. Press OK 8. Compile the entire project again... @@ -71,6 +71,6 @@ In Visual C++, add a Preprocessor Definition by: 3. Select the "C/C++" tab (3rd Tab) 4. Select the Category: General 5. You can see the "Preprocessor Definitions:" box -6. Type TSM_ENABLED=1 in that edit box (using a comma if necessary) +6. Type MAX_TSM_TRANSACTIONS=0 in that edit box (using a comma if necessary) 7. Press OK 8. Compile the entire project again... diff --git a/bacnet-stack/doc/README.todo b/bacnet-stack/doc/README.todo index 96c3f31b..073dc9c5 100644 --- a/bacnet-stack/doc/README.todo +++ b/bacnet-stack/doc/README.todo @@ -3,7 +3,7 @@ Here are some things to do: A. Finish demo/epics/main.c - EPICS demo. Use object property lists. B. Finish demo/object/lo.c - Lighting Output object demo -C. Complete bvlc.c and use it instead of or in compliment to bip.c +C. Finish bvlc.c and use it instead of or in compliment to bip.c D. Complete client demo for ReadPropertyMultiple from rpm.c E. Add HTTP demo like bacnet4linux F. Add subscribe COV support in server demo. @@ -17,10 +17,11 @@ M. Add function headers to each module and function with doc-tags for some document generator like doxygen, robodoc, or Natural Docs. Wikipedia has a comparison of generators at: http://en.wikipedia.org/wiki/Comparison_of_documentation_generators -N. Add option to address to use file store and demos to use file store +N. Add option to address module that use file store address cache instead of having to send who-is for each query. - This will make scripting cleaner. + This will make scripting cleaner/effecient. O. Convert object methods to use an array of object methods for ReadProperty and Device object counts, ids, and names. P. Convert datalink methods to use function pointers that can be overridden in main.c. +Q. Create BACnet router code that uses more than one datalink.