Abaco Systems, Inc.

Goleta, California

(805) 965-8000

 

Release Notes for CEI-x30-SW Distribution Version 5.13A

 

WARNING: INFORMATION SUBJECT TO US EXPORT CONTROL LAWS.  This distribution contains technology within the definition of the Export Administration Regulations (EAR) and is subject to the export control laws of the US Government.  EAR99 is applicable.

 

*** IMPORTANT NOTE FOR SELECT WINDOWS INSTALLATIONS ***

 

This distribution has eliminated the use of SHA-1 for code signing, completing the migration to the more secure SHA-256 standard across all supported Windows versions, (except 32-bit XP, which is an unsigned driver).  Windows version 7 and 64-bit Server 2008 R2 requires prior installation of SP1 and update KB3033929 to support drivers signed with SHA-256.  Supported Windows operating systems are:

 

Windows 10, 8.1, 8 and 7 (32-bit and 64-bit)

Windows Server 2008R2 and 2012R1+R2

Windows XP (32-bit)

 

*** IMPORTANT NOTE FOR RAR-PCIE USERS ***

 

This CEI-x30-SW distribution is incompatible with RAR-PCIE firmware versions 4.11 & 4.12 and includes an RAR-PCIE firmware update.  It is recommended you reprogram any RAR-PCIE acquired prior to October 2015 using the flash programmer application provided. 

 

*** END IMPORTANT NOTES ***

 

This is the distribution media for the CEI-x30-SW, API Version 5.10.  It contains an API (Application Programming Interface) library for use with all CEI-x30 products.  It also contains example code in source form and demonstration executables.  The API routines are documented within the distributed source and the CEI-x30 User's Manual.

 

This document covers product release notes and history.  Supplemental information on installation, removal, and distribution contents can be found in the file:

 

    Install.html  - Installation notes for CEI-x30-SW software.

 

Linux kernels supported by this CEI-x30-SW distribution are documented in the file Linux_support.txt.

 

Compilation Notes

 

Microsoft Visual C++ 6.0 was used to build the default Windows 32-bit API library and Test Config executable.

 

Microsoft Visual Studio 2008 was used to build the Windows 64-bit API library and respective Test Config executable, as well as an additional version of the 32-bit API library and all .NET API and example application solutions.

 

When compiling the API under either toolset, you must declare the compiler directive /Zm500 to account for the large static data content.

 

Microsoft Visual Basic 6.0 SP5 was used to build the Visual Basic example application.

 

Overview

 

The CEI-x30 API provides the essential interface to configure CEI-x30 products and process the ARINC protocols.  View the example source file TST_CNFG.C for a demonstration of the order in which the API functions should be utilized in your application.

 

Release Notes - Version 5.13A – 20 October 2021

 

Release the updated common Avionics VxWorks Driver Package.

No API changes were made to the Version 5.10 baseline.

 

Release Notes - Version 5.10 – 7 January 2020

 

1) Modified the VxWorks distribution to include an updated VxBus2 Driver Package.

 

2) Added a 10ms delay between assignment of the DAC for Discrete I/O Input Threshold (AMC-A30 only), and the assignment of the DAC for IRIG Receiver Threshold. 

 

3) Deprecated support for 32-bit and 64-bit Windows Vista, Server 2008R1, 32-bit Windows Server 2003R1 & R2, and 64-bit Windows XP.

 

Release Notes - Version 5.02A – 11 June 2019

 

1) Updated the "Device Selection" section of the Windows installer to indicate that the RCEI-830A or RAR-XMC may also be installed on a Thunderbolt expansion adapter.

 

2) Added "TB3-TO-CMC-LP_Users_Guide.pdf", the User's Guide for Abaco's ThunderboltTM 3 expansion adapter which contains important information about operating an RCEI-830A-TB or RAR-XMC-TB in a Windows Thunderbolt environment.

 

3) Integrated the latest version of "CEI-x30 Product Line Hardware User Manual.pdf" into the Windows distribution.

 

