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:
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).
However, several factors will limit the throughput. Two major factors are listed below:
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
In this example, the ports in each test were set to the same baud rate, although each port can be set independently.
Applications where data is transmitted in short, fast bursts will be mostly unaffected by flow control and are ideal applications to use with the NI Serial devices. Applications that must have large amounts of data transmitting at or near theoretical maximum throughput will be slowed by flow control.
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.