VSpy 3 Documentation
All DocsProductsLearning CenterSupport
3.9.14
3.9.14
  • 🚗Welcome to the Vehicle Spy Help Documentation
  • Vehicle Spy Introduction
    • Vehicle Spy Overview
      • Vehicle Spy Tour
        • Vehicle Spy Tour 1: Bus Monitor
        • Vehicle Spy Tour 2: Signal Monitoring and Recording
        • Vehicle Spy Tour 3: Flight Recording
        • Vehicle Spy Tour 4: Node/Vehicle Simulation
        • Vehicle Spy Tour 5: Test Automation
        • Vehicle Spy Tour: Summary
    • Other Vehicle Spy Users
    • Vehicle Spy Specifications
    • Vehicle Spy Required Hardware PC System Requirements
    • Vehicle Spy Website
  • Vehicle Spy Tutorials
    • Vehicle Spy Tutorial Files
    • Getting Comfortable with the User Interface
    • Tabs in the User Interface
    • Tutorial 1: Basics of Vehicle Spy
      • Part 1 - Logon Screen
      • Part 2 - Monitor Message Traffic
      • Part 3 - Examine Messages
      • Part 4 - Your Message Specification in Action
      • Part 5 - Filtering Messages
      • Part 6 - More Ways to Filter in Vehicle Spy
      • Part 7 - Message Timestamps and Pausing
      • Part 8 - Save Your Messages View Buffer
      • Part 9 - Clear the Messages View Buffer
      • Part 10 - Exercises
    • Tutorial: Transmit Messages with Vehicle Spy
      • Part 1 - Load the Setup File
      • Part 2 - Enter a Transmit Message
      • Part 3 - Utilize the Alternate Workspace Panels
      • Part 4 - Manually Transmit a Message
      • Part 5 - Periodically Transmit a Message
      • Part 6 - Automatically Respond to a Message
      • Part 7 - Exercises
    • Tutorial: Decode Signals from Messages
      • Part 1 - Load a Setup File
      • Part 2 - Enter a Message
      • Part 3 - Enter an Equation for an Analog Value
      • Part 4 - View Message Data
      • Part 5 - View Message Data with the Signal List and Signal Plot
      • Part 6 - An Introduction to Signal Plot Features
      • Part 7 - Exercises
    • Tutorial: Database Setup
      • Part 1 - Platform Overview
      • Part 2 - Create a Platform
      • Part 3 - Adding Database Files
      • Part 4 - ECU Setup Wizard
      • Part 5 - Diagnostic Decoding
      • Part 6 - Conclusion
    • Tutorial: Basics of Capture Function Block and Graphical Panels
      • Part 1 - Setup the Simulation
      • Part 2 - Setup the Capture Function Blocks
      • Part 3 - Setup the Graphical Panel
      • Part 4 - Conclusion
    • Tutorial: Basics of Scripting and Playback
      • Part 1 - Setup Application Signals
      • Part 2 - Setup the Graphical Panel
      • Part 3 - Setup The Playback Function Block
      • Part 4 - Setup the Script Function Block
      • Part 5 - Summary
    • Tutorial: Request and Save DTC Data
      • Part 1 - Create a Diagnostic Job
      • Part 2 - Create Function Block to Request and Save Data
      • Part 3 - Make a Graphical Panel
      • Part 4 - Request, Save, and View the DTCs
      • Part 5 - Conclusion
    • Tutorial: DPS Programming Automation
      • Part 1 - Create DPS Programming Job
      • Part 2 - Create Function Block to Launch Programming Services
      • Part 3 - Make a Graphical Panel
      • Part 4 - Use the DPS Programming Graphical Panel
      • Part 5 - DPS Programming Automation Conclusion
    • Tutorial: Getting Fancy with Diagnostics
      • Part 1 - Read Data By Identifier Setup
      • Part 2 - Write Data by Identifier Setup
      • Part 3 - Writing the Read DID
      • Part 4 - Request Identifiers using Dynamically Define Data Identifier
      • Part 5 - Request the Dynamic Identifier
      • Part 6 - Conclusion
    • Tutorial: Sort Messages by ECU
      • Part 1 - Start a New Vehicle Spy Application
      • Part 2 - Enter ECU Source IDs to Sort
      • Part 3 - Setup Capture Type Function Blocks
      • Part 4 - Sort the ECU Messages
      • Part 5 - Setup Application Signals
      • Part 6 - Setup Playback Type Function Blocks
      • Part 7 - Setup Script Type Function Blocks
      • Part 8 - Construct a User Dialog
      • Part 9 - Run the Setup
    • Tutorial: Configuring and Using CoreMini
      • Part 1 - Creating a Tx Message
      • Part 2 - Logging Data
      • Part 3 - Loading the Script to the Hardware
      • Part 4 - How to Run the Script
      • Part 5 - Extracting Data
      • Part 6 - Viewing the Data
      • Part 7 - Conclusion
    • Tutorial: Simple Standalone Logging
      • Part 1 - Getting Started
      • Part 2 - Database/Hardware Setup
      • Part 3 - Channels
      • Part 4 - Checking Channel Selection
      • Part 5 - Standalone Logging
      • Part 6 - CoreMini Console
      • Part 7 - Extract Data
      • Part 8 - Conclusion
    • Tutorial: Standalone Video Logging
      • Tutorial: Standalone Video Logging - Part 1 - Setting up the Axis Camera
      • Tutorial: Standalone Video Logging - Part 2 - Setting Up Vehiclescape DAQ
      • Tutorial: Standalone Video Logging - Part 3 - Extracting the Video
    • Tutorial: C Code Interface
      • Part 1 - Create a Project
      • Part 2 - Adding Events
      • Part 3 - Running the Example
      • Part 4 - Debugging
      • Part 5 - Conclusion
    • Tutorial: How to run multiple devices in one VS3 file
      • Part 1 - Enabling Multiple Devices
      • Part 2 - Adding Devices
      • Part 3 - Assigning Devices
      • Part 4 - Syncing Time Across Multiple Devices
  • Tutorial Summary
  • Basic Operation of Vehicle Spy
    • The Logon Screen
    • Menus & Buttons
    • Running and Stopping
    • Data Directory
    • Create, Open, & Save Vehicle Spy Setups
    • Alternate Workspaces
    • Using Window Docking
  • Vehicle Spy Main Menus
    • Main Menu: File
      • The Logon Screen
      • Create, Open, & Save Vehicle Spy Setups
      • Import Function Blocks and Graphical Panels
      • Data Directory
      • Review Buffer
    • Main Menu: Setup
      • Setup a Network
      • Setup Platforms
      • Network Databases
      • ECUs View
        • Edit ECU Diagnostic Database
        • ECU Diagnostic Services Tab
      • Data Cache Disk Streaming
    • Main Menu: Spy Networks
      • Snapshot
      • Messages View
        • Messages View Filter Bar
          • Messages View Custom Filters
        • Messages View Top Toolbar
          • Message Details Pane
          • Reverse Engineering
          • Messages View Timestamping
          • Pause Messages View
          • Save the Buffer
          • Clear the Buffer
        • Messages View Column Headers
        • Messages View Column Filters
        • Messages View Buffer Display
          • Displaying Signals in Messages View
          • Buffer Progress Display
          • Messages View Task Menus
        • Messages View Bottom Toolbar
          • Color Filters
          • Messages View Data Byte Format
          • Messages View Setup
      • Message Editor
        • Messages Editor: Overview
        • Messages Editor: Receive, Transmit, & Database Tables
        • Add and Delete Messages
        • Messages Editor: Cut, Copy, and Paste
        • Messages Editor: Sort and Arrange
        • Messages Editor: Pick a Network
        • Messages Editor: Right Click Menu
        • Message PT, Trgt, and Src
        • Messages Editor: Message Fields
          • Message Key
          • Message Description
          • Message Type
          • Message Arbitration ID
          • Multiframe Message
            • Receive ISO15765-2 Multiframe Message
            • Transmit ISO15765-2 Multiframe Message
          • Message Length
          • Message Data Bytes
            • Transmit Long Messages
          • Message Source Node
          • Receive Message "Tx Msg" Field
          • Message Color
        • Message Signals
          • Live Edit
          • Message Signal Type
          • Message Signal Type Analog
          • Message Signal Type Digital
          • Message Signal Type State Encoded
          • Message Signal Type Text
          • Message Signal Type DTC
          • Understanding Bit and Byte : Bit Positions
          • Message Signal Format and Units
      • Transmit Panel
        • Ways to Transmit Messages
          • Auto Tx and Transmit Rate
        • Add and Delete Transmit Messages
        • Transmit Panel Filter Bar
        • Dynamic Transmit Message Bytes
      • Networks
        • Setup a Network
        • Network Statistics
        • Moving Messages Between Networks
      • TCP/IP
      • FlexRay Controllers
        • FlexRay Controllers: State/Action Tab
        • FlexRay Controllers: Configuration Tab
        • FlexRay Controllers: Registers Tab
      • FlexRay Cycles
      • Diagnostics
        • Diagnostics View
        • Diagnostics Setup
      • Diagnostics over IP (DoIP)
      • Simulator
      • ECUs View
        • GMLAN ECUs
        • ISO 14229 ECUs
        • Keyword 2000 ECUs
    • Main Menu: Measurement
      • VehicleScape DAQ
        • VehicleScape DAQ: Database/Hardware Setup Tab
        • VehicleScape DAQ: Channels Tab
        • VehicleScape DAQ: PC Logging Tab
        • VehicleScape DAQ: Standalone Logging Tab
          • Standalone Logging: Collections and Methods
            • Collections and Methods: Message Capture Method
              • Message Capture Method: Message Collection Options
              • Message Capture Method: Start Options
            • Message Capture Method: Stop Options
              • Message Capture Method: Stop Options: Finish After Collecting Messages or When Expression is True
              • Message Capture Method: Stop Options: Pre/Post Collection
              • Message Capture Method: Stop Options: One Shot Report
            • Message Capture Method: Restart Options
            • Message Capture Method: Upload to Wireless neoVI
            • Collections and Methods: Bus Query Method
            • Collections and Methods: Histogram Method
            • Collections and Methods: Ethernet DAQ Method
          • Standalone Logging: Status Reporting
          • Standalone Logging: Power Management
          • Standalone Logging: Generation Options
        • VehicleScape DAQ: Gateway
        • VehicleScape DAQ: Online Tab
      • Signal Views
        • Signal Plot
        • Signal List
      • Graphical Panels
        • Graphical Panels: Tools
          • Graphical Panel Controls: Common Control Properties
          • Graphical Panel Controls: LED
          • Graphical Panel Controls: Text Display
          • Graphical Panel Controls: Meter
          • Graphical Panel Controls: Function Block Button
          • Graphical Panel Controls: Tx Button
          • Graphical Panel Controls: On/Off Button
          • Graphical Panel Controls: Action Button
          • Graphical Panel Controls: Diag Job Action Button
          • Graphical Panel Controls: Bargraph
          • Graphical Panel Controls: Knob
          • Graphical Panel Controls: Grid
          • Graphical Panel Controls: Numeric Entry
          • Graphical Panel Controls: Graph
          • Graphical Panel Controls: Text Entry
          • Graphical Panel Controls: Graphical Display
          • Graphical Panel Controls: Drop Down List
          • Graphical Panel Controls: Message History
          • Graphical Panel Controls: Flash Control
          • Graphical Panel Controls: Radio Button
          • Graphical Panel Controls: Bitmap Button
          • Graphical Panel Controls: Panel Button
          • Graphical Panel Controls: Hex Edit
        • Graphical Panels: Add or Delete a Tool
        • Graphical Panels: Tool Properties
        • Graphical Panels: Move a Tool
        • Graphical Panels: Resize a Tool
        • Graphical Panels: Format (Align or Resize) a Tool Group
        • Graphical Panels: Add or Delete Panels
        • Graphical Panels: Select and Work With Panels
        • Graphical Panels: Panel Properties
        • Graphical Panels: Lock Panels
        • Floating Panels
      • Logging
      • MEP (XCP/CCP) - Memory Edit Protocol
        • MEP Setup
          • MEP Setup - Properties
          • MEP Setup - Import / Export
          • MEP Setup - DAQ Tables
          • MEP Setup - Security
          • MEP Setup - Memory / Hex / S19
        • MEP Value Editor
        • MEP Curve Editor
        • MEP Map Editor
        • Data Acquisition with CCP/XCP
      • Data Analysis
        • Data Analysis: Main Menus and Toolbar
        • Data Analysis: Zoom Toolbar
        • Data Analysis: X-Axis Input Toolbar and Dialog
        • Data Analysis: Plotter Setup Toolbar
      • Data Analysis: Tool Dialog
        • Data Analysis: Calculated Channels
      • Data Analysis: Plotter Area
        • Data Analysis: Plotter Options
        • Data Analysis: Advanced Plotting Methods
      • Data Analysis: Channel Value Pane
      • Data Analysis: Output Bar
      • GPS Maps
      • Video
    • Main Menu: Embedded Tools
      • ECU Flashing Documentation
        • 1. Introduction
        • 2. CAL Files and DIDs (Parameters)
        • 3. ISO 14229 Security (example)
        • 4. Requirements
        • 5. ECU Flash Designer View
        • 6. ECU Flash Manager View
        • 7. Remote Vehicle ECU Flashing
        • 8. Additional Features: ECU Flashing - EXE
      • DPS Archive Viewer
      • CAN Terminal
      • Intrepid ECU Flasher: Definitions
      • J1939 Address Manager
      • J1939 DTC Monitor
      • BitSmash
    • Main Menu: GMLAN
      • Virtual Networks
      • GM CGI Bus
    • Main Menu: Scripting and Automation
      • Function Blocks
        • Function Blocks Toolbar
        • Function Block List
        • Function Block Start Tab
        • Function Blocks Types
          • Script Type Function Block
          • Script Type Function Block: Script Toolbar
          • Script Type Function Block: Commands
            • Script Type Function Block Command: Clear History
            • Script Type Function Block Command: Clear Stats
            • Script Type Function Block Command: Comment
            • Script Type Function Block Command: CoreMini Action
            • Script Type Function Block Command: DAQ Action
            • Script Type Function Block Command: Diag Job Action
            • Script Type Function Block Command: Function Block Action
            • Script Type Function Block Commands: If, Else, Else If, End If
            • Script Type Function Block Command: Jump If
            • Script Type Function Block Command: Jump To
            • Script Type Function Block Command: Load Message Data
            • Script Type Function Block Command: Log Data
            • Script Type Function Block Commands: Start Loop and End Loop
            • Script Type Function Block Command: Pause
            • Script Type Function Block Command: Read Data
            • Script Type Function Block Command: Set Value
            • Script Type Function Block Command: Set Value If
            • Script Type Function Block Command: Show Panel
            • Script Type Function Block Command: Sleep
            • Script Type Function Block Command: Stop
            • Script Type Function Block Command: Test DTC
            • Script Type Function Block Command: Text API
            • Script Type Function Block Command: Transmit
            • Script Type Function Block Command: Wait For
            • Script Type Function Block Command: Wait Until
          • Script Type Function Block: Resetting the Present Flag
          • Script Type Function Block: Debugging Tools
          • Capture Type Function Block
            • Capture Type Function Block: Filter Tab
            • Capture Type Function Block: Stop and Trigger Tab
            • Capture Type Function Block: Storage Tab
            • Capture Type Function Block: Data Tab
          • Playback Type Function Block
          • Function Blocks Hotkeys
      • C Code Interface
        • Working with the C Code Interface
        • C Code Interface: Functions and Events
          • Functions and Events: Message Objects
          • Functions and Events: Application Signals
          • Functions and Events: Timers
          • Functions and Events: Common Functions and Events
          • Functions and Events: Graphical Panels
          • Functions and Events: Diagnostic Jobs
          • Functions and Events: Function Blocks
          • Functions and Events: Text API
          • Functions and Events: Network Indexes and Statistics
        • C Code Interface: Object Names, Debugging, and Common Mistakes
        • C Code Interface: Advanced Topics
        • C Code Interface: CAPL Conversion
      • Application Signals
        • Application Signals: Save and Restore
      • Text API Terminal
    • Main Menu: Run
    • Main Menu: Tools
      • Utilities: CoreMini Console
        • Utilities: CoreMini Control
        • Utilities: CoreMini Partitions
        • Utilities: CoreMini Advanced Settings
      • Utilities: Extract / Export
        • Utilities: Extract from SD Card
        • Utilities: Export VSB to Other Formats
        • Utilities: Export VSB Convert VSB (with VSDB) to Other Formats V using Command Prompt in Windows
        • Utilities: Export VSB to CSV format using DataExtract.exe
      • Tools: Problem Log
      • Utilities: File Conversions
        • VSB Editor
      • Tools: Utilities
        • Utilities: VS3EXE Generator
        • Utilities: Hardware Acceleration
        • Tools: Performance
        • Tools: Language
      • PLASMA / ION Setup
      • Tools: Options
        • Options: Spy Networks Tab
          • Spy Networks Tab: J1850 VPW Mode
        • Options: Performance Settings
        • Options: Multimedia
          • Multimedia: Joystick Setup
        • Options: Text API Options
        • Options: License System
          • License Upgrade Eligibility
        • Options: GPS Setup
        • Options: Data Directories
        • Options: Regional Settings
    • Main Menu: Help
      • Contact Information - Intrepid Control Systems, Inc.
      • Vehicle Spy Website
  • Shared Features in Vehicle Spy
    • Shared Features: Calculated Signal Editor
      • Shared Features: Calculated Analog or Digital Signals
      • Shared Features: Calculated Text Signals
    • Shared Features: DTC Database
    • Shared Features: Expression Builder
    • Shared Features: Predefined Function Keys
    • Shared Features: Starting with a Selected View
    • Shared Features: Widgets
  • Vehicle Network Interface Hardware
    • Vehicle Network Interface Hardware: neoVI FIRE
      • General Purpose IO
    • Vehicle Network Interface Hardware: neoVI RED
    • Vehicle Network Interface Hardware: neoVI Blue
      • General Purpose IO
    • Vehicle Network Interface Hardware: ValueCAN
      • Vehicle Network Interface Hardware: ValueCAN 4-2
      • Vehicle Network Interface Hardware: ValueCAN 4-4
      • Vehicle Network Interface Hardware: ValueCAN 4-2EL
      • Vehicle Network Interface Hardware: ValueCAN 4 Industrial
    • Vehicle Network Interface Hardware: RAD-wBMS
    • Vehicle Network Interface Hardware: RAD-A2B
    • Vehicle Network Interface Hardware: RAD-Gigastar
    • Vehicle Network Interface Hardware: RAD-Galaxy
    • Vehicle Network Interface Hardware: ValueLOG
    • Getting Started with neoECU
      • neoECU Requirements
      • neoECU 10
        • neoECU 10: IO Map
        • neoECU 10: Loading Scripts Over CAN
        • neoECU 10: Power Up and Buttons
        • neoECU 10: Examples
      • neoECU 12
      • neoECU 20
        • neoECU 20: Configuration
        • neoECU 20: IO Map
        • neoECU 20: Loading Scripts Over USB
        • neoECU 20: Examples
      • neoECU 22
      • neoECU Firmware Updates
      • neoECU Sleep Mode
    • Vehicle Spy Text API
      • Vehicle Spy Text API: ECU Object
      • Vehicle Spy Text API: Labview Interface
    • Vehicle Spy VSB file Spec
  • Application Notes
    • Application Note: CoreMini Partition Logging
      • Logging - Part 1: General Setup
      • Logging - Part 2: Function Block Setup
      • Logging - Part 3: Sending the Script to the Hardware
      • Logging - Part 4: Conclusion
    • Application Note: VehicleScape Standalone Logging
      • Application Note: VehicleScape Standalone Logging - Part 1: Message Collection Options
      • Application Note: VehicleScape Standalone Logging - Part 2: Collection and Restart Options
      • Application Note: VehicleScape Standalone Logging - Part 3: Reporting Options, Power Management and
      • Application Note: VehicleScape Standalone Logging - Part 4: neoVI MOTE Setup
    • Application Note: XCP Driver Example
      • Application Note: XCP Driver Example - Part 1: Process Overview
      • Application Note: XCP Driver Example - Part 2: Example XCP Driver
      • Application Note: XCP Driver Example - Part 3: ECU Simulation and Porting XCP Driver
    • Application Note: neoVI Logging neoECU DAQ
      • Application Note: neoVI Logging neoECU DAQ - Part 1: neoECU Setup
      • Application Note: neoVI Logging neoECU DAQ - Part 2: VehicleScape DAQ
      • Application Note: neoVI Logging neoECU DAQ - Part 3: Review Data
    • Application Note: Using the neoVI MOTE
      • Application Note: Using the neoVI MOTE - Part 1: Messages
      • Application Note: Using the neoVI MOTE - Part 2: Display on Screen
      • Application Note: Using the neoVI MOTE - Part 3: Using the Speaker
      • Application Note: Using the neoVI MOTE - Part 4: Home Screen and Conclusion
    • Application Note: Gateway Builder Tutorial
      • Tutorial - Gateway Builder - Part 1 - Intro
      • Tutorial - Gateway Builder - Part 2 - Gateway Builder Overview
      • Tutorial - Gateway Builder - Part 3 - Add Messages to Gateway Builder
      • Tutorial - Gateway Builder - Part 4 - Gateway Input Actions
      • Tutorial - Gateway Builder - Part 5 - Output Messages, Signals, and Triggers
    • Application Note: Dynamically Manipulating Application Signal Arrays
      • Application Note: Dynamically Manipulating Application Signal Arrays
      • Application Note: Dynamically Manipulating Application Signal Arrays
      • Application Note: Dynamically Manipulating Application Signal Arrays
      • Application Note: Dynamically Manipulating Application Signal Arrays
    • PHY Dashboard
    • Sample Replay Files
  • Contact Us
    • Contact Information - Intrepid Control Systems, Inc.
