ARINC 825 Library. Software Manual. ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 1 of 106

Size: px
Start display at page:

Download "ARINC 825 Library. Software Manual. ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 1 of 106"

Transcription

1 ARINC 825 Library Software Manual ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 1 of 106 esd electronic system design gmbh Vahrenwalder Str Hannover Germany Phone: +49 (0) Fax: +49 (0)

2 N O T E The information in this document has been carefully checked and is believed to be entirely reliable. esd makes no warranty of any kind with regard to the material in this document, and assumes no responsibility for any errors that may appear in this document. esd reserves the right to make changes without notice to this, or any of its products, to improve reliability, performance or design. esd assumes no responsibility for the use of any circuitry other than circuitry which is part of a product of esd gmbh. esd does not convey to the purchaser of the product described herein any license under the patent rights of esd gmbh nor the rights of others. esd electronic system design gmbh Vahrenwalder Str Hannover Germany Phone: Fax: Internet: info@esd.eu USA / Canada: esd electronics Inc. 525 Bernardston Road Suite 1 Greenfield, MA USA Phone: Fax: Internet: us-sales@esd-electronics.com Page 2 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

3 Document file: Date of print: I:\Texte\Doku\MANUALS\PROGRAM\CAN\C _ARINC825\ARINC825_Library_Manual_en_11.odt Documentation valid for software versions: ARINC 825 Library (object code) for... Windows XP, Windows 2000 Linux RTX QNX VxWorks Order no. C (Windows/Linux CD) C C C Documented Software Rev. ARINC Library: Document History Document history see page 7. Technical details are subject to change without further notice. ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 3 of 106

4 Table of contents 1. Overview Overview ARINC-Time CAN-errors Defines CAN-IDs CAN-Length CAN-Baudrate Handle-Modeflags Handle-Queuesize IOCTLs IOCTL-TxSchedule Status-Features Status-IRIG-B Status-Busstates Bitrate-Controller Bitrate-Flags IRIG-B-Modeflags Errorcodes Errorformats Thread-Priority Error-Injection Datatypes ARINC_RESULT ARINC_HANDLE ARINC_ERROR_HANDLER ARINC_GROUP NTCAN_CMSG_T NTCAN_EVMSG_CAN_ERROR NTCAN_EVMSG_CAN_BAUD_CHANGE NTCAN_EVMSG_CAN_ERROR_EXT ARINC_CMSG_T ARINC_STATUS ARINC_ERROR NTCAN_CSCHED NTCAN_FRAMECOUNT NTCAN_BUSSTATISTIC NTCAN_CTRLSTATE NTCAN_BITRATE_INFO NTCAN_FORMAT_EVENT_PARAMS CAN_BIT_STREAM CAN_EEI_UNIT CAN_EEI_STATUS Macros Boardstatus Timeconstants Timemasks Timemacros Functions General-Functions...69 Page 4 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

5 7.1.1 arincopen arincclose arincbaudrateset arincbaudrateget arincioctl arincstatus arincstatusreset arinccanerrorcounterreset arincformaterror arincformatevent arincfiledescriptorget ARINC-Functions arincerrorhandler arincirigbconfigset arincirigbconfigget arinctimeset arinctimeget arincintervalset arincintervalget arincschedulestart arincschedulestop arincpoll arinctxobjupdate arinctxobjdisable arincwaitfortimeslot arincobjadd arincobjdelete CAN-Functions arincrxidadd arincrxiddelete arincread arinctake arincwrite arincsend ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 5 of 106

6 Overview Overview 1. Overview Overview [ Top ] [ Generics ] ARINC825 Library FILE arinc.h BRIEF MODULE DESCRIPTION Header for ARINC825 support library AUTHOR Andreas Block (BL) CREATION DATE 25-May-2009 PORTABILITY ANSI-C vxworks, Linux, Win32 Depends on ntcan- and psys-library COPYRIGHT Copyright (c) by electronic system design gmbh This software is copyrighted by and is the sole property of esd gmbh. All rights, title, ownership, or other interests in the software remain the property of esd gmbh. This software may only be used in accordance with the corresponding license agreement. Any unauthorized use, duplication, transmission, distribution, or disclosure of this software is expressly forbidden. This Copyright notice may not be removed or modified without prior written consent of esd gmbh. esd gmbh, reserves the right to modify this software without notice. electronic system design gmbh Tel Vahrenwalder Str 207 Fax Hannover Germany sales@esd.eu MODIFICATION HISTORY Edit Date/Ver Edit Description ================= ======================================================= Fixed: Race condition, if multiple arincopen() are called simultaneously (collision of multiple starting error deamons) Syncronization release for Windows, VxWorks and Linux Change: Windows NTCAN Library version was increased to represent addition of error injection Added: Defines, structures and IOCTLs for error injection (CAN_BIT_STREAM, CAN_EEI_UNIT, CAN_EEI_STATUS, Error-Injection, arincioctl(arinc_ioctl_eei_create, Page 6 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

7 Overview Overview ARINC_IOCTL_EEI_DESTROY, ARINC_IOCTL_EEI_STATUS, ARINC_IOCTL_EEI_CONFIGURE, ARINC_IOCTL_EEI_START, ARINC_IOCTL_EEI_STOP, ARINC_IOCTL_EEI_TRIGGER_NOW)) Fixed: If IRIG-B status got queried directly after reconfiguration, false status bits (from prior reconfiguration) were delivered. Change: arincobjadd() and arincobjdelete() don't check for 29-Bit IDs anymore. It's possible to use 11-Bit IDs (even in combination with 29-Bit IDs), now. Nevertheless you should know, what you are doing, as ARINC825 is defined for 29-Bit IDs, only. Change: Documentation: - New error injection stuff added - Corrected description of member "m" in ARINC_CMSG_T Fixed: Disabled TX objects get reenabled, if received from bus Syncronization release for Windows, VxWorks and Linux Fixed: IRIG-B not synchronizing with certain IRIG-B sources (IRIG-B firmware update to 1.AD5 needed) Special VxWorks release Added: VxWorks: Driver configuration options, see VxWorks README Fixed: Severe bug in ioctl mechanism completely broke autobaud (bug introduced with (synchronisation of arincioctl())) Fixed: Synchronisation of arincioctl() when arincclose() is called in parallel on same handle Fixed: Error frames were not counted correctly for NTCAN_BUSSTATISTIC (arincioctl(arinc_ioctl_get_bus_statistic)) Added: In NTCAN_BUSSTATISTIC aborted_frames was introduced Change: arincclose() optimized Change: Overall minor optimizations Fixed: Windows only: Crash in conjunction with timers Fixed: Windows: Updated device manager dialog Fixed: Missing feature flag ARINC_FEATURE_DIAGNOSTIC (AMC825 had this feature all the time, but flag was not set) Fixed: In NTCAN_BITRATE_INFO members ctrl_type and clock weren't set correctly, if no baudrate was set Fixed: VxWorks only: Recompiled with -msoft-float Fixed: VxWorks: Symbols for driver configuration got stripped. Change: VxWorks: Symbols for driver configuration have amc825_ prefix, now Fixed: Possible memory leak, if user did not delete all objects before calling arincclose() Fixed: Wrongly accounted RX Timeout errors after stopping and restarting a schedule Fixed: Another problem with RTR objects. Reception of normal ID on a node with same ID as RTR deleted the RTR bit in object Fixed: RTR objects and arincobjadd() Added: Function arinccanerrorcounterreset() to reset CAN error counter (before using, pay attention to notes!) Fixed: It's now possible, to add RTR objects with arincobjadd() Fixed Windows Driver+Library, only. Fixed: arincwrite(), arincschedulestop() blocking under certain conditions, if CAN controller got error passive ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 7 of 106

8 Overview Overview Fixed Windows Library, only. Added: New feature flag ARINC_FEATURE_SMART_ID_FILTER Bugfix: Flag ARINC_FEATURE_ID_RANGES is deprecated, now Bugfix: Windows: Fixed calltype of arincformatevent() Added: Documentation: CAN-errors Change: CAN traffic is bus mastered in RX direction Lot's of performance optimizations Change: CAN traffic LED blink code slightly changed Fixed: TX Job could hang, if baudrate was reset by another handle Fixed: TX channel unusable after CAN bus off Fixed: Problem with 29-Bit filter (introduced in last release) Added: Asynchronous error handler get's triggered on errors Added: Function arincformatevent() to decode CAN event messages to strings Added: Structure NTCAN_FORMAT_EVENT_PARAMS Added: Structures NTCAN_EVMSG_CAN_ERROR, NTCAN_EVMSG_CAN_BAUD_CHANGE and NTCAN_EVMSG_CAN_ERROR_EXT for easier CAN event message evaluation Added: Two new error codes ARINC_CAN_STATE_CHANGE and ARINC_CAN_ERROR, see Errorcodes Added: errorlostframes member in ARINC_STATUS structure Added: ARINC_ERROR_INTERVAL_LOW error code to arincintervalset() in order to prevent user from setting insanely low timeslice durations (1ms and below), see Errorcodes Change: Structure ARINC_ERROR extended to provide more information to error handler Change: API change arincerrorhandler(): Added a parameter to select a single error code. Change: If there're no ARINC TX objects added to a handle, there's only one thread started on arincschedulestart() Change: Documentation: - New structures and arincformatevent() were added to documentation - ARINC_ERROR description reworked - Removed note on restriction of context of error handler. Error handlers have dedicated context, now. - Added information for concurrent applications in arincschedulestart() Bugfix: Renamed and corrected definition of ARINC_FEATURE_CAN_20B (former ARINC_FEATURE_BASIC_20B) Bugfix: CAN state transition to "Bus Ok" was erroneously counted as an error in "ARINC_STATUS" information Bugfix: Display of serial number on big endian hardware Removed: In version the functionality of arincformatevent() was implemented in arincformaterror(). Therefore a define and structure (ARINC_ERROR_FORMAT_ERROR_EVENT and NTCAN_ERROR_FORMAT_ERROR_EVENT_BUFFER) were introduced. These have now been removed again Fixed: FPGA contains change for latest change in hardware revision (Fixes crash on boards with GB0000xx serial number) Added: Possibility to use "select()" and "poll()" (currently VxWorks and Linux, only. Use WaitForMultipleObjects() on Windows for similar feature), see arincfiledescriptorget() Added: New function arincfiledescriptorget() to retrieve a filedescriptor needed for "select()" Page 8 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

