This website uses cookies for analytics, for logins to the online shop and the forum, and for the handling of an order. By browsing this website you agree to the use of cookies. Detailed information on their use can be found in our privacy policy.

OK Privacy Policy

Linux PCAN Driver - Version History


2018-11-20 Driver Download Version 8.7.0

Updates:

  • Fixed potential NULL pointer access bug when initializing in FD mode a non FD hardware
  • PCANFD_TYPE_ERROR_MSG are now posed only if something new has to be notified
  • BUS_LOAD notifications are now posted when bus_load has really changed
  • Fixed some rare negative time values in timestamps
  • Fixed old API init settings conversion ("echo i > /dev/pcanxx")
  • Init settings are no more set to their defaults when the device is closed
  • Fixed /proc/pcan "btr" column and sysfs "btr0btr1" node values
  • Fixed user bittimings and conversion
  • Changed mutex into spinlock when browsing the global devices list
  • Be more permissive with PCANFD_TYPE_CANFD_MSG written on a non-FD device if data_len is <= 8
  • src/pcan_fops.c: fixed double mutex_unlock() call
  • src/pcanfd_core.c: fixed potential task deadlock waiting for the event to be signaled
  • usb: reworked complete release of USB ressources
  • usb: fixed wrong loop condition in release loop when probing a channel fails
  • usb: PCAN-USB Pro and PCAN-USB hardware timestamsps are correctly handled now
  • usb: fixed PCAN-USB X6 channel_number returned by PCANFD_GET_STATE
  • xenomai: support of Xenomai 3 with full access to /sys/class/pcan
  • xenomai: fixed mininal_xenomai dir RT applications for Xenomai 3
  • xenomai: test/Makefile: added --no-auto-init flag to xeno-config
  • xenomai: driver/Makefile: changed "make xeno3" into "make xeno"
  • xenomai: pcanfdtst.c: added rendez-vous semaphore based to properly exit from main task (^C no more needed)
  • rtai: support of RTAI 5.1 with full access to /sys/class/pcan
  • rtai: added "minimal_rtai" subfolder in the "test" folder which is the same than "minimal_xenomai": two very small applications that read and write a bus
  • lib/Makefile: RT: disabled 32-bit compilation with 64-bit arch
  • pcanfdtst: fixed wrong help text of -B --brs option
  • receivetest: added 'x' flags for STATUS msgs received
  • test/*.cpp: fixed some bad indentations that give warning with gcc 6.3.0
  • netdev: incr netdev stats overrun and error counters in case of DATA_OVR
  • netdev: fixed pcan tx buffer overflow in case of flooding from the application
  • netdev: fixed a NULL pointer dereference in DEBUG mode msg
  • netdev: useless (chardev) rx FIFO object is now undefined in this mode
  • handle single-shot mode for CAN FD devices
  • netdev: fixed potential NULL pointer accces when interface is UP and the corresponding device is initialized (again) through the chardev interface
  • netdev: fixed potential NULL pointer access with PCAN-PCI Express FD canX interface running in non-MSI mode
  • netdev: removed useless "last_tx" init (this fixes lots of compilation issues)
  • netdev: don't normalize bittimings since they already are. This prevents from changing them to another n-uple

Download Driver v8.7.0 (tar.gz) Download Manual (PDF)

2018-07-24 Driver Download Version 8.6.0

Updates:

  • driver: removed trailing \0 in characters strings adapter_name and adapter_version sysfs nodes
  • pci/pcifd: redesign MSI management (useless msi_step removed)
  • PCAN-PCI Express FD: defined new parameters fdirqtl and fdirqcl that allow to set different values than the default IRQ Time and Count Limit
  • PCAN-PCI Express FD: MSI: used pci_irq_vector() for Kernels 4.8+ except if MSI sharing is set
  • pcan-settings: fixd -d option value as LONG instead of INT
  • PCAN-PCIe *: renamed PCAN_PCIE_OEM (FD) to PCAN_Chip_PCIe (FD)
  • PCAN-USB-*: restored lost parent (real) device symlink in sysfs
  • pcanfdtst.c: fixed warnings from RTAI compilation
  • driver rt: fixed compilation issues
  • driver/Makefile: do test include/can/dev.h content only when Kernel is lower than 4.8
  • driver: added missing rx and tx error counters to BUS_LOAD periodic notification
  • driver: added some #ifdef NETDEV_SUPPORT around useless code and data when it is built in netdev mode to save memory
  • PCAN-USB FD*: enforced error processing when sending chained cmds: no need to continue sending cmds if one has failed
  • PCAN-USB FD*: fixed potential NULL pointer access in UCAN_USB_MSG_CALIBRATION handler
  • driver/API: added PCANFD_FEATURE_ECHO and PCANFD_MSG_ECHO new msg bit to explicitly request echo of the tx frame
  • pcanfdtst: added "—echo". New option to send CAN frames with local echo:
    $ pcanfdtst tx -b 500k --echo -i 0x001 -n 100 -I 4  /dev/pcanpcifd6
    ...                                                        ...
    1529485528~681375 /dev/pcanpcifd6 <      001 ..h..  4 - 5e 00 00 00
    1529485528.680472 /dev/pcanpcifd6 >      001 ..h..  4 - 5d 00 00 00
    1529485528~682451 /dev/pcanpcifd6 <      001 ..h..  4 - 5f 00 00 00
    1529485528.681548 /dev/pcanpcifd6 >      001 ..h..  4 - 5e 00 00 00
    1529485528~683528 /dev/pcanpcifd6 <      001 ..h..  4 - 60 00 00 00
    1529485528.682628 /dev/pcanpcifd6 >      001 ..h..  4 - 5f 00 00 00
    1529485528~684606 /dev/pcanpcifd6 <      001 ..h..  4 - 61 00 00 00
    1529485528.683706 /dev/pcanpcifd6 >      001 ..h..  4 - 60 00 00 00
    1529485528~685684 /dev/pcanpcifd6 <      001 ..h..  4 - 62 00 00 00
    1529485528.684784 /dev/pcanpcifd6 >      001 ..h..  4 - 61 00 00 00
    1529485528~686760 /dev/pcanpcifd6 <      001 ..h..  4 - 63 00 00 00
    /dev/pcanpcifd6 < [packets=100 calls=100 bytes=400 eagain=0]
    sent frames: 100
    
  • PCAN-PCIe FD: added FW version checking for DMA issue handling:
    Driver checks against FW < 3.3.0 to detect whether the DMA logic includes issue with the mix of 32-bit and 64-bit logical addresses
  • PCAN-PCIe FD: wait of end of PCIe transaction when resources are being cleared in the board, before releasing their corresponding part in the host
  • netdev: fixed memory leak and free of wMsgs and rMsgs msgs queues in case of alloc failure
  • driver: used device_destroy() instead of device_del() (see: source/drivers/base/core.c: "device_destroy - removes a device that was created with device_create()")
  • sysfs: fixed usage of dev->adapter when removing sysfs nodes: dev->adapter might be released before deleting the sysfs adapter related nodes
  • driver: added debug as a new target in Makefile and fix netdev build
  • PCAN-USB *: fixed plugging/unplugging of USB adapters while there is CAN traffic
  • PCAN-PCI/PCIe: introduced devs list in pcan_pci.c to correctly free resources in case of errors in _probe() function
  • driver: removed old and useless #idef/#endif: consider as if:
    • PCAN_USES_OLD_TX_ENGINE_STATE won't never be defined anymore
    • PCAN_USB_PCAN_SYSFS is always defined
  • driver: fixed delta_us computing in pcan_sync_timestamp() to prevent from event timestamp older than sync timestamps
  • driver: fixed timeval_add_us() to correctly handle the negative values of µs to add
  • driver: timestamp cooking is now done in user context rather than in interrupt context to save CPU time
  • PCAN-USB: fixed regression issue with PCAN-USB at 1Mbps, as well as timestamp 8-bit wrapping issue and improve rx management
  • driver CONFIG_COMPAT mode: fixed copy_to_msg32()
  • driver/API: added support for SET and GET_OPTION in CONFIG_COMPAT mode
  • driver: added SPDX identifiers to headers and C files
  • driver: Included last linux-can header files rather (very) old ones. This also enables to include last GLPv2 license
  • PCAN-PCIe *: included MSI workaround around can0 IRQ: now can0 IRQ is always the last IRQ freed:
    • If PCAN_PCI_MSI_WORKAROUND is not defined, then IRQ are requested (resp. freed) at _open() (resp. _close()) time, as before.
    • If PCAN_PCI_MSI_WORKAROUND is defined, then:
      • . if usemsi (fdusemsi) equals 0, then IRQ are requested (resp. freed) at _open() (resp. _close()) time.
      • . otherwise, IRQ are requested (resp. freed) at _probe() (resp. _exit()) time.
    Since this issue has been seen on x86, then PCAN_PCI_MSI_WORKAROUND is defined ONLY when CONFIG_X86 is defined
  • driver: included support of new Timer API since Kernel 4.15 (Ubuntu 18.04 LTS)
  • driver/API: changed the way STATUS[PCANFD_BUS_LOAD] is notified:
    Now the driver setup its own timer to push the STATUS[PCANFD_BUS_LOAD] msg by itself. This msg is no more pushed by the device ISR
    This enables to limit Rx queue flooding and ensure that the msg will always be pushed. The timer is stopped when the device is closed
    The timer is setup and started if flag PCAN_DEV_BUSLOAD_RDY is set only
  • driver: fixed bus_load: value should be 100x greater
  • PCAN-USB *: force GFP_DMA bit for URB data buffer allocation
  • PCAN-USB: reworked completely timestamps handling to handle clocks drift through the driver global timestamp system
  • PCAN-* FD: fixed 32-bit aligned parsing of incoming uCAN buffers
  • driver/API: initialize with default settings when no bitrate nor brp is given by user
  • PCAN-USB *: fixed usage of read_buffer_len in rx USB buffer (some buffers could not been read entirely)
  • driver: useed power of 2 value for clock_drift scale to save CPU time in timestamp management during ISR
  • driver/Makefile: used "modprobe", "udevadm" and "depmod" instead of the absolute path of the executable files
  • pcanfdtst: dsample_pt default value forced to sample_pt if dsample_pt was not given on cmd line
  • driver: improved the way init settings are checked and handled before opening a channel: now, any wrong value generates -EINVAL
  • lib/pcanfd_open(): process SAMPLEPT flags only when BITRATE values are given (processing any user sample point makes no sense when using BRP,TSEGx and SJW arguments)
  • driver: restore default settings on last close instead of keeping current ones
  • driver/API: fixed potential bug: user sample_point MUST not be greater than PCAN_SAMPT_SCALE
  • driver: fixed some DEBUG string format in 32-bit compilation
  • PCAN-USB *: improved the way timestamps are handled to be VM compatible
  • PCAN-USB *: request calibration msgs at _init() rather than at _open() time so that clocks are stabilized an clocks drifts are fixed when the channel is open
  • PCAN-USB *: fixed potential Kernel Oops in pcan_poll when application uses select() and USB device is unplugged
  • driver: changed mdelay() into msleep_interruptible() to save CPU time while in non-interrupt contexts
  • PCAN-USB *: fixed URB buffer address by using the heap instead of the stack
  • PCAN-USB *: added up to 2 retries when writing an URB, in case of time out. This fix should be enough for PCAN-USB Pro to run in VM
  • driver/API: fixed a bug that could lead to send a CAN FD msg with data_len > 8 and/or BRS while the channel was not opened in CAN FD mode
  • pcanfdtst.c: Added --play-forever option: while --play reads once a file and stops at the end of it, --play-forever loops reading it from the beginning
  • SJA1000 *: fixed potential bug for all internal SJA1000 based devices: no other choices than "software" timestamps for these devices
  • pcanfdtst.c: added a way to ctrl output line format (see % date --help)
  • pcanfdtst.c: added --filler option and "rec" mode to define the way DATA are filled and to record data into a file that could be played next
  • pcanfdtsts.c: now frames can be sent AND checked with incremented CAN ID and DLC
  • driver/API: removed useless PCANFD_TX_OVERFLOW notification when in blocking mode
  • pcandfdtst.c: added "getopt" and "setopt" new modes to get/set OPTIONS value from the driver
    Usage is:
    $ pcanfdtst getopt --opt-name x /dev/pcan
    $ pcanfdtst setopt --opt-name x --opt-value yyyy /dev/pcan
  • PCAN-Chip USB: Fixed PCAN-Chip name
  • PCAN-Chip FW 3.3.0: included digital/analog I/O full management
    (see also PCANFD_IO_xxx options in pcanfd.h)
  • driver: changed the way ENOSPC is handled in options processing: when user provides a too small buffer, -ENOSPC is returned and the "size" field of the opt pointer is updated with the needed value. Libpcanfd has been changed too. Now, user application knows what size should be allocated
  • driver/API: added 2 options to read FW and DRV versions
  • driver: fixed sjw usage in SJA1000 bittiming conversions
  • driver: fixed sample_point conversion between pcan and linux-can: pcan sample-point uses 3 decimals while linux-can uses 2
  • driver: fixed bitrate conversion issue: added sjw as a parameter to convert some BTR0BTR1 specs. Previous releases were considering a default sjw (=1) for the display
  • pcanfdtst.c: added -E --esi option to set ESI bit in tx frames
  • netdev: use jiffies only for Kernel > 4.7 (remove support of old kernels, for something that is not used anywhere else...)
  • driver/Makefile: removed the leading comment in var setting that could lead to compilation error
  • PCAN-USB *: fixed usb device ID reading and setting by looping on sending the request in case of ETIMEDOUT
  • PCAN-USB *: useed more modern way to dialog with USB devices by the mean of usb_bulk_msg()
  • pcan-settings: didn't return "errno" anymore but 0
  • pcanfdtst.c: don't fail in case of timeout if not waiting for a given number of frames (that is, when -n is not used on cmd line)
  • PCAN-USB X6: fixed comment for in its corresponding Udev rule
  • sysfs: "devid" entry only exists if devid makes sense for the device
  • pcanfdtst.c: useed alarm() and signal(SIGALRM) to setup a maximum time of running
  • pcanfdtst.c: changed the meaning of the "- n xxx" option: now this defines the count of CAN frames instead of the count of loops
  • driver: changed the good old enum scheme. Now devices ranges are:
      0    31      PCI/PCIe
      32   63      USB
      64   71      PC-CARD
      72   79      ISA/PC104
      80   87      DNG SP
      88   95      DNG EPP
    
    To restore the old one, build pcan with:
    $ make NEW_DEVNUM_SCHEME=NO
      0    7       PCI/PCIe
      8    15      ISA/PC104
      16   23      DNG SP
      24   31      DNG EPP
      32   39      USB
      40   47      PC-CARD
    
  • driver/API: addd PCANFD_FEATURE_SELFRECEIVE bit that says that the device is capable of self-sending CAN frames
  • driver/API: renamed HW_PCI_FD into HW_PCIE_FD which is closer to reality (pcan.h always defines HW_PCI_FD as HW_PCIE_FD, for compatibility reasons)
  • pcanfdtst.c: added -M | --max-duration option that enables user to set the maximum count of s. the application should run.
    If this duration is reached before the end of the test, the application returns 1
  • lib: fixed pcanfd_open() now unconditionally calls ioctl(SET_INIT) next to open() system call
  • netdev: fixed usage of CTRLMODE_LISTEN_ONLY and _FD_NON_ISO socket-CAN flags

Download Driver v8.6.0 (tar.gz) Download Manual (PDF)

Driver Download Version 8.5.1 (27.10.2017)

Updates:

  • Driver and library include 2 new functions/ioctls that enable to get/set options values to an opened channel:
    • Set a delay between each frame written on the CAN bus (CAN FD controllers only)
    • Set a new hardware timestamp mode that enables applications to get the raw timestamp values from the device
    • Get the features of a channel (CAN FD capable, device number can be set,...)
    • Set the acceptance code and mask for 11-bit and 29-bit CAN IDs (standard or extended modes)
    • Define what kinds of message the application wants to receive: CAN, RTR, STATUS, ERROR, ...
  • The driver can be built with Kernels more recent than 4.10 in which pci_enable_msi_range() has been removed
  • Fixed BTR0BTR1 bit rate conversion with CAN adapters equipped with a clock > 8 MHz
  • Library's Makefile automatically builds the 32-bit version when running a 64-bit system if it is capable to
  • Tx and Rx error counters are now read from SJA1000 devices too
  • Added ERROR_MSG handling (SJA1000 + CAN FD controllers): the driver now forwards any error message it gets from the controller to the application. Application is notified of these errors, if the feature is enabled
  • The warning message "Compiling for __LP64__" displayed by the "make" command, has been removed
  • The Bootloader version is also given when any CAN USB adapters like the PCAN-USB FD is connected (dmesg)
  • The "CAN 2.0 A/B" mode is forced when a CAN FD controller is not initialized in CAN FD mode
  • Included the patch from "Benad, Friedrich [DE] mailto:friedrich.benad@airbus.com" that enables to compile the driver in netdev mode with Kernel 3.0
  • udev/45-pcan.rules: Fixed a typo in a comment
  • Add "peak_pciefd" (the mainline driver since 4.12) to the blacklist when PCAN is installed
  • Fixed RTR flag usage in outgoing CAN FD messages (unused) as well as an endianness issue in outgoing CAN messages (only big endian architectures)
  • Fixed issues around timestamping: now PCANFD_INIT_TS_DRV_REL is correctly handled
  • Fixed a compilation error with Kernel 4.11+ in netdev mode (last_rx field has been removed from struct net_device from v4.11)
  • Added "deftsmode" module parameter that enables to define the default timestamp mode used for all of the channels. This is useful for netdev mode
  • Fixed DMA usage in control URB with Kernel 4.13 for all PCAN-USB FD interfaces as well as for the PCAN-USB Pro. Kernel 4.13 is the Kernel of Ubuntu 17.10
  • Fixed lonely "(le)" (or "be") message in dmesg

Download Driver v8.5.1 (tar.gz) Download Manual (PDF)

2017-06-14 - Release Version - 8.4.0

  • Driver Download Version 8.4.0
  • make: fixed usage of "device_lock" only if HANDLE_HOTPLUG is defined, to avoid compilation errors when USB and PCC support not included
  • make: Korrektur der Definition pr_warn() mit Kernel älter als 2.6.35
  • make: Neue Option: COMPAT_SUPPORT=NO zum Deaktivieren von CONFIG_COMPAT (32-Bit-Anwendung wird auf 64-Bit-Treiber ausgeführt)
  • make: Bessere Unterstützung für das Cross-Kompilieren von Test-Anwendungen, Treiber-Installationen und Bibliotheken
  • make: Korrektur des 64-Bit-Anzeigeformats entsprechend CONFIG_ARCH_DMA_ADDR_T_64BIT
  • make: Korrektur des falschen und sinnfreien Vergleichs (a == a) bei Interface-Nummern von USB-FD-Interfaces
  • make: Korrektur des Typs sysfs_attr falls CONFIG_DEBUG_LOCK_ALLOC=y
  • make: Unterstützung für OpenSuse-ähnliche Systeme hinzugefügt, bei denen die Headers anders als bei Debian abgelegt sind
  • make install: Korrektur der Verwendung von depmod in Cross-Kompilier-Umgebungen
  • make install: DESTDIR_DEV hinzugefügt, um Header-Dateien anderswo zu ermöglichen, als im rootfs (Standard: DESTDIR)
  • PCAN-FD: Benutzer-API-Flag PCANFD_INIT_BUS_LOAD_INFO auf die Option CANFD BUSLOAD gemappt, um die Rate der Hardware-Interrupts zu begrenzen, falls "bus load" als Info nicht benötigt wird
  • PCAN-FD: Korrektur der Anzeige von "Unknown adapters" (unbekannte Adapter) durch Hinzufügen fehlender Namen für unterstützte FD-Interfaces
  • PCAN-PCIe FD: Bestimmte sysfs-Eigenschaften hinzugefügt, sodass die logischen/virtuellen Adressen der RX/TX-DMA-Zonen gelesen werden können
  • PCAN-PCIe FD: Modulparameter dmamask hinzugefügt
  • PCAN-PCIe FD: Korrektur "non-working"-Fehler beim ersten Mal open() + read()
  • PCAN-USB FD: Korrektur in timeval_add_us(), wenn der Zähler für μs genau 1 M ist und "ts_high" von 2 ^ 32 - 1 auf 0 übergeht
  • PCAN-USB Chip: hinzugefügt
  • libpcanfd: Korrektur bei Verwendung der (beiden) Argumente "sample_pt" im Aufruf von pcanfd_open()
  • libpcanfd: Korrektur der Abtastpunkt-Berechnung, wenn OFD_BTR0BTR1 oder OFD_BRPTSEGSJW in pcanfd_open() verwendet wird
  • driver: Korrektur der Anzeige von Standardwerten von usemsi/fdusemsi (modinfo)
  • driver: Korrektur der Berechnung von btr0btr1, indem der Wert sample_point berücksichtigt wird; btr0btr1 in sysfs zeigt nun den korrekten Wert auf Grundlage des ausgewählten sample_pt an
  • driver: Korrektur der Berechnung der Taktverschiebung für 32 und 64 Bits
  • pcanfdtst: Option -T hinzugefügt zur Sicherstellung, dass empfangene Zeitstempel nicht aus der Zukunft kommen und von der aktuellen Zeit nicht zu sehr abweichen

Download Driver v8.4.0 (tar.gz) Download Manual (PDF)

Driver Download Version 8.3.1 (15.02.2017)

Updates:

  • netdev/pcanfd_pci: handle restart from BUSOFF
  • netdev: fixed a compilation issue with some 4.4.0-x kernels including Linux 4.8 changes of can/dev.h
  • pcanfd_usb: handle non-root USB controllers (PCAN-USB X6 support with non EHCI USB controllers)

Download Driver v8.3.1 (tar.gz) Download Manual (PDF)

Driver Download Version 8.3 (10.01.2017)

Updates:

  • Support of the new PCAN-USB X6 USB to CAN adapter
  • 64-bit driver supports now 32-bit applications built with 32-bit libpcan ($ make -C lib all32)
  • Better netdev support with handling (auto-)restart mechanism in case of Bus Off
  • Dynamic allocation of Tx and Rx msgs fifos on open(). Release on close().
  • Set fdusemsi module option back to default 1 (MSI used only if not shared)
    (writing onto a not-connected channel caused loosing MSI for the the other connected channel)
  • Fixed that Tx/Rx fifo status bits were reset in the exported CAN status
  • pcanfdtst: improved Xenomai RT by fixing usleep() usage
  • Support of the OEM PCI/PCIe device ID 0x0019
  • Removed some spurious DEBUG msgs
  • uCAN (CAN FD) cmds unused bits are set to 0

Download Driver v8.3 (tar.gz) Download Manual (PDF)

Driver Download Version 8.2 (08.11.2016)

Updates:

  • Fixed netdev lock/unlock around device_write()
  • Added information read from linux-can into /sys/class/pcan
  • Increased Tx fifo up to 500 entries
  • Fixed typo in Udev script: ctrl_number is actually ctrlr_number
  • Added two new ioctl to get bit timing ranges as well as available clocks from the driver (pcanfd.h, libpcanfd.h, and libpcanfd.c impacted)
  • Sample_point ratio is taken into account now, when computing bit timings specs
  • Added rtai and xeno as new Makefile targets
  • Removed OFD_DSAMPLEPT bits (pcanfd_open() only): if sample_point is given then it must be given for both nominal and data bit rates
  • The driver now considers the bit rate value only if BRP is not 0
  • Fixed handling of some errors cases from CAN-FD adapters
  • pcanfdtst(RTAI): creates a better unique task ID
  • Removed forgotten DEBUG logs for PCAN-PCI Express FD
  • Usage of RX_BARRIER mechanism in PCAN-PCI Express FD to prevent from any spurious interrupts
  • Added some control on channel index received from PCAN-PCI Express FD
  • Added PCANFD_BUS_ERROR as a new STATUS message to give SJA1000 applications BUS_ERROR interrupt notifications Added the STATUS message software ACTIVE for SJA1000 based devices. It occurs as soon as the bus is set up
  • Added support of MSI for the PCAN-PCI Express FD (see also new "fdusemsi" module parameter)
  • The SJA1000 interrupt handler is not entirely locked anymory. Only write access is locked
  • The global init of PCAN-PCI-like boards was moved to _probe() function
  • Fixed usage of "irqmaxloop" and "irqmaxrxmsg" when they're 0 on cmd line
  • Speed up of the way Rx frames are read and saved from the SJA1000 Rx buffer
  • Fixed a bug concerning the limitation of STATUS messages, which could cause that further status changes of the bus were not notified
  • Added the new module parameters "usemsi" and "fdusemsi" to ctrl if MSI should be enabled (0=INTA mode only, 1=MSI mode tested, 2=shared MSI mode tested). "usemsi" default = 1 and "fdusemsi" default = 2
  • Makefile: Added KBUILD_EXTRA_SYMBOLS def to remove 'undefined symbols' messages when building the driver with RTAI
  • libpcan.c: Added const qualifier to each pointer that cannot be modified
  • Posted a soft STATUS msgs when the driver exits from any error cases, to notfiy user application of the end of the error status
  • Fixed how DMA is handled in PCAN-PCI Express FD: now Rx DMA is set once for all while Tx DMA is setup each time the device is opened
  • Fixed the netdev way of copying clocks from pcan (no more intern_prescaler usage)
  • Enlarged bit timing ranges of any CAN-FD PC interface to their max
  • Fixed computation of bitrate_real field when setting bit rate using BRP

Download Driver v8.2 (tar.gz) Download Manual (PDF)

Driver Download Version 8.1 (10.06.2016)

Updates:

  • First release of PCAN v8 handling CAN-FD and new CAN-FD API
  • pcanfd_pci: fixed 64-bits version
  • Upgraded user documentation

17.05.2016 - Beta Version 8.0.25 - Updates:

WARNING:
Using this version over any 8.0.x-beta needs rebuilding and reinstalling everything!

  • pcan_parse.c: fixed timestamp display
  • Added SingleShot feature for SJA1000 (-like) controllers (see PCANFD_MSG_SNG bit in pcanfd.h)
  • Changed definition of PCANFD_TIMESTAMP, PCANFD_HWTIMESTAMP, PCANFD_ERRCNT, and PCANFD_BUSLOAD
  • Fixed clock drift handling with PCAN-USB (Pro) FD in timestamps
  • Added "host_time_ns" and "hw_time_ns" new fieds in "struct pcanfd_state" to inform the user of the current timestamps basis
  • pcanfd-pci: forced fallback into INTA mode if MSI did not give the exact count of requested msgs, since experiments show that MSI are not sharable
  • Fixed clock drift to lower integer rounded effects

01.04.2016 - Beta Version 8.0.20 - Updates:
  • CAN 2.0 PCAN-USB devices: usage of dynamic mem alloc instead of static one for sent commands (required for other arch and/or usb controller drivers, like RPi3 + dwc_otg)
  • Read/write access: fixed usage of msg type for input CAN frames
  • Read/write access: set default init flag PCANFD_INIT_FD for uCAN devices so that default open is CAN-FD
  • Driver/Makefile: included remarks made by Mr. Udo Sprute (thx!) to build things cleaner
  • Open: fixed bug around mutex that could be released twice
  • Changed the way of locking access to the Tx engine vs. ISR and multi-tasking access

08.03.2016 - Beta Version 8.0.17 - Updates:
  • Fixed compilation issues with 2.6.32 LTE
  • Fixed typo in sysfs "nom_tsegx"
  • Checked status of class_create_file() to fix __must_check attribute
  • Fixed missing ending ; and removed DEBUG define
  • Fixed compilation of the driver when USB is not included nor supported
  • Fixed dma_addr_t usage against 32/64-bits arch dma addr type
  • Fixed RT compilation against Xenomai 2.6 kernels

26.02.2016 - Beta Version 8.0.16 - Updates:
  • CAN FD support for all PEAK-System CAN FD PC interfaces
  • Improved memory copies and signaling mechanism to accelerate the processing of messages
  • New modern and message oriented CAN FD API offering multi-messages read/write, enhanced status information, several bit-timing specifications for both nominal and data bitrates, clock selection, ... (new "pcanfd.h" include file and new "libpcanfd" library)
  • Bus load, rx and tx CAN errors counters available in messages received by the application (when supported by the hardware)
  • Extensive use of "/sysfs" to export lots of the properties and statistics for each CAN/CAN FD device node to user space
  • New free "pcanfdtst" test application enables to test CAN 2.0 as well as CAN FD transfer
  • 100% compatible with the old CAN API (old "pcan.h" include file and "libpcan" library are included by the new ones)
  • Enhanced support of real time (enhanced support of RTDM in the driver and Xenomai 2.0 and RTAI in the test applications)
  • New "lspcan" tool that displays information as well as statistics for CAN/CAN FD nodes ("/proc/pcan" always present but should be considered for CAN 2.0 usage only)
  • All pcan nodes are moved under "/sys/class/pcan" ("usbmisc" no more needed)
  • New device nodes and new tree representation (board oriented) under "/dev" (the Udev rules heavily make use of the new exported "/sysfs")

Download Driver v8.1 (tar.gz) Download Manual (PDF)

Driver Download Version 7.15.2 (29.07.2015)

Updates:

  • Included Self-Receive facility for all USB adapters
  • PCAN-Driver_for_Linux_eng_7.x.pdf describes how to use new self-receive options in the write/read chardev API
  • $ cat /proc/pcan displays now "[pec]" if the PCIEC_SUPPORT option has been defined
  • Fixed the way the PCI driver handled a channel device probing failure (double deregistration could result to a some Kernel Ooops)
  • Removed the usage of obsolete function check_mem_region() for Kernels >= 4.0
  • Driver/Makefile: fixed Kernel version checking to be able to compile the driver against 4.x Kernels
  • Driver/Makefile: handle GCC v4.9 (date-time warning has become an error)
  • Driver/Makefile: fixed version checking of the gcc compiler
  • All Makefile (RT): handle newer versions of xeno_config and the way the "skin" is being set on command line
  • netdev interface: uses now alloc_can_skb() instead of dev_alloc_skb() for Kernels >= 3.9, to workaround the linux-can o-o-o frames issue
  • netdev interface: handles a special case of Kernels 4.1 & 4.1.1 to workaround the linux-can o-o-o frames issue
  • Added definition of get_can_dlc() for some old Kernels
  • Added the reset of the error counters of the PCAN-USB FD adapters before going to bus on
  • Minimal_xenomai and test: did some coding style cleaning
  • transmitest: rewrote the complete help displayed and enabled user to use hex numbers for -p, -i, -r and -n options on cmd line
  • bitratetest.c: now can correctly be built under Xenomai
  • test/minimal_xenomai: renamed xenomai_transmitt_test to xenomai_transmit_test

Download Driver 7.15.2 tar.gz Download Manual (PDF)

Driver Download Version 7.14 (07.01.2015)

Updates:

  • Added support for the new PCAN-USB FD and PCAN-USB Pro FD USB adapters for use with the CAN 2.0b bus standard

Download Driver 7.14 tar.gz Download Manual (PDF)

Driver Download Version 7.13 (20.10.2014)

Updates:

  • Added a new feature that exports the "Device ID" which might be written into some PCAN devices (such as the PCAN-USB family devices) to sysfs so that it can be read by Udev system and used for creating /dev nodes names. See the new 45-pcan.rules file which now gives examples on how to use it. This "Device ID" may also be used in the "canx" name of the "netdev" (socketCAN) interfaces, by the mean of the "assign=devid" module parameter
  • Please note: the "Device ID" value is ONLY used if its value is not the default value (-1). It can be changed with: "pcan-settings /dev/pcanusbX -d new_value"
  • Please note: column "ndev" of cat /proc/pcan has been enlarged to display canXYZ strings
  • Fixed udev rules for correct naming of /dev/pcanxx symlinks to USB CAN devices: USB CAN devices /dev/pcanxx names start from xx=32, what ever CONFIG_USB_DYNAMIC_MINORS Kernel configuration is
  • Fixed pcan-settings tool to be able to handle 32-bits Device IDs
  • Added support for Kernel 3.17
  • Added support of the new PCAN-ExpressCard 34
  • Minor changes in the user manual

Download Driver 7.13 tar.gz Download Manual (PDF)

Driver Download Version 7.12 (23.07.2014)

Updates:

  • Moved physically installed processing out of the USB interrupt context
  • Fixed "Kernel NULL pointer dereference" occuring with netdev under high busload
  • chardev applications tasks are now unblocked when waiting for an event on a device that has been unplugged (errno = ENODEV)
  • Reworked a few things to detect the spurious interrupt problem with RT patches kernels in PCI code
  • Added two new module parameters ("irqmaxloop" and "irqmaxrmsg") for a better control how much time should pcan pass in each SJA1000 IRQ handler and how many CAN messages it can read from each rx queue (default values are 1 and 8 resp.)
  • Reworked SJA1000 ISR to save time in case of an error condition
  • Fixed in-tree (cross-)compilation issue by using EXTRA_CFLAGS in driver's Makefile instead of _CFLAGS
  • Fixed an old berlios.de link in the user manual

Download Driver 7.12 tar.gz Download Manual (PDF)

Driver Download Version 7.11 (05.05.2014)

Updates:

  • Fix reading of Kernel version in driver's Makefile, especially when the version number doesn't match x.y.z strict formats. Now, versions like x.y, x.0y, x.y-name, x.y.0z, x.y.z-name are correctly handled
  • Fix errno handling in pcan-settings.c
  • Update documentation with info about linux-can PEAK-System mainline drivers and fix typos and (old) berlios.de references

Download Driver 7.11 tar.gz Download Manual (PDF)

Driver Download Version 7.10 (23.01.2014)

Updates:

  • Added support for PCAN-PCI Express OEM board
  • Handle USB error like BUSOFF to force application to restart
  • Handle usb core error in read callback (interrupt context) by properly closing the device instead of ignoring the error
  • Remove "PEAK-Systems" ending "s" to MODULE_DESCRIPTION string
  • Tested with 3.10 kernel

Download Driver 7.10 tar.gz Download Manual (PDF)

Driver Download Version 7.9 (15.08.2013)

Updates:

  • fixes CAN messages with a faulty DLC value greater than 8, and allows them to be processed correctly
  • fixes devices list management (use of mutex lock)
  • fixes display bug of usb can channel number (read /proc/pcan)
  • improves the way diagnostics are returned
  • includes changes concerning the function "create_proc_read_entry" that is deprecated from Kernel v3.9
  • has been tested with Kernel 3.10

Download Driver 7.9 tar.gz Download Manual (PDF)

Version 7.8 (31.01.2013)

Updates:

  • Support of future Kernel 3.9 linux-can
  • Include support of Kernel 3.7+ in driver/Makefile (version.h moved)
  • All Makefiles now support the DESTDIR variable
  • Driver "make install" doesn't remove vanilla linux-can driver "peak_pci" from memory anymore on Kernels < 3.4 (bug in "peak_pci" leads to Kernel crash); a request to reboot is shown instead
  • Build date and time added in /proc/pcan display
  • Added forgotten HW_ISA_SJA type when creating and removing nodes (udev didn't see device creation/removing)
  • Always force usb_clear_halt() on CAN BUSOFF for USB CAN interfaces (certain small frames could not be transmitted on the bus)

Download Driver 7.8 tar.gz Download Manual (PDF)

Version 7.7 (27.07.2012)

Updates:

  • Fixed compilation issues with Linux Kernel versions up to 3.5 (Thanks to Oliver Hartkopp)
  • PCAN-USB/USB Pro: Fixed an "undefined symbol" compilation issue (pr_err()) with (very) old Linux Kernels (2.6.22)

Download Driver 7.7 tar.gz Download Manual (PDF)

Version 7.6 (24.05.2012)

Updates:

  • Fixed compilation issues with Linux Kernel versions up to 3.5 (Thanks to Oliver Hartkopp)
  • PCAN-USB/USB Pro: Fixed an "undefined symbol" compilation issue (pr_err()) with (very) old Linux Kernels (2.6.22)

Download Driver 7.6 tar.gz Download Manual (PDF)

Version 7.5 (21.03.2012)

Updates:

  • Added support for Kernel v3.x
  • Added support for miniPCIe
  • Fixed wrong usage of /dev/NULL, replaced by /dev/null in driver/Makefile
  • Blacklisted the peak_xxx mainline drivers
  • Adapted usb_reset_endpoint() call to individual kernel versions
  • Fixed potential system crash by changing led timer mechanism to delayed work (PCAN-ExpressCard)
  • Improved endian handling
  • Improved can error handling
  • Handle possible fragmentation of rx messages (PCAN-USB/PCAN-USB Pro)
  • Added support for PCAN-miniPCIe (devid=8) and PCAN-PCI nextgen (devid=3)
  • Fixed potential crash if PCAN-ExpressCard (PCIeC) support is not defined and troubles occur when detecting the SJA1000 controller
  • Fixed potential issue when probing for SJA1000 in PELICAN mode
  • Fixed potential infinite loop waiting for an urb command to be submitted (PCAN-USB/PCAN-USB Pro)
  • Use more accurate time in ms
  • Fixed PCAN-USB FW 2.8 blocking issue
  • Removed cases of potential double BUSOFF transmission (PCAN-USB/PCAN-USB Pro), removed some unuseful delays
  • Added "uninstall" target to Makefiles to properly remove driver from the system

Download Driver 7.5 tar.gz Download Manual (PDF)

Version 7.4 (13.09.2011)

Updates:

  • Removed any references to selecttest in test/Makefile (fixed 7.3 make error)
  • Fixed PCAN-USB Pro frame lost, when odd number of frames sent in between insmod/rmmod cycle (no problem occurs when the driver was not removed)
  • Added cancellation of calibration message on device/driver removing
  • Changed "CAN OFF" messages handling to channel closing rather than on device removing

Download Driver 7.4 tar.gz Download Manual (PDF)

Version 7.3

Updates:

  • Better support of some older kernels (2.6.18 for example).
  • Fix - non - support of pc-card even if PCCARD_SUPPORT is defined on command line but kernel is not configured for
  • Fix PCAN-USB adapters minor regression issue (device number display now back in /proc/pcan irq column)
  • Add support for next Linux kernel 3.0
  • Enforce kernel config checking against I2C_ALGO option at compilation time

Download Driver 7.3 tar.gz Download Manual (PDF)

Version 7.2

Updates:

  • Fixed typo in src/pcan_dongle.c (v7.1) to be able to use the PCAN-Dongle
  • Fixed SJA1000 mutual exclusion in write() functions in certain Low-Speed CPU conditions
  • Support of Linux kernel up to 2.6.38.3
  • Added a new KERNEL_LOCATION detection based on /lib/modules//build for homebrew kernels

Download Driver 7.2 tar.gz Download Manual (PDF)

Version 7.1

Updates:

  • Support of the PCAN-USB and PCAN-USB Pro adapters
  • The message timestamps of the PCAN-USB and PCAN-USB Pro CAN interfaces are used to setup the time of incoming CAN frames up to user applications
  • The driver version is now displayed when /proc/pcan is read
  • Support of Kernel 2.6.37
  • Fixed a problem concerning the PCMCIA adapter support
  • Clearing the message filter list is now available
  • Support of dynamic usb minors allocation (kernel config option)

Download Driver 7.1 tar.gz Download Manual (PDF)

Driver Patch 7.1.1

Updates:

  • Correct typo in pcan_dongle.c (Minor instead of Major) which prevented PCAN-Dongle devices to be opened from application

Download Driver 7.1.1 Patch

Version 6.24

Updates:

  • PCAN-ExpressCards are now supported. On some systems hot plug support will not work correctly (kernel depending). You have to plug the PCAN-ExpressCard card before the boot-up of your computer and you can unplug the card only if power is down or the PCAN driver was unloaded
  • A bug was removed which prevents to use a fixed major number
  • Support for kernel 2.6.35
  • Fixed a problem with PCAN-PC Cards and kernel 2.6.35
  • Added the missing "()" around KERNEL_LOCATION in driver/makefile

Download Driver 6.24 tar.gz Download Manual (PDF)

Driver Patch

  • Patch to use the peak-linux driver-6.24 with kernel up to 2.6.37
  • Usage: Copy the patch into the peak-linux-driver-6.24 directory
  • $ cd peak-linux-driver-6.24
    $ patch –p0 < peak-linux-driver-6.24.3.patch

Download Patch

Version 6.20

  • Re-inserted a startup waiting time of 10 ms for PCAN-USB, to prevent a blocking of the PCAN-USB device during initialization
  • Added a compiler switch to prevent Makefile preprocessor macros to write unwanted temporary files

Download Driver 6.20 tar.gz Download Manual (PDF)

Version 6.19

  • Compiles up to kernel 2.6.34 with support for PCAN-PC Card
  • Searches for the default kernel headers for installed (k)ubuntu, OpenSuSE, and plain vanilla kernels
  • Performance improvement for PCAN-USB with netdev usage
  • Removed a bug in the Makefile which forces a reboot to use udev changes
  • Documentation update, list additional used libraries and how to blacklist the alternative peak-pci driver
  • Added a tool to set a individual device number for PCAN-USB devices
  • Removed the initial delay when starting PCAN-USB

Download Driver 6.19 tar.gz Download Manual (PDF)

Version 6.15

  • Fixes a problem with the PCAN-USB driver (Baudrate fix)
  • New manual

Download Driver 6.15 tar.gz Download Info Version 6.15 (PDF)

Version 6.13

  • By preventing accidental back-to-back writes to the command register of the SJA1000 chip in conjunction with multicore processors write stalls were successfully removed
  • "spin_lock..." macros had become harmonized
  • A compilations bug with the XENOMAI flavor was fixed

Download Driver 6.13 tar.gz Download Info for Version 6.13 (PDF)

Version 6.11

  • Optimized for multicore environments
  • Fixed endian problem for netdev sending SFF frames via USB
  • Removed a bug where a write could return -ENODATA even if the write was successful.
  • Renamed pcan_fifo_near_ful() to pcan_fifo_not_ful().
  • Moved the sense of pcan_fifo_empty().
    Now it returns true (!=0) if the FIFO is empty.
  • Minor bug fixes

Download Driver 6.11 tar.gz Download Info for Version 6.11 (PDF)

Version 6.9b

Updates:

  • Support up to Kernel 2.6.29
  • Added udev support
  • Minor bug fixes
  • Documentation update

Download Driver 6.9b tar.gz Download Info for Version 6.9 (PDF)

Version 6.7

Updates:

  • Support up to Kernel 2.6.26
  • Automaticly compiling for Socket CAN Support if the Kernel option "CONFIG_CAN" is set (Kernel 2.6.25 or higher)
  • Big Endian Support for PCAN-USB
  • PCAN-Dongle now works again without Parport-Subsystem
  • Remove some compiling warnings while use newer Kernel Versions
  • Remove some compiling warnings while use XENOMAI support
  • Some smaller fix for RTAI-Skin support

Download Driver 6.7 tar.gz Download Driver 6.7 rpm Download Info for Version 6.x (PDF)

Version 6.5

Updates:

  • Support up to Kernel 2.6.23
  • Add new features in Error Handling
  • Change type of timestamp to support new Kernel functions
  • Splitting of Realtime and non Realtime Code

Download Driver 6.5 tar.gz Download Driver 6.5 rpm Download Info for Version 6.x (PDF)

Version 6.4

Updates:

  • Support for 4 channel CAN PCI Interface (OEM boards) added
  • Improved resource locking for PCAN-Dongle
  • Improved resource locking for read and write queues (non-RT)

Download Driver 6.4 tar.gz Download Driver 6.4 rpm Download Info for Version 6.x (PDF)

Version 6.2

Updates:

  • Fixed a bug which raised overrun messages without overruns
  • Compiles now with kernel 2.6.21
  • Added a USB startup delay to compensate long PCAN-USB startup
  • PCAN-PCCARD: removed all mutexes inside soft-Irq context
  • Reworked parts of atomic_** usage
  • PCAN-ISA: mistakable info message changed
  • Improved stability of XENOMAI integration

Download Driver 6.2 tar.gz Download Driver 6.2 rpm Download Info for Version 6.x (PDF)

Version 6.0

Updates:

  • Since V6.x the PCAN-Linux driver support the Socket-CAN Interface - look at BerliOS Socket CAN for more information.
  • Add Filters for character device driver.
  • Improved and more compatible to MS-Windows PCAN-Light API error handling.
  • Timestamps with resolution down to microseconds.
  • Totally revised manual

Download Driver 6.0 tar.gz Download Driver 6.0 rpm Download Info for Version 6.x (PDF)

Version 5.3

Updates:

  • From now on, the driver support Kernel Kernel 2.6.18.5
  • Some smaller BugFixes

Download Driver 5.3 tar.gz Download Info for Version 5.x (PDF)

Version 5.12

  • From now on, the driver support Kernel 2.6.19
  • BugFixes:
    • Solved problems in PC CARD driver (2 channel mode, LED state etc.)
    • Some compiler problems with different Linux versions solved (2.4 and PCAN PC CARD)

Download Driver 5.12 tar.gz Download Info for Version 5.x (PDF)

Version 5.0

Updates:

  • From now on, the complete driver will be distributed under the GPL. The 'obfuscated' code for the USB Interface is removed.
  • The Xenomai RealTime Core was inegrated to the driver (at the moment the PCAN-USB and the PCAN-PCC did not support this feature).
  • A new initialisation parameter was added: "bitrate". from now on it is possible to set the default bitrate of the hardware
  • Some smaller BugFixes

Download Driver 5.0 rpm Download Manual 5.0 tar.gz

Version 4.3

Updates:

  • Add PCAN-PC Card (PCMCIA)
  • Fixed ISA/PC104 shared interrupt problem
  • Added LINUX_CAN_Write_Timeout()
  • Preparation for kernel 2.6.17
  • Adding support for realtime sharing interrupts tested on Dual Channel PCI card
  • Moved usage of module_param_array() to kernels greater than 2.6.13
  • Removed module_param_array() usage problems for kernel 2.6.8-24-smp

Download Driver 4.3 rpm Download Manual 4.3 tar.gz

Version 3.9 to 3.10

Updates:

  • Correction for RPM make procedure
  • Fixed Bug for USB while have very high bus load
  • Fixed Bug in "Extended Status" function support Makefile for 2.6.0 <= Kernel Version < 2.6.5

Download Driver 3.9 rpm Download Manual 3.9 tar.gz

Version 3.6 (27.07.2004)

Updates:

  • Fixed "Bad: Scheduling while atomic!" error
  • Add English Documentation to package

Download Driver 3.6 rpm Download Manual 3.6 tar.gz

Version 3.5 (18.05.2004)

  • Update: Linux 2.6 Kernel support

Download Driver 3.5 rpm Download Manual 3.5 tar.gz

Version 3.28

Updates:

  • Driver work now with YellowDog-Linux (PowerPC)
  • Remove some warnings while compiling with Kernel-Version 2.4.21 (SuSE-9.0)
  • Latencie time were reduced
  • Fixed bug in error handling
  • Changed from CVS to Subversion

Download Driver 3.28 rpm Download Manual 3.28 tar.gz

Version 3.25

Updates:

  • Replaced GFP_KERNEL with GFP_ATOMIC inside some blocking situations
  • Better support for X86_64 Bit Systems
  • Works now with Kernel 2.6.15

Download Driver 3.25 rpm Download Manual 3.25 tar.gz

Version 3.21 (20.07.2005)

Updates:

  • Added option to selective compile for PCAN-PCI, PCAN-ISA, PCAN-Dongle or PCAN-USB
  • Prepared for kernels greater and equal than 2.6.12
  • Addes pci_enable_driver() for kernels greater and equal 2.6.10.
  • Removed concurrency between read_proc_mem() and USB read/write.

Download Driver 3.21 rpm Download Manual 3.21 tar.gz

Version 3.17 (14.02.2005)

Updates:

  • Increased write buffer for hardware revision >= 7 (PCAN-USB)
  • Bug removed when CAN_ERR_QXMTFULL was raised even when no queue was filled (PCAN-USB)

Download Driver 3.17 rpm Download Manual 3.17 tar.gz

Version 3.13 (10.12.2004)

Update:

  • Fix Bug while reading PCAN-USB Serial number (OEM)

Download Driver 3.13 rpm Download Manual 3.13 tar.gz

Version 3.12 (06.12.2004)

Updates:

  • Now conform to kernel 2.6.9 (missing timeout using USB)
  • Workaround for pcan_hw_getSNR() using PCAN-USB

Download Driver 3.12 rpm Download Manual 3.13 tar.gz

Version 3.10 (29.10.2004)

Update:

  • Kernel-Version 2.6.9 - Parameter 'timeout' missed in 'struct urb'

Download Driver 3.10 tar.gz

Version 2.8 (28.05.2003)

Update:

  • Add rpm Package

Download Driver 2.8 rpm Download Manual 2.8 tar.gz

Version 2.6 (18.03.2003)

Update:

  • Add rpm Package

Download Driver 2.6 rpm Download Manual 2.6 tar.gz

Version 2.5 (26.02.2003)

Update:

  • Add PCAN-USB Driver - PCAN-Light

Download Driver 2.5 rpm

Version 2.15 (11.03.2004)

Update:

  • Fixed bug when using RTR Messages

Download Driver 2.15 rpm Download Manual 2.15 tar.gz

Version 2.14 (20.11.2003)

Update:

  • Fixed wrong handling of USB device enumeration in the shared library

Download Driver 2.14 rpm Download Manual 2.14 tar.gz

Version 2.13 (29.10.2003)

Update:

  • Fixed rpm Package problem with old kernels (<2.4.18)

Download Driver 2.13 rpm Download Manual 2.13 tar.gz

Version 2.12 (12.08.2003)

Update:

  • devfs, kernel-2.5 support, LGPL

Download Driver 2.12 rpm Download Manual 2.12 tar.gz

Version 1.4 to 1.37

  • Version 1.4 (01.10.2002)
  • Update: Now work with SUSE 8.x LINUX - PCAN-Light

Download Driver 1.4 rpm Download Manual 1.4 tar.gz

Version 1.3.7 (01.03.2002)

Update:

  • PCAN-Light

Download Driver 1.3.7 rpm