Powered by GitBook
LogoLogo

Applications

  • Cybersecurity
  • Data Logging
  • Simulate ECU Functions
  • Diagnostics, Testing and Validation

Products

  • Vehicle Network Adapters
  • Data Loggers
  • Software
  • Automotive Ethernet Tools

Support

  • Support Resources
  • Contact Support
  • Class Schedule & Registration
  • Training Video Library

Company

  • About
  • News
  • Events
  • Contact Us

Copyright © 2024 | All Rights Reserved

On this page
  • Overview
  • Creating a Simulation
  • 1. Setup A UEF Database
  • 2. Select Simulation ECUs:
  • 3. Modify the Simulation Messages and Signals:
  • Setup Message Options
  • Other Simulation Options
  • Automating the Simulator
Edit on GitHub
  1. Vehicle Spy Main Menus
  2. Main Menu: Spy Networks

Simulator

PreviousDiagnostics over IP (DoIP)NextECUs View

Overview

The Simulator is designed to quickly simulate message traffic on a network. The simulator is easy to use, but is flexible enough for very complex simulations. The flexibility allows a user to generate complete interactive simulations with a handful of mouse clicks. The information required to setup the simulator is retrieved from the configured database. This database lists the ECUs involved in a particular network, the messages they transmit and signals present. If the configured database is a GMLAN UEF database, more information is available such as virtual networks involved, periodic message rates, and the ability to simulate receive messages for the selected ECUs. The simulated messages and signals can be sourced from the simulator or through the normal Vehicle Spy software transmit functions. Signal data can be entered automatically from static values, calculated functions, Vehicle Spy expressions, and saved replay files (Figure 1). Vehicle Spy features such as Graphical Panels and Function Blocks can provide the simulation with further options.