9 Overview Overview Added: Variable "numcannodes" (type: int) contains number of successfully initialized CAN nodes under VxWorks (after driver was started by canstart()) Added: arincformaterror() can be used to decode extended error events Define ARINC_ERROR_FORMAT_ERROR_EVENT Datatype NTCAN_ERROR_FORMAT_ERROREVENT_BUFFER Added: Boardstatus macros Change: All uses of timers have been changed to make Use of hardware timers on AMC825. Solving the problem of inaccurate error detection with timeslice durations around or below system tick. Change: Reenabled error detection again Change: Documentation: - description of new functionality added Bugfix: Fixed typo in AIM_AIM2TDIFF Bugfix: Exception on interrupt level Bugfix: Problem with arinctake() on VxWorks Bugfix: Problem with heavily disturbed CAN busses Bugfix: CAN Controller type was not correct in ARINC_STATUS.boardstatus Bugfix: Define ARINC_CANCTL_ESDACC not usable under VxWorks Change: Temporarily disabled parts of error detection (e.g. timeslot overload) as workaround for "exception on interrupt" issue Added: arinctxobjdisable() to disable ARINC objects (prevent them from being scheduled/transmitted) Change: Timeslice duration is 64-Bit wide, now (arincintervalset() and arincintervalget()) Change: Added three parameters to arincschedulestart() to set the priority of the ARINC deamon threads Change: Documentation: - Thread-Priority defines - arincintervalset() description of interval parameter - arincschedulestart() new parameters - arinctxobjdisable() Bugfix: Uninitialized return value of arincirigbconfigset(), if no changes were made to configuration Bugfix: Fixed scheduling behaviour for interval times near system tick duration Bugfix: arincirigbconfigset() threw an error message, if new config is equal to previous config Change: arincirigbconfigset() reinitializes IRIG-B module only if new configuration differs from previous Change: When using ARINC_MODE_TIMEFORMAT_FORCE flag with arincopen(), IRIG-B module will be reinitialized only, when timeformat differs from the one previously configured Change: ARINC_GROUP changed to INT32. Using arincobjadd() objects can be scheduled on arbitrary multiples of timeslice interval. Change: Documentation: - arincirigbconfigset() notes on resynchronization of IRIG-B module - More description on Status-IRIG-B flags Special Debug Version Bugfix: arincwrite() and arincsend() for VxWorks and Win Change: More information to ARINC_STATUS structure: - CAN bus status - CAN error counters Change: ARINC_ERROR structure (parameter of asynchronous error handler) reworked ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 9 of 106

10 Overview Overview Change: Documentation: - Additions to ARINC_STATUS - Rendered some ARINC_STATUS descriptions more precisely Bugfix: Removed a "lost" debug output (suggested an error about unexpectedly received CAN frames, if ARINC and FIFO modes were combined) Bugfix: If arincintervalset() was used with a starttime = 0, after it was used with starttime!= 0 on the same handle, an old value was used Bugfix: Under certain circumstances arincintervalget() did not return the interval correctly (bug introduced with 1.0.6) Bugfix: Definition of ARINC_FEATURE_LOCAL_ECHO Bugfix: Definition of ARINC_FEATURE_CAN_20B Added: ARINC_MODE_TIMEFORMAT_FORCE in Handle-Modeflags Added: arincformaterror() Change: Documentation: - Possible deviance of RX and TX counter within ARINC objects explained (ARINC_CMSG_T) - ARINC_MODE_TIMEFORMAT_FORCE in Handle-Modeflags added - Uncleardescription of timeout parameter of arincopen() - Some more info to fifosize parameters of arincopen() - New function: arincformaterror() - New defines: Errorformats Bugfix: Memory allocation failure in arincobjadd(), if a TX object was created with n outside of range of group. ARINC_INVALID_PARAMETER is returned, now. Bugfix: With certain CAN error conditions there was a possibility for Win32 systems to lock up Bugfix: On certain errors the time of occurrence was not stored correctly in status structure (arincstatus()) Bugfix: Starttime was incorrectly configured, if AIM timeformat was used (fraction of a second was set too small by a factor of ten) Bugfix: If an application, which had called arincschedulestart() was unexpectedly aborted/ shutdown/crashed, a newly started scheduling from a following application did not correctly use the new starttime. Bugfix: arinctimeget() and arincstatus() work without configured baudrate Bugfix: A possible system crash (BSOD) under Win32. Bugfix: Documentation: - Status-IRIG-B defines - arincstatus() and arincstatusreset() was not up to date Added: If AIM time format is chosen, it's used for basic CAN functions as well. Added: Finally arincstatus() function delivers usable data. arinctest.c example code changed accordingly. Added: arinctimeget() and arincstatus() deliver IRIG-B status Added: Status-IRIG-B defines to evaluate IRIG-B status Added: Documentation: - Note on system Errorcodes - More links, better navigation - Missing baudrate indeces added (CAN-Baudrate) - Status-IRIG-B defines Change: It is no longer needed to have a baudrate configured, when calling arincirigbconfigset() or arinctimeset() Change: ARINC_STATUS structure extended: - dllarinc (version info of ARINC library) Page 10 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

11 Overview Overview - irigbstatus (status of IRIG-B module) - time (current time, when status is retrieved) Change: Timeformat can be chosen _once_ per system, only!!! The first handle opened, determines the timeformat in use. All other handles/applications will have to use the same timeformat (ARINC-Time, arincopen()). It is no longer possible to chose any IRIG-B mode in combination with any timeformat arincirigbconfigset()). Bugfix: arincintervalset(): Starttime = 0 got fixed Bugfix: arinctimeset(): works again (got deactivated with last release) Bugfix: A race condition got fixed, this could lead to corrupted RX-/TX-objects Bugfix: arincbaudrateset(), CAN-Baudrate: ARINC_USER_BAUDRATE_NUM works with AMC825, now Bugfix: arincioctl(): Handle related ioctls (e.g. ARINC_IOCTL_SET_RX_TIMEOUT) did not work correctly Bugfix: Issue: "arinctake() loses messages" Basic CAN functions worked on wrong handle and thus with wrong queuesizes Bugfix: arincobjdelete() Bugfix: arincpoll(): number of polled objects wasn't correctly returned in case of an error Bugfix: Library version code was wrong in last release (still instead of 1.0.4), now up to date and correct again Added: Flag ARINC_IRIGB_TIMEFORMAT_YEAR_MAN (IRIG-B-Modeflags) Added: Functions arincirigbconfigset() and arincirigbconfigget() Added: Some more Macros to work with AIM timeformat (Timemacros) Added: Timeout unit for arincwaitfortimeslot() defined as ms Change: ARINC_MODE_TIMEFORMAT_YEAR was renamed to ARINC_IRIGB_TIMEFORMAT_YEAR and is used with arincirigbconfigset() and arincirigbconfigget() instead of arincopen() (IRIG-B-Modeflags) Added: Support for AIM timeformat (ARINC-Time) Added: Time conversion macros (Macros/Timemacros) Added: Mode flags for time conversion (Handle-Modeflags) Added: Lots of documentation Added: Support for ARINC_OLD_DATA and ARINC_NO_DATA Added: Support for scheduling start time Change: arincintervalget() parameters Bugfix: TX counters count non sent frames, now Added: Lots of defines for use with basic CAN functions and their documentation Bugfix: Changed error codes once more, in order to achieve independence of operating system Second test release Added: Robodoc documentation Bugfix: Handle for FIFO functions wasn't returned correctly Change: There's no FIFO mode for handles anymore. Every handle can use all library functions. Added: Parameter error handling improved Bugfix: Relocated base of ARINC-specific error codes from 0x80 to 0xA First test release Initial version ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 11 of 106

12 ARINC-Time 2. ARINC-Time [ Top ] [ Generics ] DESCRIPTION Within this library time is handled/presented in one of two formats. The format to be used, is set via the mode parameter of arincopen().!!! BEWARE: This decision is done once per system, the first handle determines the timeformat, all other applications/handles will have to choose.!!! Time format #1 (default): Time is represented as a 64-Bit unsigned integer value, as follows: Upper (most significant) 32 Bit: Seconds since timebase (see below) Lower (least significant) 32 Bit: Splitseconds (see below) Splitseconds: Most significant bit: 2^-1 seconds Least significant bit: 2^-32 seconds Example, given the following 64-Bit value: 0x Upper 32-Bit: 0x => five seconds since timebase Lower 32-Bit: 0x => 2^-1 + 2^ ^-32 = 0, parts of a second Resulting in seconds Time format #2 (AIM format): This archive is closely related to time representation on IRIG-B, it contains no year information: Upper 32-Bit: Bits 5-0(LSB): Seconds within current minute Bits 11-6 : Minutes within current hour Bits : Hour of current day Bits : Day of current year Lower 32-bit: Bits 19-0(LSB): Microseconds of current second Bits : Seconds within current minute Bits : Minutes within current hour There're two timebases to choose from: A) 1st of January of the current year, 00:00 (default) B) 1970/01/01, 00:00 (begin of UNIX time) If there's no valid IRIG-B signal, current time can be set by use of arinctimeset(). As soon as a valid IRIG-B is detected, the time will be set to IRIG-B time, regardless of any formerly set time. Use of timebase B makes sense only, if at first the IRIG-B signal contains information about year and secondly time format #1 is chosen. NOTES Since time format #2 is generated from format #1 in software, it has a slight impact on CPU usage. There're some macros, to make work with time format #2 a little easier. Handle-Modeflags Macros Timemacros arincopen() arinctimeset() arinctimeget() Page 12 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

13 3. CAN-errors [ Top ] [ Generics ] DESCRIPTION CAN-errors Basics: On CAN bus there are pretty sophisticated error handling techniques, which not only allow to detect errors, but also help to remove defective hardware from a CAN bus in order to keep the remaining parts working. This is called CAN error confinement. This is accomplished via two error counters (RX + TX, called RX Error Counter (REC) and TX Error Counter (TEC)) and a ruleset related to these, defining when these counters need to be in- or decremented. This won't be discussed in all details here, as there's lots of literature written and web ressources published on this topic. Depending on these error counters every CAN node is in one of four states: BUS OK (REC < 96 and TEC < 96) Normal state of a CAN node, when everything is ok. This does NOT necessarily mean the absence of errors on CAN bus though. The node is also said to be "error active", as it will actively propagate (or globalize) any detected error. BUS WARN (96 >= REC < 128 or 96 >= TEC < 128) At least on error counter has reached error warning limit, there's a significant amount of errors on CAN bus, yet overall function doesn't seem to be affected. The node remains "error active" in this state. ERROR PASSIVE (128 >= REC <= 255 or 128 >= TEC <= 255) Contary to the first two states a CAN node goes "error passive" (opposed to "error active") by exceeding the next threshold with any of its error counters. The node is still able to transmit and receive CAN frames, but it will not any longer propagate detected errors over the CAN bus. BUS OFF (TEC > 255) Lastly a node enters bus off state, where it will no longer take part in CAN communication. In general the error counters will be incremented, whenever a error is detected on CAN bus. Most CAN controllers provide special means to further investigate the circumstances of such error amongst other information the type of error and position of the error condition with a CAN frame are stored in a error code capture register (ECC). Means of error detection: ARINC 825 library provides several different means to detect CAN errors or be notified about them. (A) Polling: At any given time the CAN status can be polled using arincstatus() or arincioctl(arinc_ioctl_get_ctrl_status). The ARINC_STATUS structure returned from arincstatus() also contains ECC information of the last CAN bus error. (B) Asynchronous notification with error handler: By means of arincerrorhandler() an asynchronous error handler function can be registered. On occurrence of certain errors (such as CAN bus errors amongst others) the registered handler will be called and is also passed an ARINC_STATUS structure with ECC information. ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 13 of 106

