Commit Graph

87 Commits

Author SHA1 Message Date
skarg e095715cec Moved include files for demo objects into demo/object, and updated makefiles to accommodate the move. This allows developers to create and maintain their own objects and the interfaces to them. 2011-03-22 20:53:13 +00:00
skarg 2f9d601178 Removed BACnet/IP explicit calls in demo epics (with ifdef) to allow to compile for MS/TP or Ethernet. Thank you, 55792882! 2011-01-14 15:22:16 +00:00
skarg 2a0bf4926a Performed standard indent script indent.sh on project files. 2010-12-15 19:02:40 +00:00
skarg 8f1e8d82cd Changed Object Table from a global to a local variable and added a Device function to initialize it. 2010-12-13 03:41:55 +00:00
skarg 20ca252a8d Fixed compiler warning messages. 2010-12-12 05:42:42 +00:00
skarg d5b8dee34e Updated make to $(MAKE) as recommended best practice. 2010-12-12 05:42:13 +00:00
tbrennan3 b768518a9d Now using Who-Is-Remote() to get the address binding if targeting a routed Device.
Eliminated empty braces for the Device object in its own list of objects.
2010-12-03 06:54:02 +00:00
tbrennan3 de4ead47c6 Improvements to bacepics for the routing case; can now specify a DNET on the command line.
Not all there yet, however, for the routed case.
Added null tests and dummy string defaults in Add_Routed_Device().
2010-12-02 22:05:59 +00:00
bacpack 6a523e4d23 First attempt to clean-up Makefiles.
1. Top (main) makefile defines build configuration variables and export them for sub-makes to use. BAC_ROUTING is defined here - is has been removed from config.h.
2. A new makefile has been added in demo subdirectory. It builds the demo applications. NOTE: the 'ports' target is not build.
2010-11-25 04:17:58 +00:00
bacpack 502cbcc2e6 1. In device.c, the Object_Table[] is now extern; it has to be defined by the user application (see demos); only the required BACnet objects have to be included.
2. Objects' .h files define macro to be used to initialize Object_Table[].
2010-11-13 19:57:29 +00:00
bacpack a639864cc8 In bip.c getter and setter functions of IP address and Port number expect and return values in the network byte order. All ntoh and hton were eliminated from bip.c.
All other modules changed to be consistent.
arm7 port left unchanged.
2010-11-04 13:30:26 +00:00
tbrennan3 a5f24fa19f Tweaked the comments for better Doxygen output. 2010-10-13 19:00:57 +00:00
tbrennan3 44b7e02721 Tweaked the debug building and printing a little - I hope this works OK for everyone. Let me know if not.
Tamped down a few warnings.
For the demo/server Makefile, made an either/or choice between executable size optimization (normal) or gdb debug info and no optimization.
2010-09-27 20:27:29 +00:00
skarg 9569f2c536 Fixed EOL and performed standard indentation. 2010-09-16 22:00:47 +00:00
skarg 50a8a3f2fb Changed some plumbing for printing values to handle the case of a Present-Value enumerated property from a proprietary object type. 2010-09-02 13:16:27 +00:00
skarg 0dcc38b020 Corrected errant APDU timeout in epics demo. 2010-08-26 14:23:00 +00:00
tbrennan3 968687b4f4 For epics creation, if not showing the actual values, replace Present_Value and Priority_Array values with a single question mark, just as VTS3 wants it. (Ie, print "?" and not "{?, ?}" ).
Various small fixes to remove warnings and make assertion statements more meaningful when they are tripped.
2010-08-24 20:04:43 +00:00
skarg b769dcbe1d Indented. 2010-08-18 00:11:35 +00:00
skarg 6c9ef7211d Fixed indent script, and indented files. 2010-07-19 23:19:54 +00:00
skarg 6450255be6 Corrected reading of ALL to not read with array index 0. 2010-07-16 16:10:28 +00:00
skarg 0b5efa5be5 Changed -L=lib to -Llib in all GNU Make makefiles since it was wrong and causing problems on cross compilers. Thank you, Magno! 2010-07-14 12:55:37 +00:00
skarg d088bc354c Removed usage of key (analog input 0 is key=0) to determine end of object list. 2010-06-26 03:51:23 +00:00
tbrennan3 15f8e6741d Corrected the Object Names for 37 and 38 (and friendlier text now).
In bacepics, now counts errors and displays error count at the end (if any).
Always prints out the Device Address Binding as a '?' if it is Null.
2010-06-01 21:21:20 +00:00
skarg 9ca6961c15 Cleaned up warnings on GCC on Linux. 2010-05-23 12:33:45 +00:00
skarg d95863d89c Corrected epics demo handling of proprietary properties. 2010-05-21 14:25:39 +00:00
tbrennan3 1526557b54 Added arguments to bacepics which let you specify a source port to use (besides 0xBAC0) and a target MAC to use.
Combining these lets you run bacepics against the localhost's Device at port 0xBAC0.
One small change in dlenv_init() to support this (don't force source port to 0xBAC0 if that's not what we want).
2010-05-14 19:09:53 +00:00
tbrennan3 c69686c99b Fixed 2 problems that Steve found:
1) Did not properly handle when RPM was not supported.
2) Did not handle small MAX_APDU values well.
2010-05-14 14:44:27 +00:00
skarg bef726d837 Corrected compile error due to C++ comment conversion. 2010-05-05 15:02:43 +00:00
skarg 710cfccfef Indented using indent script. 2010-05-04 21:06:26 +00:00
skarg b2368acc27 Fixed up EOL for subversion. 2010-05-04 21:04:26 +00:00
skarg 74be776295 Cleaned up C++ comments 2010-05-04 21:01:48 +00:00
tbrennan3 1c8a58f158 Final fixes (I believe, for now) for EPICS generation.
Now has proper support for State Text and Subordinate Annotations text arrays, even very large ones.
Now has 3 ways, of descending throughput, for all Objects and all their properties:
a) Get all object properties with RPM for ALL
b) Get individual properties with RP for Array_Index = ALL
c) Walk through a too-large array one index step at a time.
2010-04-26 20:09:41 +00:00
tbrennan3 8dd671d5a1 Sorry about the missing header; adding it in here.
Some comment tweaks for Doxygen.
2010-04-17 15:39:20 +00:00
tbrennan3 fac19dff98 Made bacepics' output more correct for VTS3 EPICS parsing.
Put command line argument checking and usage printing into their own functions,
and added an optional argument to show values instead of '?' for properties like Present_Value.
Added screening of properties that should normally be replaced with '?' on output.
Added a few enums to bactext (Node_Type, Polarity).
2010-04-16 20:52:40 +00:00
tbrennan3 4d90a024c6 Extensively revised bacepics to produce a full list of objects, not just the required properties of just the Device object.
Added a state machine which tries to get all properties in one RPM call first, then falls back to getting all object properties and calling RP once for each property, except the Device Object List, which calls RP once for each ObjectID in the list.
Adding support for Structured Views but not complete yet.
2010-04-15 20:51:55 +00:00
tbrennan3 026a489fc5 Answered my own questions, after some thought:
Made the epics pretty-printing generate shorter lines by only decoding 4 bits per line (hurts my byte-centered soul, but does look better).
Moved the big comment section out of demo/server/main.c out to a new header, server.h.
Provided doxygen links to the functions called in the server demo.
2010-03-23 12:32:46 +00:00
tbrennan3 5a99f0662c Commented the demo/server in a new module.
Embedded its PICS in the server documentation (hopefully a good idea).
Added a PrettyPrintPropertyValue() function to the epics program (hopefully OK format).
Added a function apdu_service_supported_to_index() to the apdu code to translate a SERVICE_SUPPORTED_ enum to its SERVICE_CONFIRMED_ or SERVICE_UNCONFIRMED_ index, and used it when PrettyPrinting services.
2010-03-23 04:55:11 +00:00
skarg d4b39c6b59 Changed CC and AR in demo makefiles to make cross compiling the demo applications easier. 2010-03-01 19:01:40 +00:00
skarg 2a68202503 Updated GNU make Makefile for cross compile by changing CC=gcc to CC:=gcc. 2010-02-27 04:02:27 +00:00
skarg f0863c0238 Refactored RP, WP, RPM to reduce coupling with objects for Linux and Win32 ports. 2010-02-10 16:27:31 +00:00
skarg ba795a3d2e Moved key.c and keylist.c into library for better management. Thanks Piotr! 2010-01-13 18:06:42 +00:00
skarg c04e69da8c Fixed EOL, indent. 2009-10-24 17:02:59 +00:00
skarg a28760bf56 Added init functions to object header files. Finished refactoring the demo read and write property handlers to use function tables. 2009-08-23 03:26:30 +00:00
skarg 7032168ff5 Ran the fixup, indent, and comment scripts to standardize the source code. 2009-05-24 01:49:21 +00:00
skarg 7916c7a6de Consolodated the datalink environment variable for building demos on Linux and Windows into a single module (dlenv). Adjusted most demo makefiles. 2009-05-22 01:45:38 +00:00
skarg 94d55e0294 Cleaned up Borland build files (whitespace) and subtle bug in lib makefile. 2009-04-19 14:39:20 +00:00
skarg eb5838c3d5 Cleaned up some makefiles. 2009-01-17 12:49:47 +00:00
skarg e6f683a43b Added BUILD=debug to linux/mingw makefiles. 2008-11-20 16:26:39 +00:00
skarg 0ffbb64c13 Indented with standard indent rules. 2008-08-23 12:38:26 +00:00
skarg 9c316a65dc Moved APDU Timeout and Retries to apdu module. 2008-08-17 02:12:58 +00:00