NI VeriStand Add-on: AIT ARINC 429
Overview
The AIT ARINC 429 add-on allows users to use the AIT ARINC 429 devices inside NI VeriStand. This is an avionic interface bus standard.
Instructions for Use
To use the AIT ARINC 429 add-on:
- Add the custom device to your system definition.
- Import your AIT ARINC 429 database file. (some examples are included as well as a schema. Soon you will be able to edit and create them with AIT's "Flight Simulyzer" database editor GUI. )
- Configure your parameter's

Installing the AIT ARINC 429 Add-On
Follow the instructions in the included ReadMe.rtf file
Add-on Requirements to Run the AIT ARINC 429 Add-on
The nature of some add-ons requires additional software or hardware to function.
Software
This device was created for use with NI VeriStand. To use this custom device you must have the following software installed:
- NI VeriStand 2011 or later for latest version. There is an old version available for NI VeriStand 2010
- NI-VISA
- AIT ARINC 429 LabVIEW Driver 4.8.0 or later
- The download provided with this Add-On
Hardware
This add-on requires the following hardware. Any of these interfaces will work and have been tested. Other AIT or Legacy interfaces may work but are untested.
- PXI429-3U-4
- PXI429-3U-8
- PXI429-3U-16
- PXI429-3U-32
- ACX429-3U-8
- ACX429-3U-16
Additional Requirements to Modify the AIT ARINC 429 Add-On
Known Issues in latest revision
6. Cannot use two different databases of the same file name if you're using multiple instances of the custom device
9. The custom device does not support the discrete digital outputs of the hardware
12. Label/SDI buffers must have unique names or an error will occur upon loading the database file. For example, Label 5 and Label 6 cannot both have a label/sdi buffer named “Test”
14. Database file path is stored as an absolute path, not relative.
15. The custom device does not support timestamping incoming data
16. The custom device does not support lossless bus-level data logging
17. The custom device does not support setting the time synchronization source for the board (CLK10, IRIG)
19. Deployment can fail stating the driver VI is broken. Workaround: make a minor modification to your system definition and redeploy
23. When loading a database, you may see error 1088. This is cosmetic and can be ignored.
Change Log
2.0.0
- Mutation is required. Open, save, and close system definitions with system explorer to automatically mutate.
- <Feature> Acyclic transfers, block data transfers, and buffers of depth greater than 1 are now supported. This resolves known issue 11.
- <Bug> Fixed an issue causing error 1088 to pop up when loading a data base. This was a cosmetic error and didn't mean anything. There are still some cases that can cause this error. Please ignore it (known issue 23)
- <Bug> Fixed an issue causing systems with only RX channels or only TX channels to potentially fail deployment, or use too much CPU on the target.
- <Change> Upgraded dependencies to AIT ARINC 429 v4.8.0 or later. This resolves known issue 22.
- <Change> NI VeriStand 2010 is no longer supported. Version 1.9 of source and build for 2010 will stay attached here.
- <Change> There is a new level of hierarchy in the system definition tree when using this custom device. The 'word' level. Now, instead of being Channel -> Label -> Parameter... it is Channel -> Label -> Word # -> Parameter. Existing system definitions are mutated to this new hierarchy. Any mappings or aliases will continue to work, as items are simply moved and not deleted and re-added. However, if you have any workspace controls or test automation directly accessing the full channel path, after 2.0, the path will contain the word # in it.
1.9.0
- Mutation is required. Open, save, and close system definitions with system explorer to automatically mutate.
- <Feature> You can now specify how you want to address the module. By serial number, slotID, or index. Resolves known issue 13.
- <Change> Removed the ability to apply a license key for legacy hardware as this custom device relies on the AIT 429 driver 4.6 or later which does not support legacy hardware. Therefore this UI was simply confusing. Removed known issue 7 about legacy hardware.
1.8.2
- <Bug> Fixed Known Issue #20 that AIT Drivers 4.7 did not work with this add-on
- <Bug> Fixed an issue preventing the 2010 build of this add-on from working since 1.8.0
1.8.1
- <Bug> Fixed a critical issue that caused old data to be transmitted if two or more TX labels existed at different rates
1.8.0
- <Bug> Major performance issue seen in 2012+ HP loop duration fixed
- <Feature> Average CPU usage and write loop duration should be greatly reduced (sometimes an order of magnitude) because change detection is now used on TX values
- <Change> Loop duration status channels are now in nanoseconds
- <Bug> Errors should be reported more reliably in case of a catastrophic problem with read or write
- <Change> Loop late status channels have been removed. They did not function propely and often reported late when they were not. (Known issue 20)
- <Bug> Fixed known issue 18: the output loop duration channel was always zero
- <Bug> Fixed known issue 21: Worked around the significant performance degredation in the AIT 4.6.0 drivers (first used in 1.7.2) causing read and write loop slowness
1.7.2
- <Bug> Fixed an install issue with 2010 causing error 1172 when NI VeriStand is started. Note the new install steps in the readme.rtf
- <Bug> Fixed an issue with 2010 causing a cosmetic error after loading a database.
- <Change> Upgraded dependencies to AIT ARINC 429 SDK v4.6.0 or later.
- <Change> You must now install the AIT ARINC 429 LabVIEW SDK v4.6.0 or later to use this custom device. Note the changed install instructions.
1.7.1
- <Bug> Error 1031 will no longer show when refreshing the database in NI VeriStand 2012
- <Feature> The installed custom device version will now be shown on the main page.
1.7
- <Bug> Custom device now works on Windows without error.
- <Bug> RX labels will now import label FF. Previously we only imported 00-FE
- <Feature> Custom device now supports read/write of buffers that are a combination of label and SDI. Existing custom devices that are linked to a database that already contained label/sdi buffers will not show the SDI information inside system explorer unless you refresh the database import. However, the SDI information will now be used correctly at run time. The refresh is just cosmetic.
- <Feature> Parameter information (start bit, number of bits, scale factor, scale offset, sign) can now be stored inside the database XML. See example XMLs for how to define this.
- <Feature> New progress bar when refreshing the database.
1.6
- <Bug> Add on version 1.5 included windows only DLLs instead of RT compatible DLLs. This is resolved.
1.5
- <Change> Upgraded dependencies to AIT 429 driver 3.13
- <Bug> Resolved known issue 10, the custom device will now work with XML files generated by Flight Simulyzer
- <Change> Legacy interface support dropped
1.4
- <Change> Added a mutation step for upgrading from previous versions of this add-on. Please follow the instructions for mutation at the top of the read me
- <Bug> Custom device “DLLs” folder did not contain all the required DLLs
- <Bug> Installation instructions did not specify that NI-VISA was required to be installed on windows and on the RT PXI target (it is)
- <Bug> Custom device would fail to deploy to a Real-Time target with error code 1003
1.3
- <Change> First public release and now using a released, non-beta version of AIT's driver... version 3.5. You must reinstall the custom device!
- <Feature> Parameters can now have scaling information entered to change the raw data into engineering units
- <Feature> a license key can now be entered on the main page to unlock the use of this custom device on legacy hardware
- <Feature> The database file is now checked for changes and the user is alerted
- <Feature> New refresh database button allows refreshing a database without clearing it and readding it
- <Feature> Custom device can now be copied and pasted within the same system definition file or from one to another.
- <Change> Read rate is now set by selecting output in the system explorer.
- <Bug> Resolved a major issue causing input data corruption
1.2
- <Bug> Fixed a serious bug causing performance issues and degradation over time
- <Feature> User can now disable and enable label transmission while running
1.1
- <Bug> Fixed several bugs preventing the operating of more than one custom device on a single target
- <Feature> Warnings are now reported same as errors
- <Feature> performance increase for the RT engine
Support and Contact
This add-on is provided as open-source software. If it does not meet your exact specification, you are encouraged to modify the source code to meet your needs. It is not officially supported by National Instruments.
If you encounter a problem with this add-on, or if you have suggestions for a future revision, please post to the forum for this add-on AIT ARINC 429 Add-On Feedback. You must use this feedback forum for support. Do not call National Instruments for support for this add-on.
National Instruments does not support this code or guarantee its quality in any way. THIS EXAMPLE PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
Stephen B