14 CAN-errors (C) Asynchronous notification by virtual CAN events: There're two CAN events related to errors on CAN bus. These events are received as virtual CAN frames via arincread()/arinctake(), if the respective CAN IDs have been enabled with arincrxidadd(). The first one is the CAN error event, which is generated on every state change in a node's CAN state machine. The second one, called extended error event, is generated on every CAN error frame on CAN bus. There's no guarantee to receive one event per error frame, as the driver analyzes the ECC information and tries to prevent IRQ floods by disabling the interrupt for certain time periods if heavy load is detected. There are data structures defined to ease evaluation of these events (NTCAN_EVMSG_CAN_ERROR and NTCAN_EVMSG_CAN_ERROR_EXT), these can be simply mapped to the data section of the respective CAN event frames. Additionaly arincformatevent() can be used to convert the contained information into human readable strings. ECC Byte In order to further analyze a CAN bus error the ECC (error code capture) is of special importance. So far this feature is limited to two CAN controller types (SJA1000 and esdacc). Both controllers use the same bit encoding, so decoding of the ECC byte works exactly the same: Bit Symbol Name Value Function ECC Bit 7 (MSB) ERRC1 Error Code ECC Bit 6 ERRC0 Error Code ECC Bit 5 DIR Direction 1 RX; error occurred during reception 0 TX; error occurred during transmission ECC Bit 4 SEG4 Segment ECC Bit 3 SEG3 Segment ECC Bit 2 SEG2 Segment ECC Bit 1 SEG1 Segment ECC Bit 0 (LSB) SEG0 Segment Error type ERRC1 ERRC0 Function bit error 0 1 form error 1 0 stuff error 1 1 other type of error Page 14 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

15 CAN-errors Error position SEG4 SEG3 SEG2 SEG1 SEG0 Function start of frame ID.28 to ID ID.20 to ID bit SRTR bit IDE ID.17 to ID ID.12 to ID ID.4 to ID bit RTR reserved bit reserved bit data length code data field CRC sequence CRC delimiter acknowledge slot acknowledge delimiter end of frame intermission active error flag passive error flag tolerate dominant bits error delimiter overload flag Status-Busstates ARINC_EV_CAN_ERROR (CAN-IDs) ARINC_EV_CAN_ERROR_EXT (CAN-IDs) NTCAN_EVMSG_CAN_ERROR NTCAN_EVMSG_CAN_ERROR_EXT ARINC_STATUS IOCTLs arincstatus() arincioctl(arinc_ioctl_get_ctrl_status) arincformatevent() arincerrorhandler() ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 15 of 106

16 Defines 4. Defines [ Top ] [ Generics ] DESCRIPTION Documentation of symbol definitions: o CAN-IDs o CAN-Length o CAN-Baudrate o Handle-Modeflags o Handle-Queuesize o IOCTLs o IOCTL-TxSchedule o Status-Features o Status-IRIG-B o Status-Busstates o Bitrate-Controller o Bitrate-Flags o IRIG-B-Modeflags o Errorcodes o Errorformats o Thread-Priority Page 16 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

17 Defines 4.1 CAN-IDs [ Top ] [ Defines ] [ Definitions ] Following defines can be used in combination with CAN ID parameters, e.g. in ARINC_CMSG_T structure or with arincrxidadd(), arincrxiddelete() DESCRIPTION ARINC_20B_BASE ARINC_EV_BASE -- Marks 29-Bit CAN IDs (CAN-20b) -- Marks CAN events ("virtual special purpose CAN frames", see event IDs below) ARINC_EV_CAN_ERROR ARINC_EV_BAUD_CHANGE -- CAN bus state has changed. Event contains: Byte 1: Bus state Byte 3: Lost messages Event can be received, only. -- Baudrate of CAN node was reconfigured: Bytes 0-3: New baudrate as configured by user If length of event is eight: Bytes 4-7: New baudrate in numerical form Event can be received, only. ARINC_EV_CAN_ERROR_EXT -- An error occurred on CAN bus: Byte 0: Status information from CAN controller Byte 1: Detailed error information (Error Code Capture register) Byte 2: CAN RX error counter Byte 3: CAN TX error counter Event can be received, only. ARINC_EV_BUSLOAD NOTES -- Cyclic event with statistical data, a 64-Bit counter of bits transferred on CAN bus Event can be received, only. CAN event IDs (ARINC_EV_xxx): The events will be mainly used by the basic CAN functions. Higher level ARINC functions provide this information in different ways (see arincstatus() and arincerrorhandler()). CAN-errors ARINC_CMSG_T NTCAN_CMSG_T arincrxidadd() arincrxiddelete() ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 17 of 106

18 Defines 4.2 CAN-Length [ Top ] [ Defines ] [ Definitions ] Flags used in length field of CAN message structures (NTCAN_CMSG_T, ARINC_CMSG_T) in order to mark certain types of CAN frames. DESCRIPTION ARINC_RTR ARINC_NO_DATA -- Marks RTR frames -- The requested object does not contain data, yet. This flag has meaning only, if the handle was opened in object mode or is used on ARINC_CMSG_T objects returned from arincpoll(). ARINC_INTERACTION -- Marks interaction frames (Frames that are transmitted by another handle on the same physical CAN node). This has no meaning if the handle was opened in object mode. ARINC_OLD_DATA NOTES -- Marks old data When using arincpoll() this flag can be used to quickly identify data objects, which haven't changed since last call of arincpoll(). ARINC_INTERACTION is of use for basic CAN-Functions, only. ARINC_CMSG_T NTCAN_CMSG_T Page 18 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