4) Updated the VxWorks distribution to include an updated CDF file for the VxBus Gen 2 driver.

 

5) No change to any API library source/binaries or example source/binaries since API v5.00.

 

Release Notes - Version 5.02 – 1 November 2018

 

1) Updated the Windows 10 driver packages and low-level interface libraries to resolve an intermittent crash issue on certain computers.

 

2) Added hardware interrupt support for 32-bit programs under 64-bit Windows 10.

 

3) Updated the Windows distribution to include the latest released RAR-PCIE Firmware Flash Programmer utility (which supports version 5.40 firmware).

 

4) Updated the Linux distribution to include the latest Linux driver/low-level support package.

 

5) No change to any API library source/binaries or example source/binaries since API v5.00 (only drivers and low-level interface libraries were updated for this release).

 

Release Notes - Version 5.00 – 22 December 2017

 

1) Added support for the Avionics Common VxWorks 7 VxBus device driver.

 

2) Included support for a custom API build supporting a reduced functionality API source code set and build, using the CERTIFICATION_BUILD compiler directive.  Files affected include CDEV_API.C, CDEV_API_RX_FILTER.C, and CDEV_API_CFG.H.

 

3) Modified the ar_set_device_config routine receiver configuration assignment processing to avoid a receive channel buffer reset for modification to attributes that do not impact message size, merged/individual receive buffer selection, or a baud rate change.

 

4) Modified the ar_set/get_device_config routines to return the status value ARS_INVHARVAL if any attempt to interact with IRIG features is attempted by the application for a board on which IRIG is not available.

 

Release Notes - Version 4.90 – 21 December 2016

 

1) Rebranded the Windows, VxWorks, Linux, and Integrity device drivers for Abaco Systems, Inc.  This includes a signed driver package for Windows.

 

2) Added support for the RAR-MPCIE, an ARINC 429/717 mini-PCI Express adapter.

 

3) Added a native C# API class wrapper and C# ARINC 429 example application.

 

4) Added the API routine ar_assign_scheduler_start_offsets, supporting the software feature to the assign the appropriate message scheduler table start offset values for each transmit channel message scenario as a best estimate to avoid rate skew on the respective channel; supported under Windows and Linux operating systems only.

 

5) Added the API function ar_open as an alternative open session function that excludes the unused parameters required with the ar_loadslv function.

                                 

6) For all receive message retrieval routines, modified the initial status checking to read and return the message or specified number of messages when a "buffer overrun" is detected, instead of leaving the buffer in a 'full' state and reading nothing.

  

7) For ar_putblock and ar_put_573_frame, instead of reading the buffer status and checking for an overrun with each message inserted in the buffer, the routines detect the buffer fill level and insert as much as the buffer will hold (if less than what was requested by the host application).

 

8) Expanded the INTEGRITY O/S support to include support for an Intel target and the following boards: R830RX, RAR-CPCI, CEI-430 & RCEI-530.

 

9) Incorporated CEI-x30 Firmware Version 5.3 in the API firmware download modules.  When coupled with the CEI-x30 Version 5.3 firmware, support is added for:

   

A) A new receive buffer clear/flush feature where a receive buffer is automatically cleared when the respective receive channel transitions from a disabled state to an enabled state (not supported with the merged receive buffer).  Support for the receive buffer clear option was added to the API using the ARU_RX_FIFO_RESET option with the routine ar_set_device_config.

 

B) An expansion of the Message Scheduler Table from 1024 entries to 2048 entries for all CEI-x30 boards except the obsolete CEI-830.

 

C) Priority transmit buffering of periodic messages over host-initiated aperiodic messages, reducing potential rate skew of periodic messages.

   

Note: The RAR-PCIE and RAR-XMC must be reprogrammed with the respective flash programmer in order for firmware v5.3 to replace existing firmware. 

 

 

Release Notes - Version 4.80 – 11 September 2015

 

1) Updated the VxWorks 6.x VxBus driver support, and increased the allowed device allocation to support up to sixteen devices.

 

