Menu

BACnet for Dynamic C / News: Recent posts

Release 14

I had hoped to have fully synchronised the Dynamic C stack and the Standard
C stack for this release but there are not enough hours in the day... I think
There are enough fixes and improvements in this code to warrant a release and
it has been FAR too long since I did this last.

This release has been used extensively on DC 10.66 as that is my current
production platform for the GET-1032 family. I am transitioning to DC 10.72
but have only had time to test that everything builds properly with DC 10.72
and not do proper testing of each platform on the boards. I don't think
there should be any issues with DC 10.72 as it is mostly incremental
improvements and support for more recent RCM6xxx modules.... read more

Posted by Peter Mc Shane 2015-02-15

Release-013

This release contains the following changes:

1. Support added for the GET-1032BD controller from GLAS Energy Technology (http://www.glasenergytechnology.ie).
2. Incorporates all changes up to revision 2095 of the Standard C version of the stack.
3. Notification Class object added. Intrinsic reporting added.
4. Write property now returns int to allow for abort/reject error return.
5. Lots of changes to reduce code and data size and increase performance.
6. Write Property Multiple Service added.
7. Get Alarm Summary Service added.

Posted by Peter Mc Shane 2011-09-26

Release-012

This release brings the stack up to date with revision 1946 of the C version of the stack.
Changes include:
1. Minor fixes to work with Dynamic C 10.66. Related to the change from 31 significant characters for variable names to 63.
2. Numerous changes to keep track with the C version of the stack and/or fix small bugs.
3. Improvments to the gateway virtual routing support.
4. MS/TP improvements based on testing with a real MS/TP router.
5. Additional MS/TP statistics to aid in trouble shooting.

Posted by Peter Mc Shane 2011-04-21

Release-011

This release adds initial support for developing gateway devices and brings the stack up to date with revision 1862 of the C version of the stack.

This release contains the following changes:

1. The stack now supports implementing a router to a network of virtual devices which can be used to create gateway products which map devices from other protocols to BACnet as a collection of devices.

2. Improvements in the code for translating data between local and BACnet formats.... read more

Posted by Peter Mc Shane 2010-11-22

Release 010

This release concentrates mostly on improving the ease of use of the stack for programmers and adding more of the handlers and senders from the C version of the Stack.

This release contains the following changes:

1. MS/TP server only demo app added to the RCM5700 port. This demonstrates how to build a BACnet device with just server functionality which is all that is needed for many simple BACnet devices. This app can be built without the user interface to reduce code size even further.... read more

Posted by Peter Mc Shane 2010-08-06

Release 009

This release adds the RS485 based BACnet MS/TP network option to the stack. This allows communications over inexpensive 2 or 3 wire cabling over distances of up to 1200m.

I have tested MS/TP with the BL5S220, XG4500, RCM5600W, RCM5700 and RCM6710 products. For the RCM based products I used the serial interface accessory bord he delux development kit and an RS232 to RS485 convertor from B&B Electronics (Model number 485SD9TB) but I'm sure other convertors would work.... read more

Posted by Peter Mc Shane 2010-07-21

Release 008

This release continues the work to improve the integration of the stack with "normal" library practices for Dynamic C and increasing the number of devices supported (if you have a particular Rabbit 4000, 5000 or 6000 based device you want supported and can supply me with a device I can probably sort something out but for the moment I can only work with what I have)..

There is now a bacnet_tick() function which performs the periodic housekeeping functions for the stack.... read more

Posted by Peter Mc Shane 2010-07-04

Release 007

This release has a number of changes in it which help to improve the quality of the code, start the process of making the stack behave more like a normal Rabbit Library and adds support for some more devices including the new RCM6710 minicore module.

The handling of invalid requests in the ReadProperty and ReadPropertyMultiple services has been improved to bring them into line with the responses expected by the BTL tests.... read more

Posted by Peter Mc Shane 2010-06-24

Release 006

This release supports Dynamic C version 10.64 (I have built and run the demo app on 10.50, 10.56, 10.60 and 10.62 as well).

The primary changes for version Dynamic C 10.64 relate to the use of the const modifier which is now fully supported by Dynamic C.

In addition I have changed the data type for uint8_t from char to unsigned char if version 10.64 or greater of the compiler is used as unsigned char is now supported.... read more

Posted by Peter Mc Shane 2010-05-16

release-005

This release contains a couple of fixes for issues and some additions to bring the stack up to date with revision 1668 of the main C stack.

The more serious of the issues fixed relates to the storage of data for the trend logs. Dynamic C will happily allow the allocation of the arrays for 8 logs with 1000 entries each but cannot generate code to access them correctly using array references as they are over 32K bytes each.. The code it does generate causes random writes to memory depending on the size of the arrays (I spotted it when I tried 8 logs of 4000 entries). I've re-factored the code to use pointers to access the data which should work correctly in all cases.... read more

Posted by Peter Mc Shane 2010-04-22

release-004

This release has fixes in the BACnet/IP support to allow the stack work properly when the BBMD_ENABLED flag is false. This allows the building of a device which has BACnet/IP support without BBMD support and so uses less memory and CPU resources.

There is also support for non contiguous object indexes added to the device object. This makes it easier to have a centralised configuration storage for some or all of the objects and pick out the objects of a particular type even if they are not located in contiguous locations in the storage.... read more

Posted by Peter Mc Shane 2010-04-06

Latest Release

The file release-002 has some minor updates to the code including:

Bringing the handling of instance number and index into the configuration info in Analog Input objects into line with the rest of the objects.

Fixing some minor errors in the device object.

Silincing some minor warnings in Dynamic C 10.50/56 which didn't occurr in 10.60.

Posted by Peter Mc Shane 2010-03-18

New resource for Rabbit development

This project provides a new network protocol for use in Rabbit based systems developed with Dynamic C.
BACnet is an international standard communications protocol designed for Building Automation Systems (see http://www.bacnet.org for more details).
The initial release of this stack supports BACnet/IP on the BL4S100 family of single board computers but it should be easy to port it to other Rabbit based products which support TCP/IP.
I hope to be able to add BACnet over ethernet and BACnet MS/TP in the future to increase the usefullness of the stack (BACnet over ethernet should require less system resources than BACnet/IP and BACnet MS/TP requires only an RS485 interface to work).

Posted by Peter Mc Shane 2010-03-08
Monday.com Logo