19 Defines 4.3 CAN-Baudrate [ Top ] [ Defines ] [ Definitions ] Flags to be used with arincbaudrateset() and arincbaudrateget() DESCRIPTION ARINC_NO_BAUDRATE ARINC_AUTOBAUD -- The CAN node is taken off bus. It won't be able receive or send frames anymore, nor will it perform any kind of error detection. -- Activates automatic baudrate detection Following defines set CiA recommended baudrates: ARINC_BAUD_ MBit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s Flags to be used in combination with the above defines: ARINC_LISTEN_ONLY_MODE -- CAN node is set in listening only mode. Within this mode, the CAN node can receive CAN frames and even detect errors, but it won't interfere with the CAN bus. No transmission is possible, nor will the node communicate any detected errors on CAN bus. This can also be combined with ARINC_AUTOBAUD (useful e.g. to have an analyzer application adapt to any given CAN bus. If a baudrate was detected, the baudrate will be locked. If the baudrate changes on CAN bus, autobaud needs to be reenabled, in order to adapt to the new baudrate. Additional flags, which allow to configure baudrates in different ways: ARINC_USER_BAUDRATE -- By means of this mask, user can program the BTRs of the CAN controller directly. ARINC_USER_BAUDRATE_NUM -- User can specify a numerical value in Bits/s as baudrate parameter. E.g.: ARINC_USER_BAUDRATE_NUM will lead to a baudrate of 500 kbit/s. NOTES The described defines cover CiA defined baudrates, only. In addition to these a number of other predefined baudrates exist. Following table shows all predefined baudrates, use index as parameter for arincbaudrateset(): ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 19 of 106

20 Defines Baudrate Index MBit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s 0x kbit/s ARINC_BAUD_ kbit/s 0x kbit/s ARINC_BAUD_ kbit/s 0x kbit/s ARINC_BAUD_ kbit/s ARINC_BAUD_ kbit/s 0x kbit/s 0x08 50 kbit/s ARINC_BAUD_ kbit/s 0x0A 20 kbit/s ARINC_BAUD_ kbit/s 0x0C 10 kbit/s ARINC_BAUD_10 Furthermore it is possible to set the BTR registers of the CAN controller directly using ARINC_USER_BAUDRATE define. The BTR of the CAN controller used on AMC825 is structured as follows: 32-Bit word with bits MSB (31) downto LSB(0) Bits 7-0: Bitrate Prescaler (BRP) Bits 15-12: TSEG1 Bits 22-20: TSEG2 Bits 26-25: Synchronization Jump Width (SJW) So looking at a 32-Bit word like this 0x0UV0W0XY: SJW = second and third bit of U TSEG2 = lower three bits of V TSEG1 = W BRP = XY arincbaudrateset() arincbaudrateget() Page 20 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

21 Defines 4.4 Handle-Modeflags [ Top ] [ Defines ] [ Definitions ] Mode flags for the mode parameter of arincopen() DESCRIPTION ARINC_MODE_NO_RTR ARINC_MODE_NO_DATA ARINC_MODE_NO_INTERACTION ARINC_MODE_MARK_INTERACTION ARINC_MODE_OBJECT ARINC_MODE_TIMEFORMAT_AIM ARINC_MODE_TIMEFORMAT_FORCE -- The handle will receive no RTR frames -- The handle will receive RTR frames, only -- No interaction frames will be received on this handle -- Interaction frames will be marked in length field -- The handle will be opened in object mode, instead of FIFO mode -- Set the timeformat for ARINC-Functions on this handle to AIM format, otherwise time is represented in seconds (upper 32 bit) and splitseconds (lower 32 bit) since 0:00, January 1st 1970 (UTC). -- Use with care! By means of this flag, you can force the timeformat chosen by the current call of arincopen(), regardless of the timeformat formerly chosen by any other application. If such an application is still running, the effects on its ability to display and calculate times correctly are undefined. In any case, this flag will cause loss of synchronisation and following resynchronisation of the IRIG-B module (supposing the forced time format differs from the one formerly in use). NOTES By default no flag is set. ARINC-Time arincopen() ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 21 of 106

22 Defines 4.5 Handle-Queuesize [ Top ] [ Defines ] [ Definitions ] Special values to be used with the queuesize parameters of arincopen() DESCRIPTION ARINC_MAX_TX_QUEUESIZE -- Maximum TX queuesize per handle ARINC_MAX_RX_QUEUESIZE -- Maximum RX queuesize per handle arincopen() Page 22 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

23 Defines 4.6 IOCTLs [ Top ] [ Defines ] [ Definitions ] IOCTL commands DESCRIPTION ARINC_IOCTL_FLUSH_RX_FIFO ARINC_IOCTL_GET_RX_MSG_COUNT ARINC_IOCTL_GET_RX_TIMEOUT ARINC_IOCTL_GET_TX_TIMEOUT ARINC_IOCTL_SET_20B_HND_FILTER ARINC_IOCTL_GET_SERIAL ARINC_IOCTL_GET_TIMESTAMP_FREQ ARINC_IOCTL_GET_TIMESTAMP ARINC_IOCTL_ABORT_RX ARINC_IOCTL_ABORT_TX ARINC_IOCTL_SET_RX_TIMEOUT ARINC_IOCTL_SET_TX_TIMEOUT ARINC_IOCTL_TX_OBJ_CREATE - Flush RX FIFO (no arg) - Return number of messages in RX FIFO (arg->int32) - Return configured RX timeout (arg->int32) - Return configured TX timeout (arg->int32) - Configure 20b ID filter (arg=int32) - Get hardware serial number (arg->int32) - Return frequency of timestamp counter (arg->uint64) - Return current timestamp (arg->uint64) - Abort a pending arincread() (no arg) - Abort a pending arincwrite() (no arg) - Change RX timeout (arg=int32) - Change TX timeout (arg=int32) - Create a TX object (arg->ntcan_cmsg_t) These objects can be used for TX scheduling or Auto Answer (also in parallel). Per physical CAN node (NOT per handle) there may be exactly one object created per CAN ID. Maximum number of objects depends on system ressources. ARINC_IOCTL_TX_OBJ_AUTOANSWER_ON - Activates Auto Answer for a given TX object (arg->ntcan_cmsg_t). The object will be immediately send after a RTR frame with same CAN ID has been received. ARINC_IOCTL_TX_OBJ_AUTOANSWER_OFF - Deactivates Auto Answer (arg->ntcan_cmsg_t) ARINC_IOCTL_TX_OBJ_UPDATE - Changes the data contained in a formerly created TX object (arg->ntcan_cmsg_t) ARINC_IOCTL_TX_OBJ_DESTROY - Destroys a formerly created TX object (arg->ntcan_cmsg_t) ARINC_IOCTL_TX_OBJ_SCHEDULE_START - Start the actual TX scheduling (no arg) ARINC_IOCTL_TX_OBJ_SCHEDULE_STOP - Stop TX scheduling (no arg) ARINC_IOCTL_TX_OBJ_SCHEDULE - Schedule a TX object for transmission (arg->ntcan_csched) ARINC_IOCTL_SET_BUSLOAD_INTERVAL - Configures the time between two ARINC_EV_BUSLOAD events (arg=int32) ARINC_IOCTL_GET_BUSLOAD_INTERVAL - Return the time between two ARINC_EV_BUSLOAD events (arg->int32) ARINC_IOCTL_GET_BUS_STATISTIC ARINC_IOCTL_GET_CTRL_STATUS ARINC_IOCTL_GET_BITRATE_DETAILS ARINC_IOCTL_EEI_CREATE ARINC_IOCTL_EEI_DESTROY ARINC_IOCTL_EEI_STATUS ARINC_IOCTL_EEI_CONFIGURE ARINC_IOCTL_EEI_START - Returns statistical data from CAN bus (arg->ntcan_busstatistic) - Returns information about the error status of the CAN controller (arg->ntcan_ctrlstate) - Returns information about the currently configured baudrate (arg->ntcan_bitrate_info) - Allocate error injection (EEI) unit (arg-> ) - Release EEI unit - Get status of EEI unit - Configure EEI unit - Activate EEI unit ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 23 of 106

24 Defines ARINC_IOCTL_EEI_STOP ARINC_IOCTL_EEI_TRIGGER_NOW - Deactivate EEI unit - Manually trigger an activated EEI unit arincioctl() Page 24 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

25 Defines 4.7 IOCTL-TxSchedule [ Top ] [ Defines ] [ Definitions ] Defines to be used flags field of NTCAN_CSCHED structure in combination with arincioctl(arinc_ioctl_tx_obj_schedule). DESCRIPTION ARINC_TXSCHED_FLAG_EN - ID is enabled ARINC_TXSCHED_FLAG_DIS - ID is disabled ARINC_TXSCHED_FLAG_REL - Start time is relative ARINC_TXSCHED_FLAG_ABS - Start time is absolute ARINC_TXSCHED_FLAG_INC8-8 Bit incrementer ARINC_TXSCHED_FLAG_INC16-16 Bit incrementer ARINC_TXSCHED_FLAG_INC32-32 Bit incrementer ARINC_TXSCHED_FLAG_DEC8-8 Bit decrementer ARINC_TXSCHED_FLAG_DEC16-16 Bit decrementer ARINC_TXSCHED_FLAG_DEC32-32 Bit decrementer ARINC_TXSCHED_FLAG_OFS0 - Counter at offset 0 ARINC_TXSCHED_FLAG_OFS1 - Counter at offset 1 ARINC_TXSCHED_FLAG_OFS2 - Counter at offset 2 ARINC_TXSCHED_FLAG_OFS3 - Counter at offset 3 ARINC_TXSCHED_FLAG_OFS4 - Counter at offset 4 ARINC_TXSCHED_FLAG_OFS5 - Counter at offset 5 ARINC_TXSCHED_FLAG_OFS6 - Counter at offset 6 ARINC_TXSCHED_FLAG_OFS7 - Counter at offset 7 arincioctl(arinc_ioctl_tx_obj_schedule) ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 25 of 106

26 Defines 4.8 Status-Features [ Top ] [ Defines ] [ Definitions ] Use these defines to evaluate features field in ARINC_STATUS DESCRIPTION ARINC_FEATURE_FULL_CAN - CAN controller is a so called "Full CAN controller" Compared to "basic CAN controllers" this name does _not_ implicate an improvement, but rather a different purpose. Full CAN controllers are used for embedded applications, whereas basic CAN controllers are better suited for multi-purpose applications ARINC_FEATURE_CAN_20B - 29-Bit CAN IDs can be received and transmitted ARINC_FEATURE_CYCLIC_TX - Customer specific feature flag ARINC_FEATURE_DEVICE_NET - Hardware supports DeviceNet ARINC_FEATURE_RX_OBJECT_MODE - Driver supports RX object mode (sometimes also called flat mode) ARINC_FEATURE_TIMESTAMP - Hardware supports timestamping ARINC_FEATURE_LISTEN_ONLY_MODE - Hardware supports "Listen only mode" ARINC_FEATURE_SMART_DISCONNECT - Driver supports "Leave bus after last close" ARINC_FEATURE_LOCAL_ECHO - Hardware/Driver supports self reception ARINC_FEATURE_ID_RANGES - Featureflag is deprecated, Don't use ARINC_FEATURE_SMART_ID_FILTER - Driver supports granular filtering of 29-Bit CAN IDs ARINC_FEATURE_SCHEDULING ARINC_FEATURE_DIAGNOSTIC - Driver supports TX scheduling mode - Driver/Hardware supports extended bus diagnostic features ARINC_FEATURE_ERROR_INJECTION - Hardware supports error injection ARINC_FEATURE_ID_RANGES - Featureflag is deprecated, Don't use arincstatus() Page 26 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

27 Defines 4.9 Status-IRIG-B [ Top ] [ Defines ] [ Definitions ] Use these defines to evaluate irigbstatus field in ARINC_STATUS or with status parameter of arinctimeget() DESCRIPTION ARINC_IRIGB_STATUS_PHASE_LOCK ARINC_IRIGB_STATUS_BIT_LOCK ARINC_IRIGB_STATUS_POSITION_LOCK ARINC_IRIGB_STATUS_TIME_VALID ARINC_IRIGB_STATUS_NO_DATA ARINC_IRIGB_STATUS_NO_INPUT ARINC_IRIGB_STATUS_FREE_WHEELING - Locked phase of IRIG-B signal Bit is set, when phase error of 1kHz signal is below 100us Bit is reset, when phase error of 1kHz signal is above 1ms - Locked bit state of IRIG-B signal Bit is set, when valid modulation is detected Bit is reset, when no valid modulation is detected - Locked position of IRIG-B signal Bit is set, when two consecutive P-Bits (Position identifier in IRIG-B stream) were detected Bit is reset, when there was an error in P-Bits or Index-Bits detected Note: When this bit is set for the first time, the "time counter" will be set within the following second - The delivered time is valid. Bit is set, when the difference between IRIG-B signal and "time counter" is ten times below 1ms, while ARINC_IRIGB_STATUS_POSITION_LOCK is set Bit is reset, if ARINC_IRIGB_STATUS_TIME_ERROR is set for longer than 60s Note: This bit will stay asserted for a "while", even if IRIG-B signal is lost. In this case ARINC_IRIGB_STATUS_NO_DATA and ARINC_IRIGB_STATUS_NO_INPUT bits will show the loss of IRIG-B signal and ARINC_IRIGB_STATUS_FREE_WHEELING marks the "valid time" as internally generated on basis of the last known IRIG-B signal. Note 2: If IRIG-B signal get's disconnected, ARINC_IRIGB_STATUS_TIME_ERROR won't change and thus ARINC_IRIGB_STATUS_TIME_VALID stays set. - If set, there's no signal or valid modulation detected - If set, there's no valid input signal detected (amplitude of IRIG-B signal is too low) - If set, the IRIG-B controller is not active, there's no IRIG-B signal detected ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 27 of 106

28 Defines ARINC_IRIGB_STATUS_TIME_ERROR If not set, the IRIG-B controller is active, there's a valif IRIG-B signal - If set, current time deviates from "time counter" (expected time) by more than 256ms. Note: This bit will change only, if there's a valid IRIG-B signal. Loss of IRIG-B signal won't change this bit. NOTES In order to judge the quality of current time you need to take at least ARINC_IRIGB_STATUS_TIME_VALID and ARINC_IRIGB_STATUS_FREE_WHEELING into account (in certain cases ARINC_IRIGB_STATUS_TIME_ERROR as well): A) ARINC_IRIGB_STATUS_TIME_VALID == 1 ARINC_IRIGB_STATUS_FREE_WHEELING == 0 ARINC_IRIGB_STATUS_TIME_ERROR == 0 or 1 The current time is based on connected IRIG-B signal. As described for ARINC_IRIGB_STATUS_TIME_ERROR, the current time correlates good (ARINC_IRIGB_STATUS_TIME_ERROR == 0) or rather badly (ARINC_IRIGB_STATUS_TIME_ERROR == 1) with IRIG-B signal. B) ARINC_IRIGB_STATUS_TIME_VALID == 1 ARINC_IRIGB_STATUS_FREE_WHEELING == 1 The current time is based on a previously connected IRIG-B signal. C) ARINC_IRIGB_STATUS_TIME_VALID == 0 The current time is free wheeling, based on a manually set time. The time does _not_ correlate to an IRIG-B signal. There has never been a valid IRIG-B signal connected to the system. arincstatus() arinctimeget() Page 28 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

29 Defines 4.10 Status-Busstates [ Top ] [ Defines ] [ Definitions ] CAN bus status as delivered by ARINC_EV_CAN_ERROR, arincerrorhandler(), arincioctl(arinc_ioctl_get_ctrl_status) or arincstatus() DESCRIPTION ARINC_BUSSTATE_OK ARINC_BUSSTATE_WARN - CAN bus is ok - One of the CAN error counters (RX or TX) has reached its warning limit ARINC_BUSSTATE_ERRPASSIVE - One of the CAN error counters (RX or TX) has went over 127. The CAN node is "error passive". It is still possible to send and receive CAN frames, but the CAN node won't generate error frames anymore. ARINC_BUSSTATE_BUSOFF CAN-errors ARINC_EV_CAN_ERROR arincerrorhandler() arincioctl(arinc_ioctl_get_ctrl_status) arincstatus() - TX error counter has passed 255. The CAN node can't receive or transmit anymore, it won't interfere with the CAN bus. ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 29 of 106

30 Defines 4.11 Bitrate-Controller [ Top ] [ Defines ] [ Definitions ] Type of CAN controller as returned from arincioctl(arinc_ioctl_get_ctrl_status) or arincioctl(arinc_ioctl_get_bitrate_details) DESCRIPTION ARINC_CANCTL_SJA NXP SJA1000 / 82C200 ARINC_CANCTL_I Intel I82527 ARINC_CANCTL_FUJI - Fujitsu MBxxxxx MCU ARINC_CANCTL_LPC - NXP LPC2xxx MCU ARINC_CANCTL_MSCAN - Freescale MCU ARINC_CANCTL_ATSAM - Atmel ARM CPU ARINC_CANCTL_ESDACC - esd ESDACC ARINC_CANCTL_CC770 - Bosch CC770 IOCTLs NTCAN_CTRLSTATE NTCAN_BITRATE_INFO arincioctl(arinc_ioctl_get_ctrl_status) arincioctl(arinc_ioctl_get_bitrate_details) Page 30 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

31 Defines 4.12 Bitrate-Flags [ Top ] [ Defines ] [ Definitions ] Special (probably controller specific) attributes of a CAN baudrate, as delivered by arincioctl(arinc_ioctl_get_bitrate_details) DESCRIPTION ARINC_BITRATE_FLAG_SAM - Triple sampling activated IOCTLs NTCAN_BITRATE_INFO arincioctl(arinc_ioctl_get_bitrate_details) ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 31 of 106

32 Defines 4.13 IRIG-B-Modeflags [ Top ] [ Defines ] [ Definitions ] Mode flags for the mode parameter of arincirigbconfigset() and arincirigbconfigget() DESCRIPTION ARINC_IRIGB_SOURCE_ANALOG_1 ARINC_IRIGB_SOURCE_DIGITAL_1 ARINC_IRIGB_TIMEFORMAT_YEAR -- Select IRIG-B Analog input as source for IRIG-B time. This is the default input, if no or multiple inputs are selected -- Select IRIG-B Digital input as source for IRIG-B time -- If this flag is set, the year information (which is an optional IRIG-B extension) will be used. If both ARINC_IRIGB_TIMEFORMAT_YEAR and ARINC_IRIGB_TIMEFORMAT_YEAR_MAN are set, this flag has priority. ARINC_IRIGB_TIMEFORMAT_YEAR_MAN -- If this flag is set, the year may/has to be set manually by using arinctimeset(). This flag is ignored, if both ARINC_IRIGB_TIMEFORMAT_YEAR or ARINC_IRIGB_TIMEFORMAT_YEAR_MAN are set. NOTES ARINC_IRIGB_TIMEFORMAT_YEAR and ARINC_IRIGB_TIMEFORMAT_YEAR_MAN might influence other handles and/or applications as well, if not used with care, since they change the configuration of the IRIG-B hardware. On the other hand, there's no need to call arincirigbconfigset() for every handle, once per device is sufficient (if it's needed at all and the default values do not fit your needs). It is recommended to use arincirigbconfigget() prior to calling arincirigbconfigset(). This way it is possible to write applications, which won't interfere with each other. ARINC-Time arincirigbconfigset() arincirigbconfigget() Page 32 of 106 Software Manual Doc. No.: C / Rev. 1.1 ARINC 825 Library