2) Updated the 64-bit Windows driver to resolve a memory leak when AR_CLOSE is called from a 32-bit program.

 

3) Added support for 32-bit and 64-bit Windows 8.0, 8.1, 10 and Server 2012.

 

Important note for Windows 10 users: Certain Microsoft processes may prevent you from launching our installer for a period of time after logging in to your computer.  When running our installer shortly after logging in, you may notice our installer appears briefly, then disappears completely for a period of time, after which it automatically appears again, starts up, and functions normally.  At the time of this release, delays of two minutes or less have been commonly observed (although 5-7 minute delays were observed in some cases).  There are currently no workarounds available to prevent this behavior, although disabling OneDrive has been shown to decrease the installer startup delay in some cases.

  

Additional note for Windows users: After plugging in a new card and booting up, a subsequent reboot may be required on some systems in order for Windows to detect the new card.  If you add a card to your system and it is not detected after booting up, reboot the system to complete installation.

 

 

Release Notes - Version 4.71 - 10 July 2015

 

This release includes the following CEI-x30 API updates:

 

Corrected a bug in a429_utl_wrap_test in which the wrap test will fail for unbalanced channel configurations where transmitter channel count exceeds receiver channel count.

 

  

Release Notes - Version 4.70 - 04 June 2015

 

This release includes the following CEI-x30 API updates:

 

1) Added support for RAR15-XMC-VCP receiver BIT feature to ar_execute_bit using the AR_BIT_RX_LOOPBACK option. 

 

2) Added a new API return status ARS_RX_BUFFER_OVERRUN, indicating a receive buffer overrun was detected during message retrieval.  This applies to all ar_get**** routines, (word/wordt/word_xt, next/nextt/next_xt, _data/_data_xt, _429_message, block, block_t).

 

 

Release Notes - Version 4.60 - 15 Feb 2015

 

This release includes the following CEI-x30 API updates:

 

1) Updated the API to provide support for the RAR-XMC under all supported operating systems.

 

2) Corrected a bug in the AR_GETWORDT & AR_GETNEXTT routines so the latest message time-tag is returned with the message when a return status of ARS_BAD_MESSAGE is applied, indicating a previous invalid message had been detected.

 

3) Removed the built-in one second delay for reception of the "next sub-frame" if the respective receive buffer already contains a full ARINC 717 frame's worth of messages.

 

4) Added a Windows 32-bit start offset generator application to the distribution to assist in the assignment of periodic ARINC 429 message start offset values for complex transmit channel scheduled message scenarios.

 

 

Release Notes - Version 4.50 - 27 Feb 2014

 

This release includes the following CEI-x30 API updates:

 

1) Updated the VxWorks and Integrity driver interface source files to match the version distributed with the latest BusTools/1553-API distribution.

 

2) Corrected multi-process shared memory handle usage for a 64-bit Linux host.

 

 

Release Notes - Version 4.40 - 19 Dec 2013

 

This release includes the following CEI-x30 API updates:

 

1) Updates the device driver for 32-bit Windows operating systems to be the 32-bit version of WinDriver, the same generic driver used with 64-bit Windows.

 

2) Provides support for the RCEI-830A board under all supported operating systems, (intended as the replacement for the CEI-830 PMC product).

 

 

Release Notes - Version 4.30 - 26 June 2013

 

This release includes the following CEI-x30 API updates:

 

1) Updated the RAR-PCIE Firmware Flash Programmer for version 4.14 firmware.

 

2) Added support for Integrity 178B with the (R)AR15-XMC-XT Multi-protocol board.

 

3) Added PCI Express I/O synchronization in the SRAM memory test routine for embedded PCI Express host computer usage with Integrity and VxWorks.

  

4) Corrected an API bug preventing successful update of the PCI BAR2 region size for standard firmware (4KB) in order to obtain support for the enhanced firmware load, (requiring BAR2 to be 512KB).

  

5) Provides support for the (R)CEI-830X820 board under the Windows and VxWorks operating systems, (previously released under CEI-x30-SW v4.20 Linux-only distribution).

 

 

