Desktop-applicatie
De desktop-applicatie verbindt met de engine en bevat het project, de meetvensters en de editors.
| Projectverkenner | Netwerken, databases, nodes, panels en systeemvariabelen van het project. |
| Verbinding met de engine | Valt de verbinding met de engine weg, dan meldt de applicatie dat en verbindt ze automatisch opnieuw, met het laatst geladen project. |
| Simulation Setup | Nodes aan- en uitzetten, de Interaction Layer starten en stoppen tijdens de meting. |
| Vensters en layouts | Dockbare vensters verdeeld over meerdere desktops, layouts als bestand, command palette (Ctrl+K), licht en donker thema. |
| Measurement Setup | Grafische editor om blokken toe te voegen, te verbinden en te configureren. |
| Hardwaredialoog | Kanalen toewijzen, status per driver, baudrate-scanner. |
| Database Editor | Berichten, signalen, nodes en bitlayout in DBC- en LDF-bestanden bewerken, met undo/redo en lint tijdens het bewerken. Bij het openen toont de editor welke inhoud hij niet kan bewaren. Vóór het opslaan vraagt hij bevestiging. |
| Logs en supportbundel | Applicatielogs en crashrapporten. De supportbundel is een zip met logs en systeeminformatie, waarin gebruikersnamen en serienummers geanonimiseerd zijn. De bundel blijft lokaal en wordt niet geüpload. |
Analyse
Meetvensters voor de live bus en voor opgenomen logbestanden.
| Trace | Chronologisch of op vaste positie, quickfilter, signaaldecodering, markeren. |
| Graphics, Data | Signaalverloop en actuele waarden, met signaalkiezer. |
| Statistics | Busbelasting, frames/s, cyclustijden, error frames, TEC/REC en controllerstatus, per kanaal en ID. |
| Write | Meldingenvenster met meldingsniveaus en zoeken. |
| Measurement Setup | Filter-, trigger-, logging-, view- en break-blokken, parallelle takken en samenvoegen. |
| Online en offline | Live bus, of BLF/ASC afspelen in real time, met animatiefactor of zo snel mogelijk. Pauzeren en stappen. |
Simulatie en stimulatie
Restbussimulatie, stimulatie en een virtuele bus, geconfigureerd vanuit de database.
| Interaction Layer | Op basis van de DBC. Alle bericht- en signaal-send types (Cyclic, OnChange, OnWrite, IfActive en combinaties), cyclustijd, snelle cyclus, herhalingen, startvertraging, start- en inactieve waarden. |
| Restbussimulatie | Elke databasenode wordt een gesimuleerde node. De te testen ECU sluit je uit. |
| Alive counters, foutinjectie | Alive counters. Foutinjectie via scriptfuncties, zoals berichten uitschakelen of cyclustijden wijzigen. |
| Interactive Generator | Frames handmatig of periodiek zenden, met signaalwaarden uit de database. |
| Virtuele CAN/CAN FD-bus | Arbitrage, bit stuffing, fault confinement en busbelasting. Deterministisch. |
| Tijd, replay, variabelen | Gesimuleerde tijd, replay-blokken met kanaalmapping, systeemvariabelen met types en waardetabellen. |
| E2E en SecOC | E2E-bescherming (AUTOSAR-profielen 1, 2, 4, 5 en 11) en SecOC (CMAC/AES-128, freshness als teller of tijd) in de Interaction Layer. Configuratie uit ARXML of het project. Sleutels worden lokaal bewaard. |
| E2E / SecOC Status | Venster met per PDU de E2E-toestand, verloren, herhaalde en foutieve berichten, en MAC- en freshnessfouten. |
| Foutinjectie E2E en SecOC | Op teller, CRC, freshness en authenticator, ook vanuit CAPL-scripts. |
Panels
Bedienpanels om signalen en variabelen tijdens een meting te bedienen.
| Bedieningselementen | Meters, analoge wijzers, sliders, LED's, knoppen, schakelaars, radioknoppen, invoer- en uitvoervelden, tabbladen en afbeeldingen. |
| Koppeling | Aan signalen (via de Interaction Layer), systeemvariabelen of berichten. |
| Panel Editor | Toolbox, raster, uitlijnen, eigenschappenpaneel, ongedaan maken. Signalen sleep je vanuit de Trace naar het werkvlak. |
| Bestandsformaat | Panels zijn YAML-bestanden in het project. |
| System Variables | Venster met een boom per namespace, live waarden, bereik, eenheid en waardetabellen. Waarden schrijven met controle. |
Diagnose
Diagnoseprotocollen, ECU-simulatie en flashen via CAN, CAN FD en DoIP.
| ISO-TP | ISO 15765-2 voor CAN en CAN FD, inclusief passief meelezen in de Trace. |
| UDS-client | ISO 14229. P2/P2*-timing, NRC 0x78, Tester Present, functionele requests. |
| ECU-simulatie | DID's, foutgeheugen, routines, sessies, security access met lockout, download. |
| DoIP | ISO 13400-2 over TCP en TLS, met gateway naar CAN-ECU's. |
| ODX/PDX, OBD-II | ODX/PDX-import voor symbolische diagnose. OBD-II. |
| Seed & Key | Via bestaande DLL's, ook 32-bit, in een apart proces. |
| Diagnosevensters | Diagnostic Console, Fault Memory, ECU Control |
| Flash | Venster met voortgang per stap en per blok, annuleren en rapport. Wie de meting tijdens het flashen stopt, krijgt eerst een waarschuwing. |
| Flashen via UDS | Intel HEX, S-record, binair en ODX-F/PDX. Standaardsequentie of eigen stappen, checksums (CRC-8 tot CRC-32), voortgang en annuleren. arnodiqa flash levert een JSON-rapport voor CI en de productielijn. |
J1939
Adresclaim, transportprotocollen en diagnose volgens SAE J1939.
| Adresclaim | J1939-81, met NAME, basic en arbitrary address capable. Detectie van adresschending. |
| Transportprotocollen | BAM, CMDT en ETP (J1939-21), Multi-PG en FD.TP (J1939-22). |
| Diagnose | J1939-73. DTC's met SPN, FMI en OC, lampstatus, DM1/DM2, wissen met DM3/DM11, DM13, geheugentoegang DM14 tot DM16. |
| Interaction Layer en decodering | Interaction Layer-nodes uit de DBC met requests en ACK/NACK. Decoderen op PGN, ook van PG's uit transportprotocollen. |
| J1939 Monitor | Nodes met hun NAME, DTC-monitor met lampstatus, eventlog met claims en transportfouten. Requests, DM11 en DM3 direct vanuit het venster. |
LIN
LIN-simulatie en -analyse op basis van LDF of ARXML.
| Beschrijvingsbestanden | LDF 1.3 tot 2.2A, ISO 17987 en SAE J2602, ook LIN-clusters uit ARXML. |
| Master- en slavesimulatie | Schedule tables, wisselen van schedule tijdens de meting, event-triggered en sporadic frames. |
| Sleep en wake-up | De reden staat in de Trace. |
| Trace en statistiek | PID, checksum, no-response, sync-, pariteits- en bitfouten. |
| Virtuele bus, logging, CAPL | Virtuele LIN-bus, LIN in BLF, ASC en MF4, LIN-functies voor CAPL-nodes. |
Scripting
Bestaande CAPL-programma's draaien als simulatienode. Bewerken kan in de applicatie en in VS Code.
| Script-VM | Voert bestaande CAPL-programma's uit als simulatienode, met event procedures, timers, berichten en signalen, en systeemvariabelen. |
| Functiebibliotheek | Functies voor Interaction Layer, logging, diagnose, bestanden en INI-profielen, reguliere expressies. |
| CAPL Editor | In de applicatie. Syntaxkleuring, foutmeldingen tijdens het typen, completion met berichten, signalen en systeemvariabelen uit het project, uitleg bij hover. CAPL-nodes voeg je toe vanuit de Simulation Setup, met sjablonen. |
| CAPL Language Server, VS Code | Language server en VS Code-extensie met foutmeldingen tijdens het typen, completion met signalen en systeemvariabelen uit het project, hover en go-to-definition. Offline te installeren als .vsix. |
arnodiqa capl check | Compileren met foutmeldingen per regel, ook als JSON. |
| Projectbestanden in VS Code | Autocomplete via het JSON Schema. |
Test
Testmodules in CAPL, test units in YAML en rapporten voor CI.
| Testmodules in CAPL | Wait-functies, checks en stimuli. |
| Test Runner | Venster om units te kiezen en te draaien, met een verdict per testcase. Het rapport staat in de app en is te exporteren naar HTML, JUnit XML en JSON. |
| Test units en testbomen | In YAML, met parameters en varianten. |
| Rapporten | HTML, JSON en JUnit XML. Reproduceerbaar op de gesimuleerde bus. |
arnodiqa test | Exitcode volgens het verdict. |
Automatisering en CI
De command line gebruikt dezelfde engine als de desktop-applicatie en draait zonder scherm.
| Headless CLI | Commando's run, validate, test, flash, capl, convert, export, stats, db, hw, support, license, schema. |
| Resultaten | JSON-rapport en gedocumenteerde exitcodes. |
| Reproduceerbaarheid | Vaste starttijd voor reproduceerbare logbestanden. Ctrl+C stopt gecontroleerd. |
| Projectbestanden | YAML met JSON Schema, geschikt voor git. |
| Databasecontrole | In de pipeline met db lint (GitHub-annotaties) en db convert --check. |
Logging en export
Logbestanden worden in de gangbare formaten gelezen en geschreven. Signalen exporteer je naar formaten voor data-analyse.
| BLF, ASC, MF4 | Lezen en schrijven. MF4 als ASAM MDF 4.1 bus logging voor CAN, CAN FD en LIN. |
| PCAPNG | Voor CAN, te openen in Wireshark. |
arnodiqa convert, arnodiqa stats | Converteren tussen ASC, BLF, MF4 en PCAPNG. Statistiek over de inhoud. |
| Signaalexport | Naar CSV, MATLAB (.mat) en Parquet, per bericht of als lange tabel (arnodiqa export). |
| Export uit Trace en Graphics | Getoonde of geselecteerde regels, of het zichtbare bereik, naar BLF, ASC, MF4 of PCAPNG. Signalen als CSV. |
| Crash en stroomuitval | BLF-, MF4-, ASC- en PCAPNG-opnames worden elke seconde weggeschreven en regelmatig naar schijf gesynchroniseerd. Na een crash of stroomuitval blijft het bestand leesbaar; hoogstens de laatste seconden ontbreken. |
| Bestandsbeheer | Bestandsnamen met field codes, rollover op grootte of tijd, pre- en post-trigger. zlib/deflate-compressie en streaming van grote bestanden. |
Databases
Ondersteunde beschrijvingsformaten en databasetools.
| DBC | Lezen en schrijven. Intel/Motorola, signed, float, (extended) multiplexing, waardetabellen, J1939-PGN's. |
| ARXML | Import (AUTOSAR Classic 4.x en 3.x) van CAN, CAN FD, container-PDU's en LIN-clusters. E2E- en SecOC-eigenschappen worden ingelezen. |
| LDF | Lezen en schrijven (LIN 1.3 tot 2.2A, ISO 17987, SAE J2602). |
| FIBEX | Import voor decodering (ASAM FIBEX 2.x tot 4.x, FlexRay-clusters). |
| ODX/PDX | Voor diagnose. |
| Databasetools | db lint, db diff (ook tussen formaten), db convert (ARXML naar DBC/LDF, normaliseren), db info met busload-schatting. |
Hardware
Hardware-interfaces werken via de officiële driver van de fabrikant. Voor simulatie is geen hardware nodig.
| Virtuele bus | Meerdere kanalen, voor simulatie zonder hardware. |
| Configuratie | Hardwaredialoog, bit-timingberekening, baudrate-scanner, arnodiqa hw list. |
| Ondersteunde interfaces | PEAK PCAN-Basic, Vector XL, Kvaser CANlib, SLCAN, candleLight/gs_usb, via de officiële driver van de fabrikant. |
| CAN XL | Op de virtuele bus. De Trace toont SDT, VCID, acceptance field en de volledige payload. |
| Hardware Self-Test | In de app en als arnodiqa hw selftest. Test een kanaalpaar, of één kanaal met loopback, ook LIN. Checks met uitleg; rapport als HTML of JSON. |
De driverbibliotheek van de fabrikant wordt tijdens runtime geladen en maakt geen deel uit van de installatie. Met de Hardware Self-Test controleer je een interface in de eigen opstelling.