33 Defines 4.14 Errorcodes [ Top ] [ Defines ] [ Definitions ] Error codes generated by ARINC library functions ERRORS ARINC_ERRNO_BASE ARINC_SUCCESS ARINC_RX_TIMEOUT ARINC_TX_TIMEOUT ARINC_TX_ERROR ARINC_CONTR_OFF_BUS ARINC_CONTR_BUSY ARINC_CONTR_WARN ARINC_NO_ID_ENABLED ARINC_ID_ALREADY_ENABLED ARINC_ID_NOT_ENABLED ARINC_INVALID_FIRMWARE ARINC_MESSAGE_LOST ARINC_INVALID_HARDWARE ARINC_PENDING_WRITE ARINC_PENDING_READ ARINC_INVALID_DRIVER ARINC_INVALID_PARAMETER ARINC_INVALID_HANDLE ARINC_NET_NOT_FOUND ARINC_INSUFFICIENT_RESOURCES ARINC_OPERATION_ABORTED ARINC_WRONG_DEVICE_STATE ARINC_HANDLE_FORCED_CLOSE ARINC_NOT_IMPLEMENTED ARINC_NOT_SUPPORTED ARINC_CONTR_ERR_PASSIVE ARINC_ERROR_NO_BAUDRATE ARINC_ERROR_LOM ARINC_SOCK_CONN_TIMEOUT ARINC_SOCK_CMD_TIMEOUT ARINC_SOCK_HOST_NOT_FOUND -- Whenever possible, ARINC library uses system error codes (e.g. under Linux the errno values will be used). For errors which can't be mapped to these system codes, ARINC_ERRNO_BASE is used as offset to avoid ambiguities. -- No error -- A blocking receive function reached its timeout without any reception -- A blocking transmit function reached its timeout without any transmission -- An error occurred, while trying to send -- The CAN controller went in CAN state: Bus Off -- The CAN controller is busy and can't process the given command -- The CAN controller went in CAN state: Bus Warn -- Deprecated error code -- Deprecated error code -- Deprecated error code -- Wrong firmware version -- Messages have been lost by CAN driver -- Wrong hardware version -- Another arincwrite() is pending on the same handle -- Another arincread() is pending on the same handle -- Driver doesn't fit library version -- One of the parameters was invalid -- No valid ARINC_HANDLE -- Attempt to open a handle on a nonexistent CAN bus -- Not enough system ressources for requested operation -- A blocking operation was aborted -- CAN hardware is in wrong power state -- Error currently not supported -- The requested function is not implemented, yet -- The requested function is not supported by the CAN hardware -- The CAN controller went in CAN state: Error Passive -- Attempt to transmit on a CAN node, which has no configured baudrate, yet -- Attempt to transmit on a CAN node in listen only mode -- Special EtherCAN error code -- Special EtherCAN error code -- Special EtherCAN error code ARINC 825 Library Software Manual Doc. No.: C / Rev. 1.1 Page 33 of 106

ELLSI. EtherCAN Low Level Socket Interface. Software Manual. to Product C.2050.xx and C.2051.xx

ELLSI. EtherCAN Low Level Socket Interface. Software Manual. to Product C.2050.xx and C.2051.xx ELLSI Software Manual to Product C.2050.xx and C.2051.xx Software Manual Rev. 1.5 Page 1 of 26 esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany www.esd-electronics.com Fax:

More information

AMC data sheet. PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems

AMC data sheet.   PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems data sheet PMC Module with four bus Nodes ARINC825 compliant for Testing & Simulation of Avionic bus Systems Avionics Databus Solutions product guide General Features The PCI Mezzanine Card (PMC) can work

More information

AMC data sheet. PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems

AMC data sheet.  PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems AIM-USA PMC Module with four bus Nodes ARINC825 compliant for Testing & Simulation of Avionic bus Systems www.aim-online.com Avionics Databus Solutions data sheet product guide www.aim-online.com and IRIG-B

More information

EtherCAN-S7 EtherCAN/2-S7

EtherCAN-S7 EtherCAN/2-S7 EtherCAN-S7 EtherCAN/2-S7 Industrial Ethernet / UDP Gateway Software Manual to Product C.2050.07, C.2051.07 EtherCAN-S7 Software Manual Doc. No.: C.2050.28 / Rev. 1.2 Page 1 of 48 esd electronic system

More information

AMC data sheet. PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems

AMC data sheet.   PMC Module with four CAN bus Nodes ARINC825 compliant for Testing & Simulation of Avionic CAN bus Systems data sheet PMC Module with four bus Nodes ARINC825 compliant for Testing & Simulation of Avionic bus Systems Avionics Databus Solutions product guide General Features The PCI Mezzanine Card (PMC) can work

More information

CAN send and receive with hardware timestamping

CAN send and receive with hardware timestamping CAN send and receive with hardware timestamping Hauke Webermann, esd electronic system design gmbh Modern CAN controllers, especially for FPGA integration, keep growing stronger and more versatile. Also

More information

Freescale Semiconductor, I. SECTION 13 CAN 2.0B CONTROLLER MODULE (TouCAN)

Freescale Semiconductor, I. SECTION 13 CAN 2.0B CONTROLLER MODULE (TouCAN) nc. SECTION 13 CAN 2.0B CONTROLLER MODULE (TouCAN) This section is an overview of the TouCAN module. Refer to D.10 TouCAN Module for information concerning TouCAN address map and register structure. 13.1

More information

Gryphon Hardware Information: Dual SJA1000 Fault Tolerant CAN card

Gryphon Hardware Information: Dual SJA1000 Fault Tolerant CAN card Gryphon Hardware Information: Dual SJA1000 Fault Tolerant CAN card External HD-15 connector pinout Note: We recommend that you not hot swap the connector on this module. We recommend that you turn off

More information

Today. Last Time. Motivation. CAN Bus. More about CAN. What is CAN?

Today. Last Time. Motivation. CAN Bus. More about CAN. What is CAN? Embedded networks Characteristics Requirements Simple embedded LANs Bit banged SPI I2C LIN Ethernet Last Time CAN Bus Intro Low-level stuff Frame types Arbitration Filtering Higher-level protocols Today

More information

CANscript. Python-Scripting Tool for Processing CAN-Messages. Software Manual. CANscript Software Manual Rev. 1.1 Page 1 of 15

CANscript. Python-Scripting Tool for Processing CAN-Messages. Software Manual. CANscript Software Manual Rev. 1.1 Page 1 of 15 CANscript Python-Scripting Tool for Processing CAN-Messages Software Manual CANscript Software Manual Rev. 1.1 Page 1 of 15 esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany

More information

An Introduction to CAN by Peter Bagschik (I+ME ACTIA)

An Introduction to CAN by Peter Bagschik (I+ME ACTIA) 1 of 11 24.10.00 14:36 An Introduction to CAN by Peter Bagschik (I+ME ACTIA) The CAN (Controller Area Network) protocol was developed in Europe for the use in passenger cars. Through the successful use

More information

EtherCAT Master Cross Platform Stack Application Developers Manual to Product P.4500.xx / P.4501.xx / P

EtherCAT Master Cross Platform Stack Application Developers Manual to Product P.4500.xx / P.4501.xx / P EtherCAT Master Cross Platform Stack Application Developers Manual to Product P.4500.xx / P.4501.xx / P.4502.01 EtherCAT Master Application Developers Manual Doc. No.: P.4500.21 / Rev. 1.4 Page 1 of 151

More information

Engineer-to-Engineer Note

Engineer-to-Engineer Note Engineer-to-Engineer Note a EE-227 Technical notes on using Analog Devices DSPs, processors and development tools Contact our technical support at dsp.support@analog.com and at dsptools.support@analog.com

More information

ACC, a Next Generation CAN Controller

ACC, a Next Generation CAN Controller ACC, a Next Generation CAN Controller Reinhard Arlt, esd electronic system design gmbh Andreas Block, esd electronic system design gmbh Tobias Höger, esd electronic system design gmbh Most standalone CAN

More information

CPCI-ASIO4 CAN - RS-232, RS-422, RS-485

CPCI-ASIO4 CAN - RS-232, RS-422, RS-485 CPCI-ASIO4 CAN - RS-232, RS-422, RS-485 or TTY-Interface Hardware Manual Document file: I:\texte\Doku\MANUALS\CPCI\ASIO4\Englisch\ASIO4-11H.en9 Date of print: 28.07.2004 PCB-version: CPCI-ASIO4 Rev. 1.0

More information

Communication Networks for the Next-Generation Vehicles

Communication Networks for the Next-Generation Vehicles Communication Networks for the, Ph.D. Electrical and Computer Engg. Dept. Wayne State University Detroit MI 48202 (313) 577-3855, smahmud@eng.wayne.edu January 13, 2005 4 th Annual Winter Workshop U.S.

More information

CANopen Manager. Software Manual. CANopen Manager Software Manual Doc. No.: C / Rev. 2.2 Page 1 of 47

CANopen Manager. Software Manual. CANopen Manager Software Manual Doc. No.: C / Rev. 2.2 Page 1 of 47 CANopen Manager Software Manual CANopen Manager Software Manual Doc. No.: C.2002.21 / Rev. 2.2 Page 1 of 47 esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany www.esd-electronics.com

More information