Creating a Simulation

There are three main steps for creating a simulation (Figure 2).

2. Select Simulation ECUs:

3. Modify the Simulation Messages and Signals:

Setup Message Options

Each message has setup options. In order to access the Custom Message Setup Dialog (Figure 6), click the hyperlinked blue Select next to the ECU in the Simulation Data tab. First, Disable this Message (Figure 6: ). This allows use of another part of Vehicle Spy to send this message. Next, override the periodic rate in the UEF file (Figure 6: ). For the Generic Simulator type, this must be specified or the message will not be sent. Each default message bytes can be enter manually (Figure 6: ). These message bytes are entered into the message prior to applying signals from an expression or file replay. Finally, Use J1939 "don't care" overrides can be set (Figure 6: ).

Other Simulation Options

Automating the Simulator

The simulator can be fully automated via the Text API which is accessible through Function Blocks and external applications. Automatically setup, start, and stop the simulator as tests require.

1.

The first tab in the simulator dialog, Basic Simulation Setup, allows selection of simulation type and what ECUs to simulate. The first choice is the type of simulator (Figure 3: ). If a GMLAN UEF Database is used with the GMLAN UEF simulator selection, transmit or receive messages can be simulated for selected ECUs. If any other database type is used, then Generic Simulator must be used. This type of simulation is only for transmitting messages from selected ECUs. Next, select the ECUs. You can select one or more ECUs for any networks you are simulating (Figure 3: ). To quickly select all or unselect all ECUs you can use the two buttons at the bottom of the dialog (Figure 3: ).

