Note that this article replaces KnowledgeBase 58KEI82F: How Can I Use NI Serial Hardware with Baud Rates Over 3 Megabaud? Some NI manuals may still reference the previous document. If you were redirected from the previous KnowledgeBase URL, please update your bookmarks accordingly.
Under certain conditions, some RS-485/RS-422 NI Serial products can be successfully used with baud rates over 3 MBd. The following boards support higher baud rates up to 10 MBd MBd using a Windows or Phar Lap operating system:
Note: NI Linux RT does not support baud rates higher than 3 MBd
Enabling the high baud rate support will allow you to disable the NI-Serial driver check that verifies baud rate settings sent by the user.
Caution: This will result in all PCI/PXI/PCIe/PXIe boards to have this check disabled in the driver even though using some of these with unsupported baud rates may result in errors.
Optionally, you can use the attached windows registry file, EnableOverrideMaxBaudRate.REG, to add this registry value.
At any point, you can disable the ability to specify higher baud rates by deleting this value, setting it to 0, or using the attached DisableOverrideMaxBaudRate.REG file to delete the value automatically.
Note: This only applies to Phar Lap ETS Real-Time targets. NI Linux Real-Time OS does not support higher baud rates.
These products support any arbitrary baud rate up to 3 MBd with an accuracy of 1.3% of the selected baud rate. Above 3 MBd only certain baud rates can be generated. The specific baud rates that can be set above 3 MBd can be calculated using the following formula:
Baud Rate = 400 / (m*n)
where m is an integer between 4 and 16 and n is an integer between 8 and 31. The specific baud rates above 3 MBd are also listed in the table below.
Table 1: Supported Baud Rates (MBd) above 3MBd
|
An indication of a difference in baud rates is the presence of framing errors in communication. You may experience over-run errors at baud rates higher than 3 MBd when no flow control is used. Because of this, NI recommends you use some form of flow control (CTS/RTS or Xon/Xoff) when using high baud rates. This will allow you to properly communicate with a device at the high baud rate without over-run errors or missing data.
The theoretical maximum throughput for baud rates can be calculated by this formula:
Maximum Throughput = Port Count * Baud Rate / Number of serial bits in a byte
The number of serial bits in a byte is usually 10 (1 start bit, 8 data bits, no parity bit, 1 stop bit). There are several factors and considerations that can affect the maximum throughput:
Other factors such as system specifications, current CPU workload, operating system, application software efficiency, etc. also can impact the throughput performance.
Figure 1: Typical Throughput vs. Baud Rate of one PXIe-8431/16
NI Serial devices share bandwidth across all active ports, therefore, for baud rates higher than 3MBd the devices are more suitable for applications involving data transmissions in short, fast bursts. Applications that have large amounts of data transmitting at or near the theoretical maximum throughput will be slowed by flow control.