OSEK/VDX. Communication. Version January 29, 2003

OSEK/VDX. Communication. Version January 29, 2003 Open Systems and the Corresponding Interfaces for Automotive Electronics OSEK/VDX Communication Version 3.0.1 January 29, 2003 This document is an official release and replaces all previously distributed

More information

CPCI-USB-5. CPCI-USB 2.0 Interface with 6 USB Ports. Hardware Manual. to Product I.2326.xx

CPCI-USB-5. CPCI-USB 2.0 Interface with 6 USB Ports. Hardware Manual. to Product I.2326.xx CPCI-USB-5 CPCI-USB 2.0 Interface with 6 USB Ports Hardware Manual to Product I.2326.xx CPCI-USB-5 Hardware Manual Doc. No.: I.2326.21 / Rev. 1.0 Page 1 of 18 esd electronic system design gmbh Vahrenwalder

More information

LPE-C122. Programming Manual TPM. Version: V D25. To properly use the product, read this manual thoroughly is necessary.

LPE-C122. Programming Manual TPM. Version: V D25. To properly use the product, read this manual thoroughly is necessary. LPE-C122 Programming Manual Version: V1.0 2015D25 To properly use the product, read this manual thoroughly is necessary. Part No.: 81-02C122L-011 1 Revision History Date Revision 2015/12/25 1.0 Document

More information

CP30/G30/MC31 Firmware Version 3100 Known Issues

CP30/G30/MC31 Firmware Version 3100 Known Issues CP30/G30/MC31 Firmware Version 3100 Known Issues Introduction This document lists issues that have been identified with firmware version 3100 for the Kingfisher CP30/G30/MC31 modules. Where possible, workarounds

More information

CANopen Manager. Software Manual. CANopen Manager Manual Doc.-No.: C / Rev esd gmbh Page 1 of 44

CANopen Manager. Software Manual. CANopen Manager Manual Doc.-No.: C / Rev esd gmbh Page 1 of 44 Software Manual Manual Doc.-No.: C.2000.21 / Rev. 2.1 2000-2007 esd gmbh Page 1 of 44 esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany www.esd-electronics.com Fax: 0511/37

More information

Integrated Device Technology, Inc Stender Way, Santa Clara, CA Phone #: (408) Fax #: (408) Errata Notification

Integrated Device Technology, Inc Stender Way, Santa Clara, CA Phone #: (408) Fax #: (408) Errata Notification Integrated Device Technology, Inc. 2975 Stender Way, Santa Clara, CA - 95054 Phone #: (408) 727-6116 Fax #: (408) 727-2328 Errata Notification EN #: IEN01-02 Errata Revision #: 11/5/01 Issue Date: December

More information

History of Firmware Revisions. i-scan. Standard-Reader ID ISCLR200. SWRN ISCLR200 V5.04.doc

History of Firmware Revisions. i-scan. Standard-Reader ID ISCLR200. SWRN ISCLR200 V5.04.doc History of Firmware Revisions i-scan Standard-Reader ID ISCLR200 SWRN ISCLR200 V5.04.doc NOTE Copyright 2000-2006 by FEIG ELECTRONIC GmbH Lange Strasse 4 35781 Weilburg-Waldhausen http://www.feig.de Edition:

More information

NT 200/420. Communication in Gateway Setup SOFTWARE DESIGN GUIDE ENGLISH

NT 200/420. Communication in Gateway Setup SOFTWARE DESIGN GUIDE ENGLISH CAN@net NT 200/420 Communication in Gateway Setup SOFTWARE DESIGN GUIDE 4.02.0332.20000 1.2 ENGLISH Important User Information Liability Every care has been taken in the preparation of this document. Please

More information

CAN-ISA/200. ISA to CAN Interface. Hardware Installation and Technical Data. Hardware Installation and Technical Data CAN-ISA/200 Rev. 1.

CAN-ISA/200. ISA to CAN Interface. Hardware Installation and Technical Data. Hardware Installation and Technical Data CAN-ISA/200 Rev. 1. CAN-ISA/200 ISA to CAN Interface Hardware Installation and Technical Data Manual File: I:\texte\Doku\MANUALS\CAN\ISA\200\ISA2014H.en6 Date of Print: 06.10.2000 Described PCB Version: Rev. 1.0 Changes in

More information

AN Philips LPC2000 CAN driver. Document information

AN Philips LPC2000 CAN driver. Document information Rev. 01 02 March 2006 Application note Document information Info Keywords Abstract Content CAN BUS, MCU, LPC2000, ARM7, SJA1000 This application note describes the CAN controller hardware application programming

More information

VORAGO VA108x0 I 2 C programming application note

VORAGO VA108x0 I 2 C programming application note AN1208 VORAGO VA108x0 I 2 C programming application note MARCH 14, 2017 Version 1.1 VA10800/VA10820 Abstract There are hundreds of peripheral devices utilizing the I 2 C protocol. Most of these require

More information

MODBUS Protocol for MiCOM P30 Series

MODBUS Protocol for MiCOM P30 Series MODBUS Protocol for MiCOM P30 Series Substation Protocols Technical Documentation This document does not replace the Technical Manual Version: MiCOM P30, MODBUS Index: B Release: 08 / 2011 MODBUS Protocol

More information

in Berlin (Germany) Sponsored by Motorola Semiconductor NEC Electronics (Europe) Siemens Semiconductors Organized by

in Berlin (Germany) Sponsored by Motorola Semiconductor NEC Electronics (Europe) Siemens Semiconductors Organized by 4 th international CAN Conference icc 1997 in Berlin (Germany) Sponsored by Motorola Semiconductor NEC Electronics (Europe) Siemens Semiconductors Organized by CAN in Automation (CiA) international users

More information

NI-CAN 2.6 Error/Warning Codes

NI-CAN 2.6 Error/Warning Codes NI-CAN 2.6 Error/Warning Codes Decimal Value Hexadecimal Description Value -1074388991 BFF62001 The timeout of a wait or notification function expired before any desired state occurred. Solutions: Increase

More information

CSX600 Runtime Software. User Guide

CSX600 Runtime Software. User Guide CSX600 Runtime Software User Guide Version 3.0 Document No. 06-UG-1345 Revision: 3.D January 2008 Table of contents Table of contents 1 Introduction................................................ 7 2

More information

Controller Area Network

Controller Area Network Controller Area Network 1 CAN FUNDAMENTALS...3 1.1 USER BENEFITS...3 1.1.1 CAN is low cost...3 1.1.2 CAN is reliable...3 1.1.3 CAN means real-time...3 1.1.4 CAN is flexible...3 1.1.5 CAN means Multicast

More information

User Manual. R Series Encoders with CANopen Interface RNX HE 11 / 2005

User Manual. R Series Encoders with CANopen Interface RNX HE 11 / 2005 R Series Encoders with CANopen Interface RNX 11197 HE 11 / 2005 User Manual TWK-ELEKTRONIK GmbH PB. 10 50 63 D-40041 Düsseldorf Tel.: +49/211/63 20 67 Fax: +49/211/63 77 05 info@twk.de www.twk.de COPYRIGHT:

More information

X-gateway Interface Addendum DeviceNet Scanner Interface

X-gateway Interface Addendum DeviceNet Scanner Interface X-gateway Interface Addendum DeviceNet Scanner Interface Rev. 1.10 HMS Industrial Networks AB Germany Japan Sweden U.S.A + 49-721 - 96472-0 + 81-45 - 478-5340 + 46-35 - 17 29 20 + 1-773 - 404-3486 ge-sales@hms-networks.com

More information

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING UNIT-2 2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS 2.2.1 Pure ALOHA 2.2.2 Slotted ALOHA 2.2.3 Carrier Sense Multiple Access 2.2.4 CSMA with Collision Detection 2.2.5 Collision Free Protocols 2.2.5.1

More information

TDT 1.2 Release Notes and FAQ March 2002

TDT 1.2 Release Notes and FAQ March 2002 TDT 1.2 Release Notes and FAQ March 2002 This document gives additional information about the use of the ARM Trace Debug Tools TDT 1.2 (build 1031) For more information, please see the Trace Debug Tools

More information

CANreal. CANopen Tool for Testing and Monitoring CANopen Networks. Software Manual. CANreal Software Manual Rev. 2.2 Page 1 of 28

CANreal. CANopen Tool for Testing and Monitoring CANopen Networks. Software Manual. CANreal Software Manual Rev. 2.2 Page 1 of 28 CANreal CANopen Tool for Testing and Monitoring CANopen Networks Software Manual CANreal Software Manual Rev. 2.2 Page 1 of 28 esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany

More information

Contents. Additional Instructions P-3X CANopen

Contents. Additional Instructions P-3X CANopen Page 1 of 24 / 07.04.14 Contents 1. Quick Start Guide... 2 2. Service Data Object (SDO)... 3 2.1 Read Object... 3 2.2 Write Object... 3 2.3 Abort SDO Transfer... 3 2.4 SDO Abort Codes... 4 3. Process Data

More information

NETWORK ANALYZER SOFTWARE (NAS) USER S MANUAL Version Preliminary

NETWORK ANALYZER SOFTWARE (NAS) USER S MANUAL Version Preliminary NETWORK ANALYZER SOFTWARE (NAS) USER S MANUAL Version 3.6 - Preliminary ª 2000 Dearborn Group Inc. 27007 Hills Tech Court Farmington Hills, MI 48331 Phone (248) 488-2080 Fax (248) 488-2082 http://www.dgtech.com

More information

ROC Plus Protocol. Specification Manual. Form A6127. Flow Computer Division. Part Number D301180X0012 January 2007

ROC Plus Protocol. Specification Manual. Form A6127. Flow Computer Division. Part Number D301180X0012 January 2007 Form A6127 Part Number D301180X0012 January 2007 ROC Plus Protocol Specification Manual Flow Computer Division Website: www.emersonprocess.com/flow Revision Tracking Sheet January 2007 This manual is periodically

More information

J1939. Stack and SDK for esd CAN Hardware. Software Manual. to Product C , C , C , C

J1939. Stack and SDK for esd CAN Hardware. Software Manual. to Product C , C , C , C J1939 Stack and SDK for esd CAN Hardware Software Manual to Product C.1130.10, C.1130.11, C.1130.15, C.1130.09 J1939 Software Manual Doc.-No.: C.1130.21 / Rev. 1.2 Page 1 of 70 esd electronic system design

More information

BOSCH. CAN Specification. Version , Robert Bosch GmbH, Postfach , D Stuttgart

BOSCH. CAN Specification. Version , Robert Bosch GmbH, Postfach , D Stuttgart CAN Specification Version 2.0 1991, Robert Bosch GmbH, Postfach 30 02 40, D-70442 Stuttgart CAN Specification 2.0 page 1 Recital The acceptance and introduction of serial communication to more and more

More information

MB hm90540-cm e-corr-x1-00. Fujitsu Microelectronics Europe GmbH

MB hm90540-cm e-corr-x1-00. Fujitsu Microelectronics Europe GmbH Corrections of Hardware Manual MB90540 hm90540-cm44-10108-3e-corr-x1-00 Fujitsu Microelectronics Europe GmbH Addendum, MB90540 Hardware Manual (CM44-10108-3E) This is the Addendum for the Hardware Manual

More information

VPGate Manual PROFIBUS to serial

