# Difference between revisions of "BACnet MS/TP"

From BACnet Wiki

Line 40: | Line 40: | ||

So [[NPDU]]max = [[NSDU]]max + [[NPCI]]max = 480 + 21 = 501 | So [[NPDU]]max = [[NSDU]]max + [[NPCI]]max = 480 + 21 = 501 | ||

− | And so [[MPDU]]max = [[NPDU]]max + | + | And so [[MPDU]]max = [[NPDU]]max + 11 (above) = 512 |

## Revision as of 13:04, 19 November 2018

BACnet "Master-Slave/Token-Passing" is the optional, RS-485 based physical layer for BACnet. It is based on cheap, relatively slow, serial communications.

Starting with Addendum 135-2008ab, 9600 and 38400 are the required baud rates and all of the others (19200, 57600, 76800, and 115200) are optional

0x55 | Framing 1 |

0xFF | Framing 2 |

Frame Type | |

Dest MAC | |

Src MAC | |

Len MSByte | |

Len LSByte | |

Header CRC | |

Data | This is the NPDU, if len non-zero |

Data CRC MSByte | if len non-zero |

Data CRC LSByte | if len non-zero |

Optional EOF (0xFF) | if USART cannot indicate outgoing shift register clear) |

NSDUmax = max ( APDUms/tp, RPDU ), and Prior to Revision ** (prior to 135-2006), was 480 bytes.

NPCImax = 9 + 6 byte MAC + 6 byte MAC = 21

So NPDUmax = NSDUmax + NPCImax = 480 + 21 = 501

And so MPDUmax = NPDUmax + 11 (above) = 512

APDU BBMD BVLC BVLL DADR DNET Encoding I-Am LSAP MAC NPCI NPDU NSAP NSDU SA SADR SNET |

Edit this box. |