Documentation

Arnodiqa is a desktop application for Windows. This documentation explains, task by task, how to work in the app, with the steps, screenshots and a short recording. For test benches without a screen and for pipelines there is the command line, described under Automation and CI.

Creating a project, starting a measurement, the Trace with a filter, a frame with signals and a signal in Graphics.

The main window

ToolbarProject menu, Start and Stop (F9, Esc), state and measurement time, the working mode (simulated bus, real bus or offline), the command search (Ctrl+K), bus load per channel, Help and theme.
DesktopsAnalysis (Trace and Write), Messages, Signals (Graphics, Data, Statistics), Stimulation (Interactive Generator) and Project (project explorer and simulation setup).
WindowsWindow adds windows. Windows can be dragged and docked; Layout saves the arrangement.
Write windowMessages from the system, from scripts (Program tab) and from tests (Test tab).
Status barState, connection to the engine, number of events, events per second, buffer and logging.

Screenshots and recordings follow the theme of this site. Click an image to enlarge it.

Open a project, create a new one and add a database

A project bundles the networks, databases, measurement setup, panels and simulation nodes in one YAML file.

  1. Without a loaded project, Arnodiqa opens the start page (Start). New project lists the templates, Examples the examples and Recent projects the projects used last.

    Open a project, create a new one and add a database, step 1Open a project, create a new one and add a database, step 1
  2. Click the project menu at the top left (the button with the project name; without a project it reads No project). Choose New project… for a new project or Open project… (Ctrl+O) to open an existing project file (.yaml).

    Open a project, create a new one and add a database, step 2Open a project, create a new one and add a database, step 2
  3. In the New project dialog, enter the project name under Name, choose the project folder under Folder (with Browse…) and a template under Template, for example Full demo (CAN FD, CAN, panel, diagnostics). Click Create.

    Open a project, create a new one and add a database, step 3Open a project, create a new one and add a database, step 3
  4. The project is loaded and its name appears in the toolbar. On the Project desktop, the project explorer shows the networks, databases, measurement setup, panels and simulation nodes; the simulation setup is on the right.

    Open a project, create a new one and add a database, step 4Open a project, create a new one and add a database, step 4
  5. The project's databases are listed under Databases, here powertrain.dbc for PowerTrain and comfort.dbc for Comfort. The pencil next to a DBC or LDF file opens the Database Editor; the bin removes the database from the project, the file itself remains.

    Open a project, create a new one and add a database, step 5Open a project, create a new one and add a database, step 5
  6. To add a database, click the + to the right of Databases or the + next to a network. In Add database, choose the network (here Comfort), click Choose… and select a DBC, LDF (for a LIN network), ARXML or FIBEX file.

    Open a project, create a new one and add a database, step 6Open a project, create a new one and add a database, step 6
  7. If the file is outside the project folder, choose Copy it into the project folder (a copy next to the project file) or Reference it where it is (the project refers to the file with a relative path, for example ../Shared databases/body_extra.dbc). Click Add database.

    Open a project, create a new one and add a database, step 7Open a project, create a new one and add a database, step 7
  8. Arnodiqa saves and reloads the project: the database appears under Databases for Comfort, and Trace, Data and Graphics know its messages immediately.

    Open a project, create a new one and add a database, step 8Open a project, create a new one and add a database, step 8
Arnodiqa recognises a FIBEX file but does not load it as the database of a network; a message tells you so when you add it.

Select hardware or use the virtual bus

Each network of the project is assigned to a channel: a channel of an interface or of the virtual bus.

  1. On the Project desktop, the project explorer shows the assignment of each network under Networks, for example → virtual vcan1 · Virtual CAN Bus. Click the Hardware configuration icon to the right of Networks.

    Select hardware or use the virtual bus, step 1Select hardware or use the virtual bus, step 1
  2. The Hardware window shows, under Channel mapping, the channel (column Hardware) and status of each network, and under Interfaces, for each driver whether it is available and which channels it found. Click Rescan after connecting an interface.

    Select hardware or use the virtual bus, step 2Select hardware or use the virtual bus, step 2
  3. For each network, choose in the list under Hardware a channel of a connected interface, a channel of the virtual bus (Virtual CAN 1 …) or Virtual network (Comfort). The assignment applies immediately; click Save project to update the project file.

    Select hardware or use the virtual bus, step 3Select hardware or use the virtual bus, step 3
  4. The project explorer shows the new assignment next to the network (→ virtual Comfort). A channel that is not found at start is shown there as not connected.

    Select hardware or use the virtual bus, step 4Select hardware or use the virtual bus, step 4