VPGate Manual PROFIBUS to serial VPGate Manual PROFIBUS to serial Important information Purpose of the Manual This user manual provides information how to work with the VPGate PROFIBUS to serial. Document Updates You can obtain constantly

More information

Motors Automation Energy Transmission & Distribution Coatings. Software WSCAN. User's Manual

Motors Automation Energy Transmission & Distribution Coatings. Software WSCAN. User's Manual Motors Automation Energy Transmission & Distribution Coatings Software WSCAN User's Manual User's Manual Series: WSCAN V2.0X Language: English Publication Date: 11/2010 Content 3 Index 0 Parte I General

More information

PLC2 Board Communication Manual CANopen Slave

PLC2 Board Communication Manual CANopen Slave PLC2 Board Communication Manual CANopen Slave 02/2006 Series: PLC2 0899.5809 E/3 Contents Contents List of Tables 4 List of Figures 4 About the Manual 5 Abbreviations and Definitions...............................

More information

CP30/G30/MC31 Firmware Service Update Version 2993 (19 Aug 2013) Release Notes

CP30/G30/MC31 Firmware Service Update Version 2993 (19 Aug 2013) Release Notes CP30/G30/MC31 Firmware Service Update Version 2993 (19 Aug 2013) Release Notes Summary This package contains updated firmware for the Kingfisher CP30/G30/MC31 modules. Note: This firmware should be used

More information

IBM. Software Development Kit for Multicore Acceleration, Version 3.0. SPU Timer Library Programmer s Guide and API Reference

IBM. Software Development Kit for Multicore Acceleration, Version 3.0. SPU Timer Library Programmer s Guide and API Reference IBM Software Development Kit for Multicore Acceleration, Version 3.0 SPU Timer Library Programmer s Guide and API Reference Note: Before using this information and the product it supports, read the information

More information

WiMOD LoRaWAN EndNode Modem HCI Specification

WiMOD LoRaWAN EndNode Modem HCI Specification WiMOD LoRaWAN EndNode Modem HCI Specification Specification Version 1.13 Document ID: 4100/40140/0073 IMST GmbH Carl-Friedrich-Gauß-Str. 2-4 47475 KAMP-LINTFORT GERMANY Introduction Document Information

More information

Operator Manual for Profibus

Operator Manual for Profibus PROCESS ANALYSERS SERVOPRO MultiExact Operator Manual for Profibus Part Number: Revision: Language: 05410007A 0 UK English This page intentionally blank LIST OF CONTENTS Section Page 1. DESCRIPTION AND

More information

Operating Manual. Inferface. CANopen. English

Operating Manual. Inferface. CANopen. English Operating Manual Inferface CANopen English Disclaimer The information in this brochure corresponds to our current state of knowledge. However, it is not to be understood as a warranty for certain characteristics

More information

Ingenieurbüro für Echtzeitprogrammierung CAN-LIB

Ingenieurbüro für Echtzeitprogrammierung CAN-LIB Ingenieurbüro für Echtzeitprogrammierung CAN-LIB Dok-Rev. 1.1 vom 06.11.2009 Software-Rev. 2.4 vom 28.05.2009 Table of Contents 1 Copyright and Disclaimer...3 1.1 Handling 3 1.2 Statement 3 2 Introduction...

More information

APPLICATION NOTES. Advanced Graphical Interface - AGI Internal PLC (CODESYS V3) SHENDONG

APPLICATION NOTES. Advanced Graphical Interface - AGI Internal PLC (CODESYS V3) SHENDONG APPLICATION NOTES Advanced Graphical Interface - AGI Internal PLC (CODESYS V3) SHENDONG CODESYS V3 logic running on AGI 300/400 series product Support of Modbus/TCP and RTU communication Use of remote

More information

MCP2510. MCP2510 Rev. AA Silicon Errata Sheet. 3. Module: Error Flags. 1. Module: Configuration Mode State Machine. 4. Module: Bus Timing Logic

MCP2510. MCP2510 Rev. AA Silicon Errata Sheet. 3. Module: Error Flags. 1. Module: Configuration Mode State Machine. 4. Module: Bus Timing Logic M MCP2510 MCP2510 Rev. AA Silicon Errata Sheet The MCP2510 parts you have received conform functionally to the Device Data Sheet (DS21291C), except for the anomalies described below. All of the problems

More information

MW100 CAN Bus Module Configuration Tool (MX118-CAN-M30/S1) User s Manual

MW100 CAN Bus Module Configuration Tool (MX118-CAN-M30/S1) User s Manual MW100 CAN Bus Module Configuration Tool (MX118-CAN-M30/S1) User s Manual 1 Contents Before Using the Software... 3 Explanation of Functions... 3 MX118 Part Names and Functions... 3 Operation Guide... 4

More information

PCAN-ExpressCard ExpressCard to CAN Interface. User Manual V2.0.0

PCAN-ExpressCard ExpressCard to CAN Interface. User Manual V2.0.0 PCAN-ExpressCard ExpressCard to CAN Interface User Manual V2.0.0 Products taken into account Product Name Model Item Number PCAN-ExpressCard Single One CAN channel IPEH-003000 Channel PCAN-ExpressCard

More information

Winford Engineering ETH32 Protocol Reference

Winford Engineering ETH32 Protocol Reference Winford Engineering ETH32 Protocol Reference Table of Contents 1 1 Overview 1 Connection 1 General Structure 2 Communications Summary 2 Port Numbers 4 No-reply Commands 4 Set Port Value 4 Set Port Direction

More information

PCAN-PC/104 CAN Interface for PC/104. User Manual V2.2.3

PCAN-PC/104 CAN Interface for PC/104. User Manual V2.2.3 PCAN-PC/104 CAN Interface for PC/104 User Manual V2.2.3 Products taken into account Product Name Model Part number PCAN-PC/104 Single Channel One CAN channel IPEH-002054 PCAN-PC/104 Dual Channel Two CAN

More information

Technical Manual. KNX/DALI ACTUATOR 1x8 channels Art /70100

Technical Manual. KNX/DALI ACTUATOR 1x8 channels Art /70100 KNX/DALI ACTUATOR 1x8 channels Art. 1630.04140/70100 DATEC ELECTRONIC AG Hochbergerstrasse 60C 4057 Basel Tel. +41 61 633 22 25, Fax. +41 61 633 22 27 www.datec.ch, support@datec.ch Because of continuous

More information

DN-DP PROFIBUS-DP / DeviceNet-Gateway

DN-DP PROFIBUS-DP / DeviceNet-Gateway PROFIBUS-DP / DeviceNet-Gateway Hardware Manual to Product C.2930.02 Hardware Manual Doc.-No.: C.2930.21 / Rev. 1.2 Page 1 of 17 esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany

More information

Last Time. Think carefully about whether you use a heap Look carefully for stack overflow Especially when you have multiple threads

Last Time. Think carefully about whether you use a heap Look carefully for stack overflow Especially when you have multiple threads Last Time Cost of nearly full resources RAM is limited Think carefully about whether you use a heap Look carefully for stack overflow Especially when you have multiple threads Embedded C Extensions for

More information

CPCI-CAN/200. CompactPCI-CAN-Interface. Hardware-Installation and Technical Data. Installation and Technical Data CPCI-CAN/200 Rev. 2.

CPCI-CAN/200. CompactPCI-CAN-Interface. Hardware-Installation and Technical Data. Installation and Technical Data CPCI-CAN/200 Rev. 2. CPCI-CAN/200 CompactPCI-CAN-Interface Hardware-Installation and Technical Data Document file: I:\texte\Doku\MANUALS\CPCI\CAN-200\Englisch\CPCI200_20H.en9 Date of print: 06.08.04 PCB version: CAN-CPCI/200

More information

Frequently Asked Questions

Frequently Asked Questions LAN91C111 Frequently Asked Questions 10/100 Non-PCI Ethernet Single Chip MAC and PHY IMPLEMENTATION Q: What is the minimum cycle time for each read and write access (synchronous, asynchronous, burst, non-burst)?

More information

FNL Modbus TCP Interface

FNL Modbus TCP Interface FNL Modbus TCP Interface Users Manual V0.1 17.06.2009 Project No.: 5304 Doc-ID.: FNL Modbus TCP Interface-UM-V0.1 Status: Released COMSOFT d:\windoc\icp\doku\hw\fnl\modbus tcp\version_0.1\fnl_modbus_tcp_e.doc

More information