After the ECUs are selected, the simulator will generate a list of messages and signals required for the simulation. The second tab in the simulator, Simulation Data, allows setup of the messages and signals used for the simulation (Figure 4). There are three ways to setup simulation data. The first option is to to each signal (Figure 4: ) This expression can be a static value, a Vehicle Spy expression, or a signal generator function. Next assign hex data to the message as a whole. By clicking the Setup (Figure 4: ) hot link for a message it is possible to for the entire message. Finally, enter signal data from a replay file (Figure 4: ). Clear all of your setup for both messages and signals by clicking the Clear All Customizations button (Figure 4: ). Each signal indicates the type of signal trigger (event or periodic), the rate for the signal, the applied expression, the data type of the signal, and the min and max value where appropriate. Some messages appear in the list with a red line and circle NO symbol (Figure 4: ). This indicates that the message is disabled. Diagnostic messages are always disabled by the simulator. A user can manually disable any message in the . The simulation log file allows injection of signal values into a simulation. This Excel .CSV file has columns for time and signal value. When the time for each row is met the simulator will assign the values in the rows to the signals in the simulation. To quickly generate a template file for use in Excel click the Generate Template button (Figure 4: ). This template will create a blank file with a header line with all of the signals used in the simulation. The log file created is compatible with the files saved in the Vehicle Spy logging and bus files that are converted.