Start and stop a measurement

The toolbar, status bar and the Statistics window show the state of the measurement and the bus load.

  1. Click Start in the toolbar or press F9. The arrow next to Start offers Start measurement without logging.

    Start and stop a measurement, step 1Start and stop a measurement, step 1
  2. During the measurement the state shows Running with the measurement time, followed by the bus load per channel. The Trace fills up. The status bar at the bottom shows the number of events, events per second and the buffer level.

    Start and stop a measurement, step 2Start and stop a measurement, step 2
  3. The bus load appears in the toolbar and in the status bar. The Statistics window on the Signals desktop gives more detail: per channel Busload [%], Peak load [%], frames per second and the frame counters. All three use the same calculation over a one-second window.

    Start and stop a measurement, step 3Start and stop a measurement, step 3
  4. Stop the measurement with Stop or Esc. The Write window reports Measurement 1 stopped (user) after … s.

    Start and stop a measurement, step 4Start and stop a measurement, step 4

The Trace: modes, filtering, signals and export

The Trace shows every frame and bus event, decoded with the project's databases.

  1. The Trace is on the Analysis desktop. In Chronological mode each event has its own row, newest at the bottom. Maximize at the top right makes the window fill the desktop.

    The Trace: modes, filtering, signals and export, step 1The Trace: modes, filtering, signals and export, step 1
  2. Click Fixed for one row per message, updated in place. Abs and Rel select absolute or relative time; Space pauses the display.

    The Trace: modes, filtering, signals and export, step 2The Trace: modes, filtering, signals and export, step 2
  3. Type a filter in the filter field (Ctrl+F), here name:Engine. Examples: 1A0 or id:100-1FF (ID or range), ch:CAN2 or ch:Comfort (channel or network), dir:tx, type:fd, !name:Door (not). Terms are combined; the field's tooltip shows the full syntax.

    The Trace: modes, filtering, signals and export, step 3The Trace: modes, filtering, signals and export, step 3
  4. A second example: ch:Comfort !name:Door shows all messages on the Comfort network except those with Door in the name. The bottom bar shows filtered; Esc in the field clears the filter.

    The Trace: modes, filtering, signals and export, step 4The Trace: modes, filtering, signals and export, step 4
  5. Click the arrow at the start of a row to expand the frame: each signal is listed below it with physical value, unit and raw value.

    The Trace: modes, filtering, signals and export, step 5The Trace: modes, filtering, signals and export, step 5
  6. The context menu (right-click) contains Export selected rows to log file… and Export shown events to log file… (everything the window shows with the current filter). In the save dialog, choose the name and type: BLF, ASC, MF4 or PCAPNG.

    The Trace: modes, filtering, signals and export, step 6The Trace: modes, filtering, signals and export, step 6
  7. After exporting, Arnodiqa reports the number of events written; the Write window lists each file, here trace.blf, trace.asc and trace.mf4.

    The Trace: modes, filtering, signals and export, step 7The Trace: modes, filtering, signals and export, step 7

Follow signals in Data and Graphics

Data shows current signal values, Graphics their course over time.

  1. Open the Signals desktop. Graphics and Data already contain signals from the project's databases.

    Follow signals in Data and Graphics, step 1Follow signals in Data and Graphics, step 1
  2. In the Data window, click Add signals. In Add signals to Data window, search by name (here OilTemp), tick the signal (Space) and click Add 1 signal (Enter). You can also drag a signal from the Trace into the window.

    Follow signals in Data and Graphics, step 2Follow signals in Data and Graphics, step 2
  3. Do the same in Graphics with Add signals and start the measurement (F9). Data shows the current value, unit, raw value and min/max of each signal; Graphics shows the course over time with the latest value in the signal list.

    Follow signals in Data and Graphics, step 3Follow signals in Data and Graphics, step 3
  4. After stopping, the plot remains. Scroll in Graphics to zoom and drag to pan; the context menu exports the frames to a log file or the signals as CSV.

    Follow signals in Data and Graphics, step 4Follow signals in Data and Graphics, step 4

