Release Notes
for
CAN Interface Device Drivers for Windows 95/98/ME
The latest release is for VxD driver is 1.3.0 (Mar 15,
2002)
The latest release is for WDM driver is 2.3.0 (Mar 15, 2002)
© 1997 - 2002 electronic system design gmbh, Hanover, Germany
mailto: support@www.esd-electronics.com
www.esd-electronics.com
Last modified: Mar 15, 2002
Table of Contents
- Changes concerning all drivers
- Changes for CAN-PCI/200
- Changes for CAN-PCI/331 and
CAN-CPCI/331
- Changes for CAN-ISA/331 and CAN-PC104/331
- Changes for CAN-PCI/360 and CAN-CPCI/360
- Changes for CAN-ISA/200 and PC104/200
- Changes for CAN-PPC
- Changes for CAN-USB/331
- Restrictions of the drivers
- Known bugs for PCI/331 and PCI/200 with Windows 98
- Known problems with CAN-USB/331 drivers
- Wrong number of available CAN ports for active
CAN interfaces
- Active CAN 2.0B support for CAN-ISA/200 and
CAN-PC104/200
- Reducing virtual memory used by CAN-PCI/360
- Updating the local firmware
Revision 1.3.0
- Driver support for Rx object mode.
- New version of canui.dll (Rev. 1.5.1) with support for CAN-USB/331 and
indication if Rx object mode is supported by driver.
- New version of ntcan.dll with support for VxD and WDM driver (Rev. 2.3.0)
Revision 1.2.2
- New version of calcan32.dll (Rev. 1.6.3)
Revision 1.2.0
- Necessary internal change of TX queue structure for new CAN-PCI/200
support.
- Improved installation script to support factory settings for ISA
interfaces.
- Improved installation script to support subvendor/subsystem ID for PCI
interfaces to allow coexistance of CAN-PCI/331 and CAN-PCI/200 and to
prevent conflicts with other vendors using the same PCI bridges as used on
esd gmbh CAN interfaces.
Revision 1.1.1
- Minor fixes
- New version of dnet.dll (Rev. 1.1.1)
- New version of calcan32.dll (Rev. 1.6.0)
Revision 1.1.0
- Support for up to 5 CAN interfaces by each driver (except CAN-PCC)
- Tested with Windows ME
- New version of canui.dll (Rev 1.4.0) that indicates if CAN 2.0B is enabled
and allows configuration of PCI/360 memory size that is mapped to virtual
memory.
Revision 1.0.10
- File version resource set to real driver version instead always using the
default Windows version
Revision 1.0.9
- Basic support for CAN 2.0B.
Revision 1.0.8
- Support for flash update of firmware for all active CAN interfaces.
- Support for CAN interfaces with DeviceNet firmware.
- Fixed behaviour that in the device manager property sheet
"Status" the boot status is set to successfully started even if
the device is disabled in this hardware profile or was not found after a
hardware/software configuration change for this device.
- Many minor changes and optimizations.
- Driver distribution now contains dnet.dll (Rev. 1.1.0) for DeviceNet CAN
interface support.
- New version of calcan32.dll (Rev. 1.5.0)
- New version of ntcan.dll (Rev. 1.5.0) with new API call canGetBaudrate.
- New version of canui.dll (Rev 1.3.2) without any german error messages and
version information displayed in hexadecimal to work similar to other esd
gmbh tools from CAN SDK.
Revision 1.0.7
- Bugfixed version of calcan32.dll (Rev. 1.4.2)
- New version of canui.dll (Rev 1.3.1) with support for new CAN/PCC driver
options
Revision 1.0.6
- Support for RTR autoanswer in device driver for higher layer CAN protocols
- Fixed bug with Windows 9x monitor for CPU load is always 100 % if thread
is blocked in CAN I/O
- Improved error messages if driver initialization fails in property sheet
of device manager
- Fixed bug in canReadEvent() API call
- The DLL calcan32.dll that is needed for higher layer CAN protocols as
CANopen is now always installed with the device driver
Revision 1.3.0
- Fixed problem that driver properties were not initialized correctly.
Revision 1.2.0
- Initial release with CAN 2.0B and performance monitor support.
Revision 1.3.0
- Improved accuracy of Rx/Tx timeout.
Revision 1.1.1
- Different proceeding to map physical to virtual addresses so every virtual
address room is returned to system if device is disabled in hardware
manager.
- Device description in INF file now contains subvendor and subsystem id to
prevent driver being installed for another PCI interface using the same PCI
bridge device.
Revision 1.1.0
- Support for new board message format with check if firmware selftest
failed.
- Fixed problem that firmware returned too fast for all timeouts <=
100ms.
- New version of firmware update utility updc331 that supports
switching between active and passive CAN 2.0B support. See Updating
the local firmware for more details.
Revision 1.0.10
- Improved pointer validation during initialization.
Revision 1.0.9
Revision 1.0.8
- Fixed problem that the interface with DeviceNet firmware is not recognized
as the timeout period to wait for interface boot message was too short.
- Fixed bug in driver startup with newer firmware that could in rare cases
crash the system.
Revision 1.0.7
- Support for firmware optimizations.
Revision 1.0.6
- Support for interrupt sharing
Revision 1.3.0
- Improved accuracy of Rx/Tx timeout.
Revision 1.2.2
- Custom specific extensions for using cyclic auto transmit support in
firmware and special RTR handling in driver.
Revision 1.1.1
- Different proceeding to map physical to virtual addresses so every virtual
address room is returned to system if device is disabled in hardware
manager.
- New version of firmware update utility updc360 that supports
switching between active and passive CAN 2.0B support. See Updating
the local firmware for more details.
- Device description in INF file now contains subvendor and subsystem id to
prevent driver being installed for another PCI interface using the same PCI
bridge device.
Revision 1.1.0
- Support for new board message format with check if firmware selftest
failed
- Fixed problem that firmware returned too fast for all timeouts <= 100ms
- Size of virtaul memory that is mapped can be configured from 1 MB - 128 MB
Revision 1.0.10
- Improved pointer validation during initialization.
Revision 1.0.9
Revision 1.0.8
- Fixed problem that the interface with DeviceNet firmware is not recognized
as the timeout period to wait for interface boot message was too short.
- Fixed bug in driver startup with newer firmware that could in rare cases
crash the system.
Revision 1.0.7
- Fixed bug in interface initialization
Revision 1.0.6
Revision 1.3.0
- Improved accuracy of Rx/Tx timeout.
Revision 1.1.1
- No driver specific changes.
Revision 1.1.0
- Support for new board message format with check if firmware selftest
failed
- Fixed problem that firmware returned too fast for all timeouts <= 100ms
- Support of firmware optimizations.
- New version of firmware update utility updc331i that supports
switching between active and passive CAN 2.0B support. See Updating
the local firmware for more details.
Revision 1.0.10
- No device specific changes
Revision 1.0.9
Revision 1.0.8
- Fixed problem that the interface with DeviceNet firmware is not recognized
as the timeout period to wait for interface boot message was too short.
- Fixed bug in driver startup with newer firmware that could in rare cases
crash the system.
Revision 1.0.7
- No device specific changes
Revision 1.0.6
- No device specific changes
Revision 1.3.0
- Fixed problem that driver properties were not initialized correctly.
Revision 1.2.0
- Choice between active and passive CAN 2.0B support during installation.
Check installation details and hardware preconditions here.
- Performnace monitor support.
Revision 1.1.1
- No driver specific changes.
Revision 1.1.0
- Fixed problem that configured Tx timeout was used as transaction timeout
so driver returned with error for packet sizes which transmission time
exceeds configured timeout.
- Driver returning TX_ERROR instead of TX_TIMEOUT for a Tx timeout situation
fixed.
Revision 1.0.10
- No device specific changes
Revision 1.0.9
Revision 1.0.9
Revision 1.0.7
- Enabled missing AUTO_RTR feature of revision 1.0.6
Revision 1.0.6
- User defined bitrates other than the predefined values by esd are
supported by calling canSetBaudrate() with the MSB set for the second
parameter baudrate. In this case the bit 0 -7 of baudrate
are stored in the BT1 register of the CAN controller and bit 8-15 are stored
in the BT0 register of the CAN controller. E.g. a parameter baudrate
of 0x8000001C would set the BT0 register to 0x00 and the BT1 register to
0x1C.
Revision 1.3.0
- Fixed problem that driver properties were not initialized correctly.
Revision 1.2.0
- Fixed problem that Tx error timeout is not working in certain situations
for bitrates < 50 KBit/s.
Revision 1.1.1
- Fixed problem that in rare cases the last byte of a Tx CAN frame is
corrupted if Rx bus load is very high.
Revision 1.1.0
- Fixed problem that configured Tx timeout was used as transaction timeout
so driver returned with error for packet sizes which transmission time
exceeds configured timeout.
- Driver returning TX_ERROR instead of TX_TIMEOUT for a Tx timeout situation
fixed.
Revision 1.0.10
- No device specific changes
Revision 1.0.9
Revision 1.0.8
- User defined bitrates other than the predefined values by esd are
supported by calling canSetBaudrate() with the MSB set for the second
parameter baudrate. In this case the bit 0 -7 of baudrate
are stored in the BT1 register of the CAN controller and bit 8-15 are stored
in the BT0 register of the CAN controller. E.g. a parameter baudrate
of 0x8000001C would set the BT0 register to 0x00 and the BT1 register to
0x1C.
Revision 1.0.7
- The LPT mode (Bidirectional or ECP) can be forced by the user in the
device manager if automatic detection failed.
Revision 1.0.6
- Other than stated in the current version of the hardware and software
manual configuring the parallel port to ECP in the mainboard BIOS is
possible and supported by the driver. In this case the driver automatically
detect that the port is in ECP mode and enables the bidirectional emulation
mode. In many cases this can solve problems if the interface does not work
properly if the LPT port is configured to standard bidirectional by the
BIOS.
Revision 2.3.0
- Initial release of WDM driver for Windows 98/98SE and ME.
- All restrictions of the 1.0.x version removed.
Problem Description: During the OS loading of Windows 98 the
interrupt line that was assigned by the host BIOS to the PCI/331 or PCI/200 CAN
interface is zeroed out so the interrupt capability is disabled. In the device
manager page for resources no interrupt is assigned and the driver could not
start successfully. Only CAN-PCI/331 and CAN-PCI/200 interfaces with a PLX9052
PCI bridge in combination with Windows 98 are affected.
Solution: On your device driver disk you will find a file
that is called PLX9052.REG. Right click this file in your explorer and choose
the topic Merge in the context menu. Reboot the computer and the device
should work properly.
- All Windows versions prior to Windows 98 are not supported.
- The CAN 2.0B and Rx object mode indication in device manager
does not reflect the driver/device capabilities correctly.
- Longer periods of 100 percent CAN-busload above 666,6 KBit/s (8 byte
frames) or 500 KBit/s (4 byte frames) can lead to
lost frames if all received CAN frames have to be send to the USB host and
can not be ignored by the device because of a the current configuration of
the software and/or hardware acceptance filter. This is indicated correctly by the error event.
For active CAN interfaces (CAN-PCI/331, CAN-PCI/360, CAN-ISA/331 and
CAN-PC104/331) with a firmware version prior to 0.C.0F or a driver version prior
to 1.1.0 the number of logical CAN ports in the system may differ from the
physically present CAN ports if your device doesn't have the maximum number of
CAN ports that is available for this device (e.g. if you have a PCI/331 with
only one CAN port).
Since revision 1.2.0 of the CAN-ISA/200 driver you can choose between a
driver with or without active CAN 2.0B (extended frame format) support. The
driver with CAN 2.0B support is slightly slower even if you only receive or
transmit CAN messages in standard frame format as more accesses to the CAN
controller are necessary in this mode.
Early hardware versions of the CAN-ISA/200 and
CAN-PC104/200 interface using a CAN controller without CAN 2.0B support.
The CAN controller on these interfaces has the inscription PCA82C200.
The driver with CAN 2.0B support will *NOT* working for these
interfaces. If the CAN controller has the inscription SJA1000 you can
choose between one of these drivers. |
Driver versions prior to 1.1.x always mapped 128 MB which is the size that is
configured in the PCI bridge EEPROM. This may lead to problems in versions of
Windows 95 in combination with AGP graphic adapters and/or much of system
memory. To prevent this problem you can configure the size of the memory that
should be mapped by the driver in the 'Configuration Manager' since driver
version 1.1.x.
If there is a newer firmware for your CAN interface available or if there are
different firmwares available they are provided as executable console
application on the installation disk and will not be installed with the driver.
The user has to make sure that during the update procedure no other application
is using the CAN interface. After successfull update you can either restart
Windows or you can first disable the device in the device manager and then
re-enable it to perform the necessary reset of the CAN interface
It is possible with the update utility for the CAN-PCI/331, CAN-ISA/331 and
CAN-PCI/360 to switch between a firmware version with active CAN 2.0B support
and a firmware version with passive CAN 2.0B support that is optimized for
CAN 2.0A. The latter version is the default of each CAN interface. To switch
between the two versions you can call updc331, updc331i or updc360
with the command line option -tb to switch to active CAN 2.0B support or with
the command line option -ta to switch to passive CAN 2.0B support. The new
version will become active with the next reboot.
To switch from one firmware version to another you
have to perform a hardware reset (cold boot). |
You can check which version of the firmware is active on the
property page Setup that is related to the CAN interface in the device manager.
The utility to update the local firmware is not installed
together with the driver but can be found on your driver disk or CD-ROM.