Next, apply a custom expression to each signal in the simulation. Accomplish this by selecting one or more signals and clicking apply expression. When this has been done, the calculated signal dialog will appear (Figure 5). In this dialog setup the expression for the selected signals. The calculation type selection allows you to select one of the nine expression types (Figure 5: ). These expression types include: 1) Random, 2) Sinusoidal, 3) Ramp, 4) Triangle, 5) Square, 6) Custom List, 7) Equation 8) Static Value and 9)Remote Signal. The static value allows the user to enter a value that does not change. The Equation type allows the user to create a Vehicle Spy expression that can include data from other parts of Vehicle Spy. All of the other types are signal generator types. All parts of the signal generator can be controlled by an expression. The example waveform is shown in the right hand graph (Figure 5: ).

The simulator has a few settings that can be accessed from the options tab (Figure 7). First, disable the simulator so it does not automatically start when Vehicle Spy starts (Figure 7: ). This is useful when from a script and do not want the simulator to start until some initial conditions have been setup. The next group of settings has to do with network management for single wire CAN simulations. First, generate a high voltage wake up when the simulation starts (Figure 7: ). Second, you can have the simulator send out a VNMF message every three seconds with a specified ID (Figure 7: ). This VNMF message will activate all VNs except for the diagnostics VN. If needed, an OSEK type network management scheme can be used. To enable this, Check the "Automatically perform OSEK_NM for simulated nodes" check box (Figure 7: ). Note: It is possible the VNMF message the simulator sends out is not the most appropriate for your simulation. In these cases you can disable the simulator's VNMF and generate your own using Vehicle Spy .

Setup A UEF Database
function block scripts
automating the simulator
apply an expression
enter default hex bytes
message setup
Figure 1: There are many potential sources of signal data.
Figure 2: Three step process for creating a simulation.
Figure 3: Select simulation ECUs on the Basic Simulation Setup tab.
Figure 4: Access message and signal properties from the Simulation Data tab.
Figure 5: Applying an expression to a signal with the Setup Calculated Signal dialog.
Figure 6: Adjust message properties using the Custom Message Setup dialog.
Figure 7: Use the Options tab to change when the simulator starts and Network Management parameters.