Send messages with the Interactive Generator

The Interactive Generator sends frames once, periodically or on a key.

  1. The Stimulation desktop contains the Interactive Generator with messages from the project's database.

    Send messages with the Interactive Generator, step 1Send messages with the Interactive Generator, step 1
  2. Click + CAN for a custom CAN frame; From database adds a message from the database. Enter the ID (here 7E0) and the data bytes under Raw Data; for a database message, edit the values under Signals.

    Send messages with the Interactive Generator, step 2Send messages with the Interactive Generator, step 2
  3. Start the measurement. Send transmits the frame once. Set Trigger to Periodic, enter the period in ms and click Send: the frame is sent cyclically and the button changes to Stop.

    Send messages with the Interactive Generator, step 3Send messages with the Interactive Generator, step 3
  4. The Trace on the Analysis desktop shows the transmitted frames with direction Tx; the filter dir:tx id:7E0 shows only this frame.

    Send messages with the Interactive Generator, step 4Send messages with the Interactive Generator, step 4

Rest-bus simulation: nodes and interaction layer

The simulation setup shows the simulated nodes and the state of their interaction layer (IL).

  1. The simulation setup is on the Project desktop, or open it with Ctrl+K and New Simulation Setup window. For each network you see the nodes with type (IL = interaction layer), source and the state of the interaction layer.

    Rest-bus simulation: nodes and interaction layer, step 1Rest-bus simulation: nodes and interaction layer, step 1
  2. Start the measurement: the IL nodes send their messages according to the database (Sending).

    Rest-bus simulation: nodes and interaction layer, step 2Rest-bus simulation: nodes and interaction layer, step 2
  3. Use Stop IL and Start IL at the right of the row to stop or restart the interaction layer of one node while the measurement continues.

    Rest-bus simulation: nodes and interaction layer, step 3Rest-bus simulation: nodes and interaction layer, step 3
  4. The switch in the Active column turns a node off completely, for example to let a real ECU transmit in its place. During a measurement this applies to that measurement only; when stopped, the switch changes the project.

    Rest-bus simulation: nodes and interaction layer, step 4Rest-bus simulation: nodes and interaction layer, step 4

Record, replay offline and replay blocks