Release Notes - Version 4.10 - 30 Nov 2012

 

This is the formal release for all previous 4.0x beta and partial product support releases.  It incorporates all of the updates listed in the previous version 4.xx release notes.

 

 

Release Notes - Version 4.01 - 25 Oct 2012

 

This release is specific to the RAR15-XMC-XT product.  Modifications include:

 

1) Implemented additional support for the RAR15-XMC-XT combination MIL-STD-1553 and ARINC 429 board, improving upon the capture and display of ARINC 429 received message time-stamps synchronized to a select 1553 channel.

 

2) Added the compiler directive FLASH_BASED_TARGET, allowing the compilation of the CEI-x30 API source code while excluding non-flashed based firmware load modules.

 

 

Release Notes - Version 4.01 Beta - 21 Sept 2012

 

Updated the Integrity operating system support files to incorporate the combination MIL-STD-1553/ARINC products in the XMC form factor, with ARINC 429/717 support provided via the CEI-x30 host interface and API.

 

 

Release Notes - Version 4.00 Beta - 09 Aug 2012

 

This release adds support for the combination MIL-STD-1553/ARINC products in the XMC form factor, with ARINC 429/717 support provided via the CEI-x30 host interface and API. 

 

1) Implemented the following CEI-x30 product-wide firmware enhancements and API support, where applicable:

     

a)       The Receive FIFO Buffer Enable function allowing the application to control the operation of individual receive channel FIFO buffering was implemented (this feature had previously been disabled).

b)       A new Receive Channel Status Bit indicating FIFO Buffer Overflow was added to the host interface for individual FIFO buffers.  Application access to this new status bit, along with the other components of the individual Receive Channel Status Register were implemented in a new CEI-x30 API routine called ar_get_rx_channel_status.

c)        Added the ability to autonomously set the write-capable bit fields in the host interface Global Enable Register, for added protection with multi-process applications.

d)       Improved the IRIG AM signal decoding capabilities, eliminating potential IRIG AM sample loss.

 

2) Added support for the RAR15-XMC-XT combination MIL-STD-1553/ARINC 429 board.

 

While driver installation for this product is provided in the BusTools/1553 API software distribution, the CEI-x30 API libraries, examples, and source files installed with the CEI-x30-SW distribution demonstrate how to interact with the ARINC 429 host interface portion of this product from the CEI-x30 API.

  

Additional features available with combination MIL-STD-1553/ARINC products include:

  

a)       Time-stamp synchronization between ARINC 429 receive message time-stamps and any available MIL-STD-1553 channel time reference (selected via the respective BusTools/1553-API routine).

b)       Software programmable ARINC 429 transmit/receive channels, in which a transmitter and receiver may share the same I/O pins.  The active transmit/receive capability on the respective pins are selected by enabling/disabling the receiver/transmitter FIFO and external transmit capability.

 

3) The GUI application "AutoConfig" was added to the CEI-x30-SW distribution, providing the ability to create XML and text channel configuration and scheduled message definition files for reference by one of four new CEI-x30 API routines:

  

   ar_config_channels_from_txt_file

   ar_channel_configuration_from_xml_file

   ar_define_messages_from_txt_file

   ar_define_messages_from_xml_file

 

This feature allows applications to define and reference any installed board's channel configuration and complex scheduled message scenarios in easy-to-maintain configuration files.  A new AutoConfig ARINC User's Manual is included in the distribution describing how to set configuration files.  The API routines above are described in the CEI-x30 User's Manual and an example application is included in the Examples folder of the distribution.

 

4) Increased the maximum allowed device limit (constant MAX_BOARDS) from 16 to 128 under all supported Windows operating systems.  Deprecated support for Windows NT and 2000.

  

 

Release Notes - Version 3.10 - 6 Oct 2011

 

1) Added support for the CEI-430A, a native PC/104-Plus (PCI-104) CEI-x30 board for the Windows and Linux operating systems.

 

