Skip to content

InitusNovus/pcan-validation-skill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PCAN Validation Skill

A reusable Agent Skill and executable validation suite for two-channel PCAN and PCANBasic-compatible CAN/CAN-FD interfaces.

Coverage

  • Bidirectional Classic CAN and CAN-FD canaries
  • Classic bitrate and CAN-FD timing matrices
  • Standard/Extended IDs, RTR, BRS, and valid DLCs
  • Filters and status/error record handling
  • Concurrent bursts and FIFO boundaries
  • Arbitration and starvation checks
  • Timestamp monotonicity and latency
  • Reopen/mode-transition stress
  • Controlled mismatch recovery
  • Checkpointed multi-hour soak testing

Safety

Use only on an isolated, correctly terminated two-channel bench. Do not run active traffic, bitrate mismatch, or fault injection on a vehicle or production CAN network.

Installation

Hermes Agent

git clone https://github.com/InitusNovus/pcan-validation-skill.git   ~/.hermes/skills/embedded-hardware/pcan-validation

Start a new session after installation.

Python requirements

py -m pip install -r requirements.txt

PCANBasic and the Windows PCAN driver must be installed separately from the hardware vendor. This repository does not redistribute vendor binaries.

Scripts

Script Purpose
scripts/pcan_loopback.py Fast Classic or FD bidirectional canary
scripts/pcan_matrix.py Broad Classic/FD functional matrix
scripts/pcan_soak.py Checkpointed multi-hour concurrent soak
scripts/pcan_deep.py FIFO boundaries, native API, arbitration, timestamps, and reopen stress

Examples:

py scripts\pcan_loopback.py --mode classic --count 1000
py scripts\pcan_loopback.py --mode fd --count 1000
py scripts\pcan_matrix.py
py scripts\pcan_soak.py --hours 8 --burst-count 5000
py scripts\pcan_deep.py

Default channels are PCAN_USBBUS1 and PCAN_USBBUS2. Review channel discovery and configuration before use.

pcan_soak.py is a high-coverage isolated-bench profile. It includes a tightly bounded bitrate-mismatch recovery phase and timing combinations up to 12 Mbit/s. Remove unsupported timing combinations and do not run the fault phase on a shared or production bus.

Related project

License

MIT. See LICENSE.

PCAN is a trademark of PEAK-System Technik GmbH. This project is independent and is not affiliated with or endorsed by PEAK-System. Vendor drivers and SDK components remain subject to their respective licenses.

About

Agent skill and executable suite for PCAN Classic CAN/CAN-FD functional, stress, recovery, and soak validation.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages