hardbyte / hardbyte/python-can

Kvaser: multiple canIoCtlInit calls fail with canERR_PARAM (-1) on Kvaser Leaf Light v2

Open
#2,051 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
1.6k
Forks
697
PR merge metrics
No merged PRs in 30d

Description

**Environment**
- python-can: 4.6.1
- Hardware: Kvaser Leaf Light v2 (S/N 87702)
- OS: Windows 11
- Python: 3.12

**Description**
Initializing a KvaserBus fails with CANLIBOperationError on multiple canIoCtlInit
calls during __init__. The following ioctls all fail with Error Code -1 (canERR_PARAM):
- canIOCTL_SET_TIMER_SCALE
- canIOCTL_SET_LOCAL_TXECHO
- canIOCTL_SET_LOCAL_TXACK

**Reproduction**
bus = can.Bus(interface='kvaser', channel=0, bitrate=500000)

**Traceback**
CANLIBOperationError: Function canIoCtl failed - Error in parameter [Error Code -1]
at canlib.py:568 -> canIOCTL_SET_LOCAL_TXACK

**Notes**
Kvaser CANKing connects successfully to the same device on the same channel
with Init Access mode. The device is detected correctly, python-can lists it
as channel 0. The failure is in the ioctl calls after canOpenChannel succeeds.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.