Logging blocks in the measurement setup write BLF, ASC, MF4 or PCAPNG. A recording is replayed offline through the same analysis as a live measurement, or put back on the bus with a replay block.

  1. In the project explorer, click the pencil next to Measurement Setup. The editor shows the graph from Measurement source to filters, triggers, logging and windows. For a logging block, the right side shows File (with field codes such as {MeasurementIndex}, button {…}), Format, New file after [MB] and the Logging trigger. Add block adds a block; Apply and Save to project keep the change.

    Record, replay offline and replay blocks, step 1Record, replay offline and replay blocks, step 1
  2. Start and stop the measurement. Each enabled logging block writes its file in the project folder, here logs/Demo vehicle_1.blf and, for the trigger block HighRpm, logs/high_rpm_001.asc. During the measurement the status bar shows Logging with the number of events. The switch next to a block in the project explorer turns logging on or off; Start measurement without logging skips logging once.

    Record, replay offline and replay blocks, step 2Record, replay offline and replay blocks, step 2
  3. In the measurement setup, click the Measurement source block. On the right, choose the working mode: Real bus (the networks' hardware), Simulated bus (all networks simulated, virtual time) or Offline (replay log files). The replay blocks are listed below.

    Record, replay offline and replay blocks, step 3Record, replay offline and replay blocks, step 3
  4. Choose Offline, click Add log file… and select one or more BLF, ASC, MF4 or PCAPNG files, here the recording from step 2.

    Record, replay offline and replay blocks, step 4Record, replay offline and replay blocks, step 4
  5. The log file is listed under Log files; the tick disables a source temporarily, the bin removes it. Under Speed, choose As fast as possible, Real time (with factor) (2 = half speed) or Animate (one event per delay). With several files, Order determines how they are merged; Skip to the first event and Start paused are under Start.

    Record, replay offline and replay blocks, step 5Record, replay offline and replay blocks, step 5
  6. Click Save to project (Apply applies the change without saving). The toolbar now shows Offline and the source block offline · 1 file. The same is available via Ctrl+K with Working mode: Offline (log files).

    Record, replay offline and replay blocks, step 6Record, replay offline and replay blocks, step 6
  7. Click Start (F9): Arnodiqa replays the log file through the same analysis as a live measurement (Trace, Graphics, Statistics). At the end of the file the measurement stops automatically; with Real time this takes as long as the recording.

    Record, replay offline and replay blocks, step 7Record, replay offline and replay blocks, step 7
  8. To put a recording back on the bus during an online measurement, choose Simulated bus or Real bus and click Add replay block… under Replay blocks. For each block, choose the name, Start at once, Original times or Delayed, and Loop. Apply puts the block in the project. At the next start the block sends the frames from the file. In offline mode, replay blocks are inactive.

    Record, replay offline and replay blocks, step 8Record, replay offline and replay blocks, step 8

Diagnostics: UDS console and fault memory

Diagnostic Console and Fault Memory work with the project's diagnostic ECUs, simulated or real.

  1. Open the Diagnostic Console with Ctrl+K and New Diagnostic Console window and start the measurement. Select the ECU under ECU (here DoorECU). Choose a service and subfunction under Service and click Send, or type a request in hex under Raw.

    Diagnostics: UDS console and fault memory, step 1Diagnostics: UDS console and fault memory, step 1
  2. Type for example 22 F1 90 (ReadDataByIdentifier, VIN) under Raw and press Enter or click Send raw. The history shows request, response, result and response time; click a row for the decoded parameters. A negative response shows the NRC with its name.

    Diagnostics: UDS console and fault memory, step 2Diagnostics: UDS console and fault memory, step 2
  3. Open Fault Memory (Ctrl+K, New Fault Memory window) and click Read (service 19 02 with the status mask from the list, default All status bits (FF)). For each DTC you see the SAE code, code, status and the status bits as columns; at the bottom the eight bits of the selected DTC are written out.

    Diagnostics: UDS console and fault memory, step 3Diagnostics: UDS console and fault memory, step 3
  4. Clear all clears the fault memory (ClearDiagnosticInformation, 14 FF FF FF); confirm with Clear.

    Diagnostics: UDS console and fault memory, step 4Diagnostics: UDS console and fault memory, step 4
  5. After clearing, Read reads the DTCs again: their status has been reset.

    Diagnostics: UDS console and fault memory, step 5Diagnostics: UDS console and fault memory, step 5

Flash an ECU

The Flash window runs an ECU's flash program, with progress per step and per block.

  1. Open the Flash window (Ctrl+K, New Flash window) and start the measurement. Choose the ECU, the firmware file (by default the one from the project, or via Browse…) and the format. The window shows the blocks of the file in advance.

    Flash an ECU, step 1Flash an ECU, step 1
  2. Click Flash (Ctrl+Enter). The progress bar, current step, block, rate and remaining time are updated. Cancel aborts; the clean-up steps still run.

    Flash an ECU, step 2Flash an ECU, step 2
  3. The final report shows the outcome, duration, rate and checksums. Copy report copies the report; on a failure it includes the failing step and the NRC.

    Flash an ECU, step 3Flash an ECU, step 3

Add and edit CAPL nodes

Existing CAPL programs run as simulation nodes alongside the rest-bus simulation. The built-in CAPL Editor checks the program while you type.

  1. On the Project desktop, the CAPL nodes are listed under Simulation nodes with their source file (.can) and networks. In the simulation setup their type is CAPL; the pencil opens the program in the CAPL Editor, the bin removes the node from the project and Add CAPL node adds one.

    Add and edit CAPL nodes, step 1Add and edit CAPL nodes, step 1
  2. The CAPL Editor shows the program with syntax highlighting and line numbers. At the top right are the nodes that run this file (here CaplGateway); No problems comes from the same compiler as at measurement start and in arnodiqa capl check.

    Add and edit CAPL nodes, step 2Add and edit CAPL nodes, step 2
  3. Hover over a name for details: for a CAPL function all its forms with their parameters, for a message the ID, length, cycle time and signals, for a signal the scaling, unit and value table.

    Add and edit CAPL nodes, step 3Add and edit CAPL nodes, step 3
  4. Arnodiqa checks the program while you type: errors get a red wavy underline and a marker in the margin, and the counter in the toolbar shows the number of errors and warnings (click it for the list, or Ctrl+Shift+M). Here totl is unknown and a semicolon is missing.

    Add and edit CAPL nodes, step 4Add and edit CAPL nodes, step 4
  5. Ctrl+Space, or simply typing, shows completions: variables, functions and CAPL functions, messages and signals from the project's databases, and after @ the system variables. Enter or Tab accepts the choice.

    Add and edit CAPL nodes, step 5Add and edit CAPL nodes, step 5
  6. Ctrl+S (or Save) saves the file and reloads the node with the new program. During a measurement Arnodiqa asks for confirmation first; the running measurement keeps the old program until the next start.

    Add and edit CAPL nodes, step 6Add and edit CAPL nodes, step 6
  7. To add a node, click Add CAPL node in the simulation setup or the + next to Simulation nodes in the project explorer. Enter a name, choose the networks and a template (Empty node, Cyclic sender, Echo / gateway); the file becomes capl/<name>.can. Existing file uses an existing .can file, inside the project folder or outside it (copied or referenced with a relative path).

    Add and edit CAPL nodes, step 7Add and edit CAPL nodes, step 7
  8. The node appears in the simulation setup and its program opens in the editor. Start the measurement: the CAPL programs run and their write() output appears in the Write window on the Program tab, prefixed with the node name. Save the project to keep the new node.

    Add and edit CAPL nodes, step 8Add and edit CAPL nodes, step 8

Run test units in the Test Runner

The Test Runner runs the project's test units on the simulated bus and shows the report in the app. The outcome is the same as with arnodiqa test.

  1. Open the Test Runner with Ctrl+K and New Test Runner window. The left side lists the project's test units (the *.vtestunit.yaml files under tests/) with their test cases; a test tree (*.vtesttree.yaml) appears with its groups. The tick determines which units take part.

    Run test units in the Test Runner, step 1Run test units in the Test Runner, step 1
  2. Click a unit for its details: title and description, the file and the CAPL sources (a click opens them in the CAPL Editor). The arrow keys move through the tree, Space toggles the tick and Enter or Run this unit runs the selected unit.

    Run test units in the Test Runner, step 2Run test units in the Test Runner, step 2
  3. Click Run (Ctrl+Enter). Each unit runs in its own measurement on the simulated bus; the current test case shows Running and the verdicts appear as soon as a test case finishes. Cancel aborts the run: the current unit stops and the rest is skipped.

    Run test units in the Test Runner, step 3Run test units in the Test Runner, step 3
  4. After the run each test case has its verdict (Pass, Fail, Inconclusive, Error) and its duration in measurement time. The bottom shows the summary and the exit code that arnodiqa test returns for the same outcome, here 1: at least one test case failed.

    Run test units in the Test Runner, step 4Run test units in the Test Runner, step 4
  5. Click Report for the HTML report in the app: information per unit and the steps per test case; failed test cases are expanded. Save HTML… saves the report.

    Run test units in the Test Runner, step 5Run test units in the Test Runner, step 5
  6. Export saves the report as HTML, as JUnit XML for a CI server or as the canonical JSON report.

    Run test units in the Test Runner, step 6Run test units in the Test Runner, step 6
The Test Runner always starts a complete test unit; individual test cases are not started separately.

LIN: schedule tables, slaves and LIN in the Trace

A LIN network comes from an LDF; Arnodiqa simulates master and slaves and shows LIN frames and bus events in the Trace.

  1. Project Body LIN from the LIN cluster template. The project explorer shows the LIN network with baud rate, master, slaves and schedule tables; the simulation setup shows the LIN nodes with their role (master or slave).

    LIN: schedule tables, slaves and LIN in the Trace, step 1LIN: schedule tables, slaves and LIN in the Trace, step 1
  2. Start the measurement and select another schedule table for the LIN network in the simulation setup. The switch takes place at the end of the running table; the row shows running: ….

    LIN: schedule tables, slaves and LIN in the Trace, step 2LIN: schedule tables, slaves and LIN in the Trace, step 2
  3. Every slave from the LDF is a simulated node. Turn a slave off with the switch in the Active column (here RLS) to let a real ECU respond in its place. During a measurement this applies to that measurement only; Write then reports Node 'RLS' deactivated for this measurement.

    LIN: schedule tables, slaves and LIN in the Trace, step 3LIN: schedule tables, slaves and LIN in the Trace, step 3
  4. The Trace shows LIN frames on channel LIN1. Use Columns to enable the PID and Checksum columns. Filters: bus:lin, type:lin, type:linerror (errors) and type:linbus (wake-up, sleep, schedule change).

    LIN: schedule tables, slaves and LIN in the Trace, step 4LIN: schedule tables, slaves and LIN in the Trace, step 4
  5. In Chronological mode the filter type:linbus shows the bus events: here the schedule table changes, and further wake-up and sleep. type:linerror shows error rows such as No response or Checksum error.

    LIN: schedule tables, slaves and LIN in the Trace, step 5LIN: schedule tables, slaves and LIN in the Trace, step 5
  6. In the Interactive Generator on the Stimulation desktop, select a frame from the LDF in the LIN section. Set response publishes the response as slave, Send header sends the header as master.

    LIN: schedule tables, slaves and LIN in the Trace, step 6LIN: schedule tables, slaves and LIN in the Trace, step 6

J1939 Monitor and DTCs

The J1939 Monitor shows the nodes on a J1939 network, their active fault codes and the sequence of claims and transfers.

  1. Open the J1939 Monitor (Ctrl+K, New J1939 Monitor window) and start the measurement. The Nodes tab shows, per address, the NAME with its fields, the time of the address claim and a DM1 summary.

    J1939 Monitor and DTCs, step 1J1939 Monitor and DTCs, step 1
  2. The DTC monitor tab shows the lamps (MIL, RSL, AWL, PL) of each node and the active DTCs from DM1: SPN, FMI with text and the occurrence count.

    J1939 Monitor and DTCs, step 2J1939 Monitor and DTCs, step 2
  3. The Events tab shows address claims, requests and responses, ACK/NACK and transport protocol messages. Request requests a PGN from a destination (hex); Clear active (DM11) and Clear previous (DM3) clear DTCs.

    J1939 Monitor and DTCs, step 3J1939 Monitor and DTCs, step 3
In the recording the simulated engine ECU sets the two DTCs active, as a real fault would.

Database editor: add a signal

The Database Editor edits the project's DBC and LDF files, with undo/redo and checks while editing.

  1. In the project explorer, click the pencil next to the database (here powertrain.dbc). The Database Editor shows the tree on the left (nodes, messages, signals, value tables), the table in the middle and the properties on the right.

    Database editor: add a signal, step 1Database editor: add a signal, step 1
  2. Click a message in the tree (here ABS_Status): the middle shows the bit layout with each signal as a coloured bar, and below it the signals in a table.

    Database editor: add a signal, step 2Database editor: add a signal, step 2
  3. Click + Signal above the bit layout: the new signal (1 bit) is placed at the first free position, here bit 27. Name it on the right under Signal (here BrakeLampOn) and set length, byte order, factor, unit and receivers as needed. Drag the bar to move the signal or an end to change its length; overlaps are marked red.

    Database editor: add a signal, step 3Database editor: add a signal, step 3
  4. After saving, Arnodiqa reports Database saved and reloads the project with the new database; the Trace decodes the new signal immediately. Ctrl+Z and Ctrl+Y (or the arrows at the top left) undo or redo changes.

    Database editor: add a signal, step 4Database editor: add a signal, step 4

Hardware self-test

The self-test checks an interface and its driver with a channel pair or with one channel and internal loopback.

  1. Open the Hardware window (Ctrl+K, New Hardware window or via the project explorer) and click Self-test…. The icon next to a channel starts the test for that channel only.

    Hardware self-test, step 1Hardware self-test, step 1
  2. Choose the setup: Channel pair (two channels connected by a cable) or One channel, channels A and B, the bit rate, CAN FD and the checks. Without hardware, Try on virtual channels runs the test on a virtual bus.

    Hardware self-test, step 2Hardware self-test, step 2
  3. Click Start self-test (Ctrl+Enter). Each check shows its status and duration.

    Hardware self-test, step 3Hardware self-test, step 3
  4. The summary follows, with the channels (device, serial number, firmware, driver). Expand a check for measured values and, on a failure, the likely cause. Save HTML report saves the report.

    Hardware self-test, step 4Hardware self-test, step 4

Support bundle and log folder

Logs and crash reports stay on the computer. You create a support bundle yourself and send it through your own channel to support@arnodiqa.com.

  1. Click the question mark (Help) at the top right. The menu contains Open log folder, Create support bundle…, Debug logging until restart and About Arnodiqa. The same actions are available in Ctrl+K under Help.

    Support bundle and log folder, step 1Support bundle and log folder, step 1
  2. Create support bundle… shows in advance which files go into the zip file and what is deliberately left out. Choose the period of the logs and whether the project, the computer name or serial numbers may be included. Click Save… and choose where the zip file goes; nothing is sent.

    Support bundle and log folder, step 2Support bundle and log folder, step 2
  3. Open log folder opens the folder with the Arnodiqa log files in Explorer; a notification shows the path.

    Support bundle and log folder, step 3Support bundle and log folder, step 3

FAQ

Can I use it with real hardware?
Yes. There are backends for PEAK PCAN-Basic, Vector XL, Kvaser CANlib, SLCAN and candleLight/gs_usb; arnodiqa hw list and the Hardware window show what was found. Arnodiqa uses the manufacturer's official driver; use the Hardware Self-Test to check an interface in your own setup. See hw list.
Can I simulate a rest bus?
Yes. Under simulation.restbus every DBC node becomes an interaction layer node with the send types, cycle times, start and inactive values from the database. Exclude the ECU under test with exclude. See Project format.
Will my existing CAPL code run?
The script VM runs existing CAPL programs as simulation nodes or test modules, including functions for the interaction layer, diagnostics, logging, files and INI profiles. Check a program beforehand with arnodiqa capl check. The language is implemented from our own specifications.
Can I run tests in CI?
Yes. arnodiqa test runs the test units of a project on the simulated bus, writes reports as HTML, JSON and JUnit XML and returns an exit code based on the verdict.
Are BLF files interchangeable with CANoe/CANalyzer?
Yes, for CAN and CAN FD frames and error frames. System variables are supported in ASC.
Which platforms?
Arnodiqa runs on Windows 11 (x64).
Does it work without internet (air-gapped)?
Yes. Engine and CLI make no network connections and this documentation works offline. The Windows installer, the licence (a signed file, without activation) and the VS Code extension work without internet. SBOM and third-party notices come with every release. See Offline use.
Do I need a dongle or licence server?
No. The licence is a signed file (*.arnlic) that Arnodiqa checks locally: no hardware key, no activation, no phone-home. Node-locked, site and volume licences are available. Without a licence Arnodiqa works for 30 days with all features, after which viewing, offline replay, conversion and export remain available. See arnodiqa license and Pricing.
Why YAML and not a binary configuration file?
A YAML project can be kept in git. A change appears as a readable diff that you can review and resolve in a merge. The JSON Schema shows errors right in the editor. The measurement index is stored separately, so runs don't modify the project.