Errata details published in this document refer to the following silicon: netx100, Revision A (Step A, ROM Rev. 2, Boot loader major vers.

Errata details published in this document refer to the following silicon: netx100, Revision A (Step A, ROM Rev. 2, Boot loader major vers. 1/10 A. Affected Silicon Revision Errata details published in this document refer to the following silicon: netx100, Revision A (Step A, ROM Rev. 2, Boot loader major vers. 0x41) B. Document Revision History

More information

PCAN-PC/104-Plus Quad Four-Channel CAN Interface for PC/104-Plus. User Manual. Document version ( )

PCAN-PC/104-Plus Quad Four-Channel CAN Interface for PC/104-Plus. User Manual. Document version ( ) PCAN-PC/104-Plus Quad Four-Channel CAN Interface for PC/104-Plus User Manual Document version 1.3.1 (2017-01-30) Relevant products Product name Model Part number PCAN-PC/104-Plus Quad Four CAN channels

More information

µtasker Document Controller Area Netwok (CAN)

µtasker Document Controller Area Netwok (CAN) Embedding it better... µtasker Document Controller Area Netwok (CAN) utaskercan.doc/1.01 Copyright 2014 M.J.Butcher Consulting Table of Contents 1. Introduction...3 2. CAN Bit Timing...4 3. CAN Frame Format...5

More information

RX Family APPLICATION NOTE. I 2 C Bus Interface (RIIC) Module Using Firmware Integration Technology. Introduction. Target Device.

RX Family APPLICATION NOTE. I 2 C Bus Interface (RIIC) Module Using Firmware Integration Technology. Introduction. Target Device. I 2 C Bus Interface (RIIC) Module Using Firmware Integration Technology Introduction APPLICATION NOTE R01AN1692EJ0231 Rev. 2.31 This application note describes the I 2 C bus interface (RIIC) module using

More information

PCAN-PC/104-Plus Quad Four-Channel CAN Interface for PC/104-Plus. User Manual V1.0.1

PCAN-PC/104-Plus Quad Four-Channel CAN Interface for PC/104-Plus. User Manual V1.0.1 PCAN-PC/104-Plus Quad Four-Channel CAN Interface for PC/104-Plus User Manual V1.0.1 Products taken into account Product Name Model Part Number PCAN-PC/104-Plus Quad Four CAN channels IPEH-002099 On request

More information

CAN-Gateway Configurator

CAN-Gateway Configurator CAN-Gateway Configurator Version 5 USER MANUAL 4.02.0332.20001 EN 1.1 ENGLISH Important User Information Liability Every care has been taken in the preparation of this document. Please inform HMS Industrial

More information

CODE TIME TECHNOLOGIES. Abassi RTOS. I2C Support

CODE TIME TECHNOLOGIES. Abassi RTOS. I2C Support CODE TIME TECHNOLOGIES Abassi RTOS I2C Support Copyright Information This document is copyright Code Time Technologies Inc. 2015-2018 All rights reserved. No part of this document may be reproduced or

More information

Errata Sheet RV-8803-C7

Errata Sheet RV-8803-C7 Errata Sheet Errata Sheet October 2017 1/8 Rev. 1.2 TABLE OF CONTENTS 1. DEVICE LIMITATION I 2 C COMMUNICATION... 3 1.1. SILICON IDENTIFICATION... 3 1.2. DESCRIPTION... 3 1.3. PROBABILITY... 3 1.4. WORKAROUND...

More information

DYNAMIC ENGINEERING 150 DuBois, Suite C Santa Cruz, CA (831) Fax (831) Est

DYNAMIC ENGINEERING 150 DuBois, Suite C Santa Cruz, CA (831) Fax (831) Est DYNAMIC ENGINEERING 150 DuBois, Suite C Santa Cruz, CA 95060 (831) 457-8891 Fax (831) 457-4793 www.dyneng.com sales@dyneng.com Est. 1988 alt_atp Linux Device Driver Documentation Revision A Corresponding

More information

CAN-PCIe/200. Passive CAN-Interface Board for PCI Express. Hardware Manual. to Product C.2042.xx

CAN-PCIe/200. Passive CAN-Interface Board for PCI Express. Hardware Manual. to Product C.2042.xx CAN-PCIe/200 Passive CAN-Interface Board for PCI Express Hardware Manual to Product C.2042.xx CAN-PCIe/200 Hardware Manual Doc. No.: C.2042.21 / Rev. 1.2 Seite 1 von 22 esd electronic system design gmbh

More information

PCAN-PCI Express FD CAN FD Interface for PCI Express. User Manual. Document version ( )

PCAN-PCI Express FD CAN FD Interface for PCI Express. User Manual. Document version ( ) PCAN-PCI Express FD CAN FD Interface for PCI Express User Manual Document version 1.2.0 (2017-06-15) Relevant products Product name Model Part number PCAN-PCI Express FD Single Channel PCAN-PCI Express

More information

in Mainz (Germany) Sponsored by Allen Bradley National Semiconductor Philips Semiconductors Organized by

in Mainz (Germany) Sponsored by Allen Bradley National Semiconductor Philips Semiconductors Organized by 1 st international CAN Conference icc 1994 in Mainz (Germany) Sponsored by Allen Bradley National Semiconductor Philips Semiconductors Organized by CAN in Automation (CiA) international users and manufacturers

More information

CHAPTER 5 REGISTER DESCRIPTIONS

CHAPTER 5 REGISTER DESCRIPTIONS USER S MANUAL 5 CHAPTER 5 REGISTER DESCRIPTIONS 5. INTRODUCTION This section describes the functions of the various bits in the registers of the SCC (Tables 5- and 5-2). Reserved bits are not used in this

More information

CAN-USB/2. USB 2.0-CAN-Interface. Hardware Installation and technical Data. to Product C.2066.xx. Installation and technical Data CAN-USB/2 Rev. 1.

CAN-USB/2. USB 2.0-CAN-Interface. Hardware Installation and technical Data. to Product C.2066.xx. Installation and technical Data CAN-USB/2 Rev. 1. CAN-USB/2 USB 2.0-CAN-Interface Hardware Installation and technical Data to Product C.2066.xx esd electronic system design gmbh Vahrenwalder Str. 207 30165 Hannover Germany www.esd-electronics.com Fax:

More information

Controller Area Network CAN. messages

Controller Area Network CAN. messages Controller Area Network CAN messages CAN message 11 or 29 bits 0-8 bytes CAN Id/ Priority DLC 4bits Data Frame CAN Data Frame Std Transmitter Receiver 1 0 1 11 1 2 4 0-64 15 1 1 1 7 3 Identifier Start

More information

CAN protocol enhancement

CAN protocol enhancement Protocols CAN protocol enhancement This article describes the enhanced CAN protocol called CAN-HG and the features of the IC circuitry from Canis that implement it. CAN-HG has been designed to meet two

More information

Modbus ASCII Serial Device Driver Help 2009 Kepware Technologies

Modbus ASCII Serial Device Driver Help 2009 Kepware Technologies Modbus ASCII Serial Device Driver Help 2009 Kepware Technologies 1 Table of Contents 1 Getting Started... 3 Help Contents... 3 Overview... 3 2 Device Setup... 3 Device Setup... 3 Cable Diagram... 4 Modem

More information

PCAN-LIN Interface for LIN, CAN, and RS-232. User Manual. Document version ( )

PCAN-LIN Interface for LIN, CAN, and RS-232. User Manual. Document version ( ) PCAN-LIN Interface for LIN, CAN, and RS-232 User Manual Document version 2.2.1 (2017-02-03) Relevant products Product Name Model Part number PCAN-LIN High-speed CAN (HS-CAN) IPEH-002025 PCAN-LIN Low-speed

More information

MB hm90495-cm e-corr-x1-04

MB hm90495-cm e-corr-x1-04 Corrections of Hardware Manual MB90495 hm90495-cm44-10114-5e-corr-x1-04 Fujitsu Microelectronics Europe GmbH Addendum, MB90495G Hardware Manual (CM44-10114-5E) This is the Addendum for the Hardware Manual

More information

Technical Manual. DALI GATEWAY Art A

Technical Manual. DALI GATEWAY Art A DALI GATEWAY Art. 119914 14783 003A TOTAL AUTOMATION GENERAL TRADING CO. LLC SUITE NO.506, LE SOLARIUM OFFICE TOWER, SILICON OASIS, DUBAI. UAE. Tel. +971 4 392 6860, Fax. +971 4 392 6850 www.tacdubai.com,

More information

User s Manual. EIB 741 EIB 742 External Interface Box for Connecting HEIDENHAIN Encoders

User s Manual. EIB 741 EIB 742 External Interface Box for Connecting HEIDENHAIN Encoders User s Manual EIB 741 EIB 742 External Interface Box for Connecting HEIDENHAIN Encoders July 2013 DOCUMENTATION... 5 FIRMWARE VERSION... 5 CHANGE HISTORY... 5 PART 1: FEATURES... 6 1 GENERAL DESCRIPTION

More information

Document Conventions nc. Page 2-4, 2.1.6: While MCBASE normally points to external RAM, it is permissible to set it up that some or all BDs will actua

Document Conventions nc. Page 2-4, 2.1.6: While MCBASE normally points to external RAM, it is permissible to set it up that some or all BDs will actua Application Note AN2289/D Rev. 0, 6/2002 MPC8xx QMC Usage Advisory Heinz Wrobel Freescale GmbH, Munich Part I Introduction QUICC multichannel controller (QMC), support in some of the MPC8xx family members

More information

Pretty Good Protocol - Design Specification

Pretty Good Protocol - Design Specification Document # Date effective October 23, 2006 Author(s) Ryan Herbst Supersedes Draft Revision 0.02 January 12, 2007 Document Title Pretty Good Protocol - Design Specification CHANGE HISTORY LOG Revision Effective

More information

Keysight M8070A System Software for M8000 Series of BER Test Solutions

Keysight M8070A System Software for M8000 Series of BER Test Solutions Keysight M8070A System Software for M8000 Series of BER Test Solutions Release Notes The M8070A system software for the M8000 Series of BER Test Solutions is required to control M8041A, M8051A and M8061A.

More information

AvnetCore: Datasheet

AvnetCore: Datasheet AvnetCore: Datasheet CAN Controller with / FIFO Intended Use: Automotive Industry Engine Control Unit Sensors Version 1.0, July 2006 xcan_clk (>8 MHz) pclk reset_n APB Interrupts System Control APB Interface

More information

Remote Update Intel FPGA IP User Guide

Remote Update Intel FPGA IP User Guide Remote Update Intel FPGA IP User Guide Updated for Intel Quartus Prime Design Suite: 18.0 Subscribe Latest document on the web: PDF HTML Contents Contents 1. Remote Update Intel FPGA IP User Guide... 3

More information

UART Implementation Using the N2HET

UART Implementation Using the N2HET Application Report Lit. umber Month ear UART Implementation Using the 2HET Haixiao Weng MCU Safety Application ABSTRACT This application report describes how the Hercules 2HET peripheral can be used to

More information

AN-895 APPLICATION NOTE

AN-895 APPLICATION NOTE APPLICATION NOTE One Technology Way P.O. Box 9106 Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 Fax: 781.461.3113 www.analog.com ADuC702x MicroConverter I 2 C -Compatible Interface by Michael Looney

More information

CAN-PCI/266. Passive 66-MHz PCI-CAN Interface. Hardware Installation and Technical Data. Installation and Technical Data CAN-PCI/266 Rev. 1.

CAN-PCI/266. Passive 66-MHz PCI-CAN Interface. Hardware Installation and Technical Data. Installation and Technical Data CAN-PCI/266 Rev. 1. CAN-PCI/266 Passive 66-MHz PCI-CAN Interface Hardware Installation and Technical Data Document file: I:\texte\Doku\MANUALS\CAN\PCI\266\Englisch\PCI-266_12H.en9 Date of print: 04.04.2005 Described PCB version:

More information

WiMOD LR Base Plus Host Controller Interface

WiMOD LR Base Plus Host Controller Interface WiMOD LR Base Plus Host Controller Interface Specification Version 1.2 Document ID: 4000/40140/0125 IMST GmbH Carl-Friedrich-Gauß-Str. 2-4 47475 KAMP-LINTFORT GERMANY Introduction Document Information

More information

WiMOD LR Base Host Controller Interface

WiMOD LR Base Host Controller Interface WiMOD LR Base Host Controller Interface Specification Version 1.7 Document ID: 4100/40140/0062 IMST GmbH Carl-Friedrich-Gauß-Str. 2-4 47475 KAMP-LINTFORT GERMANY Introduction Document Information File

More information

Programming Assignment #4 Writing a simple parallel port device driver

Programming Assignment #4 Writing a simple parallel port device driver Programming Assignment #4 Writing a simple parallel port device driver Value: (See the Grading section of the Syllabus.) Due Date and Time: (See the Course Calendar.) Summary: This is your second exercise

More information

IP-AD Channel 500 khz Simultaneous IndustryPack Module REFERENCE MANUAL Version 1.4 June 2003

IP-AD Channel 500 khz Simultaneous IndustryPack Module REFERENCE MANUAL Version 1.4 June 2003 IP-AD4500 4 Channel 500 khz Simultaneous IndustryPack Module REFERENCE MANUAL 799-14-000-4000 Version 1.4 June 2003 ALPHI TECHNOLOGY CORPORATION 6202 S. Maple Avenue #120 Tempe, AZ 85283 USA Tel: (480)

More information

Application Note, V1.0, Jul AP XC16x. Interfacing the XC16x Microcontroller to a Serial SPI EEPROM. Microcontrollers

Application Note, V1.0, Jul AP XC16x. Interfacing the XC16x Microcontroller to a Serial SPI EEPROM. Microcontrollers Application Note, V1.0, Jul. 2006 AP16095 XC16x Interfacing the XC16x Microcontroller to a Serial SPI EEPROM Microcontrollers Edition 2006-07-10 Published by Infineon Technologies AG 81726 München, Germany

More information

Nabto Serial Link Protocol

Nabto Serial Link Protocol Nabto Serial Link Protocol Nabto TM Nabto Serial Link Protocol Page 1 of 22 Contents Vocabulary... 4 Introduction... 5 Access Control... 5 Connection type... 5 Access Control List... 5 Protocol details...

More information