2) Corrected the ARINC 429 slew rate assignment for custom baud rate selections by the host via the ar_set_device_config routine. 

  

3) Modified the operation of the routine ar_modify_msg_block to allow a message scheduler table entries transmit count to be modified if it had been created with or previously modified to have a limited transmit count and the current transmit count is zero. 

  

4) Corrected the snapshot buffer table content returned from ar_get_latest when the entire table is requested using the label parameter ARU_ALL_LABELS option.

  

5) Corrected the function of ar_init_slave so it only resets/flushes the transmit and receive buffers and does not initialize the snapshot buffer, label filter table, or message scheduler table. 

  

6) Added support for creating a 1 second host time-stamp format with the option AR_TIMETAG_HOST_SEC_32BIT in ar_convert_time_to_string.

  

7) Corrected an issue in ar_getblock_t, where in merged mode the actual receive channel was not returned unless time-tags were returned (when the time-tag array pointers are not NULL).

  

8) Introduced support for the CEI-x20 discrete I/O configuration options ARU_DISCRETE_VALUES, ARU_DISCRETE_INPUTS and ARU_DISCRETE_OUTPUTS, in the

ar_set_config and ar_get_config routines.

 

 

Release Notes - Version 3.00 - 6 Dec 2010

 

1) Added support for 64-bit Windows 7, Vista, and XP operating systems.

 

2) Modified the internal wrap receiver-to-transmitter channel assignments for the RAR-EC to match the previous standard CEI-x30 firmware configuration,

(the initial enhanced firmware RAR-EC internal wrap deviated from the standard firmware configuration).

 

 

Release Notes - Version 2.10 - 23 July 2010

 

Added support for the RAR-PCIE, native PCI Express CEI-x30 board for Windows and Linux operating systems.

 

 

Release Notes - Version 2.00 - 31 Aug 2009

 

1) Introduced the CEI-x30 Enhanced Firmware Interface, with respective API updates.  Note this firmware implementation is not backward compatible with previous versions of the API; however, it is downloaded by the API so previous API releases will remain functional with new boards. 

a)       Modified all methods to access Channel Registers and Buffers, Message Scheduler Table, Label Filter Table, and Snapshot Buffer.

b)       Added Interrupt Queue access routines and a generic interrupt handler (with provisions for designating a user-defined handler):

cei_utl_interrupt_queue_read

cei_utl_interrupt_handler

ar_hw_interrupt_buffer_read

ar_interrupt_queue_read

ar_set_isr_function

c)        Added the routine ar_get_latest_t to provide a method to retrieve the label-only snapshot mode message & time-stamp.

d)       Added support for the ARS_BAD_MESSAGE return status from  the following API routines, indicating a "bad msg length" ARINC 429 message was encountered on the respective receiver:

ar_getword ar_getwordt    ar_getword_xt  ar_getnext     ar_getnextt     ar_getnext_xt

ar_getblock ar_getblock_t   ar_get_429_message          ar_get_data    ar_get_data_xt

e)       Added a test for the Enhanced CEI-x30 Interface to the routine ar_get_device_config, and ar_set_device_config options to both update a standard x30 device to the enhanced interface and restore an enhanced interface to a standard interface.

 

2) Implemented the functional support within the following API routines required for backward compatibility to the CEI-x20 product line/API:

ar_get_boardname     ar_init_dual_port       ar_get_label_filter      ar_init_slave    ar_get_timercnt

ar_int_control          ar_sleep              ar_setchparms        ar_get_raw_mode

 

3) Replaced the previous VxWorks driver and CDF files with the latest common driver and CDF files.

 

4) Replaced the previous Integrity driver with the latest common driver.

 

 

Questions?

 

If you have any questions or need more technical information, please contact:

 

Abaco Systems, Inc.

26 Castilian Drive, Suite B

Goleta, CA. 93117

USA

 

phone:                   +1 805-965-8000 or +1 805-883-6101

support:                avionics.support@abaco.com or +1 805-883-6097

Internet:                https://www.abaco.com/products/avionics