Time

From BACnet Wiki
Jump to navigation Jump to search

BACnet Time management is somewhat confusing. Here is a summary of a few of the issues.


"Timezone" is defined as a combination of "Offset" + "Daylight Savings". So a "timezone" _includes_ a rule for calculating DST..... which makes it NOT the same as the colored bars on common timezone charts. e.g. https://www.timeanddate.com/time/map/ is _wrong_ (!) It is really displaying UTC offsets of the world.


For example

  • the Native American city of "Navajo Nation" which is _inside_ Arizona, is in a _different_ Timezone from Arizona itself.


Also for example

  • MST (Mountain Standard Time) is a Timezone
  • MDT (Mountain Daylight Time) is a *DIFFERENT* Timezone...


All of the above examples, however, have the same UTC_Offset.


From the BACnet Specification:

BACnet 12.11.25

UTC_Offset

The UTC_Offset property, of type INTEGER, shall indicate the number of minutes (-1440 to +1440) offset between localstandard time and Universal Time Coordinated. The time zones to the west of the zero degree meridian shall be positivevalues, and those to the east shall be negative values. The value of the UTC_Offset property is subtracted from the UTCreceived in UTCTimeSynchronization service requests to calculate the correct local standard time.


  • My UTC_Offset is 0.
  • Your UTC_Offset is -60 minutes


  • My standard time is UTC-0minutes
  • Your standard time is UTC-(-60)minutes


  • my local time is standard time + 60minutes for Daylight savings = UTC+60
  • Your local time is standard time + 60minutes for daylight savings = UTC+120


  • My timezone (summer time) is +60 minutes
  • Your timezone (summer time) is +120 minutes


local time is:

  • mine is = UTC - UTC_Offset + 60 minutes for DST = UTC - 0 + 70 = UTC+60 minutes
  • yours is = UTC - UTC_OFFSET + 60 minutes for DST = UTC - (-60) + 60 = UTC+120 minutes