SVCAN3Settings Structure

This structure defines various settings for the ValueCAN3 device.

C/C++ Declare

typedef VS_MODIFIER struct _SVCAN3Settings
{
    CAN_SETTINGS can1;
    CAN_SETTINGS can2;
    icscm_uint16 network_enables;
    icscm_uint16 network_enabled_on_boot;
    icscm_int16 iso15765_separation_time_offset;
    icscm_uint16 perf_en;
    icscm_uint16 misc_io_initial_ddr;
    icscm_uint16 misc_io_initial_latch;
    icscm_uint16 misc_io_report_period;
    icscm_uint16 misc_io_on_report_events;
} SVCAN3Settings;

Visual Basic .NET Declare

Public Structure SVCAN3Settings
    Dim Can1 As CAN_SETTINGS
    Dim Can2 As CAN_SETTINGS
    Dim Network_enables As Int16
    Dim Network_enabled_on_boot As Int16
    Dim Iso15765_separation_time_offset As Int16
    Dim Perf_en As Int16
    Dim Misc_io_initial_ddr As Int16
    Dim Misc_io_initial_latch As Int16
    Dim Misc_io_report_period As Int16
    Dim Misc_io_on_report_events As Int16
End Structure

C# Declares

[StructLayout(LayoutKind.Sequential)]
public struct SVCAN3Settings
{
    public CAN_SETTINGS can1;
    public CAN_SETTINGS can2;
    public UInt16 network_enables;
    public UInt16 network_enabled_on_boot;
    public UInt16 iso15765_separation_time_offset;
    public UInt16 perf_en;
    public UInt16 misc_io_initial_ddr;
    public UInt16 misc_io_initial_latch;
    public UInt16 misc_io_report_period;
    public UInt16 misc_io_on_report_events;
}

Remarks

Structure Elements


Item

Description

CAN_SETTINGS can1

See CAN_SETTINGS structure

CAN_SETTINGS can2

See CAN_SETTINGS structure

icscm_uint16 network_enables

Bitfield containing the software license enables. Depending on the hardware license purchased the customer may have to conditionally select which hardware channels to enable. For example the neoVI Red license allows the user to enable any 2 Dual Wire CAN channels and any 2 LIN channels. To enable a specific network its corresponding bit must be set (1). In order to transmit or receive on a network it must be enabled.

Bit field values:

HSCAN1 : 0 MSCAN : 1

icscm_uint16 network_enabled_on_boot

Normally neoVI only initiates its comm channels when CoreMini is running or if neoVI is online with DLL/Vehicle Spy 3. Practically this means the the CAN controllers stay in Listen Only mode until the device goes online. Once online the neoVI loads the user settings. Setting this parameter to 1 will change this behavior so that the neoVI enables its controllers immediately on boot.

Default value = 0.

icscm_int16 iso15765_separation_time_offset

In an ISO15765-2 Transmission, the receiver transmits a flow control message that informs that transmitter how much time there should be between individual CAN messages. This parameter allows the user to shift that spacing to make it smaller or larger. Valid range is -1563 to 1563 units where each unit represents 6.4us. Defaults to 0. If IFS plus the offset is negative than the Tx Messages will be back to back.

Default value = 0.

Examples:

ISO15765-2 Tx Message Inner frame spacing is exactly what is specified in flow control message: iso15765_separation_time_offset = 0

ISO15765-2 Tx Message Inner frame spacing is what’s specified in flow control message.+ 998.4 us: iso15765_separation_time_offset = 156

ISO15765-2 Tx Message Inner frame spacing is what’s specified in flow control message.- 998.4 us: iso15765_separation_time_offset = -156

icscm_uint16 perf_en

icscm_uint16 misc_io_initial_ddr

MISC IO Initial Data Direction Register. Controls the initial data direction of the tristates on all misc digital pins. Each bit corresponds to an individual misc pin. Bit value of 0 signifies an input and bit value 1 signifies and output. Bit values corresponding to non existent pins (EX MISC7-MISC15 on FIRE) have no effect.

Default value = 0.

Examples:

Set MISC1 to be output, all else input: misc_io_initial_ddr = 1

Set MISC1and MISC2 to be output, all else input: misc_io_initial_ddr = 3 (11 binary)

Set all MISC pins to output: misc_io_initial_ddr = 65535 (1111111111111111 binary)

icscm_uint16 misc_io_initial_latch

MISC IO Initial Latch Register. Controls the initial output latch value on all misc digital pins. Each bit corresponds to an individual misc pin. Bit value of 0 signifies an low voltage (ground) and bit value 1 signifies high voltage (3.3 V). Bit values corresponding to non existent pins (EX MISC7-MISC15 on FIRE) have no effect.

Default value = 0.

Examples:

Set MISC1 to be high, all else low: misc_io_initial_latch = 1

Set MISC1and MISC2 to be high, all else low: misc_io_initial_latch = 3 (11 binary)

Set all MISC pins to high: misc_io_initial_latch = 65535 (1111111111111111 binary)

Note: In order for digital outputs to work correctly the corresponding bit in misc_io_initial_ddr must be set to output and corresponding bit in misc_io_analog_enable must be cleared.

icscm_uint16 misc_io_report_period

Period in milliseconds of device report message holding digital and analog data.

Note: Periodic reporting requires misc_io_on_report_events[0] to be set.

icscm_uint16 misc_io_on_report_events

Bitfield holding enables for various report triggers for the General IO report.

Default value = 0.

Bit field values:

REPORT_ON_PERIODIC : 0

REPORT_ON_LED2 : 8

REPORT_ON_MISC1 : 1

REPORT_ON_KLINE : 9

REPORT_ON_MISC2 : 2

REPORT_ON_MISC3_AIN : 10

REPORT_ON_MISC3 : 3

REPORT_ON_MISC4_AIN : 11

REPORT_ON_MISC4 : 4

REPORT_ON_MISC5_AIN : 12

REPORT_ON_MISC5 : 5

REPORT_ON_MISC6_AIN : 13

REPORT_ON_MISC6 : 6

REPORT_ON_LED1 : 7