ADVANCED VEHICLE TECHNOLOGIES, Inc.
AVT-921 Firmware Version Descriptions
Updated: 18 January, 2001

Version 1.0
General release: 13 August, 1996

Version 1.1
General release: 19 October, 1996 VPW: No changes. PWM: Corrected a problem in the interrupt service routine for the HBCC device. A customer discovered this bug. Added code in IRQ routine to handle HBCC IR2 and IR3 cases where transmit fault resulted in TXCR transmit pending bit would not clear. This would result in the unit appear to "lock up." Now, if any of these failures occur the unit aborts the transmission and resets the HBCC_mode to idle (effectively throwing out the pending transmit message).

Version 1.2
General release: 29 November, 1996 VPW: In the Xmit section of the main loop, check the length of a message to send out on the bus. If it's too long, send an error message and trash the message. PWM: No changes.

Version 1.3
General release: 27 February, 1996 VPW: No changes. PWM: Changed the default values loaded into the HBCC function message lookup table. The new values are (starting at RAM address $10): $5A, $5B, $6A, and $6B. These are the values for OBD-II diagnostic messages and Ford diagnostic messages.

Version 1.4
General release: 2 June, 1997 VPW: Firmware modified to bring the AVT-921 up to date with the AVT-715 (version 1.9). Added the Match function, command, and response. PWM: Firmware modified to bring the AVT-921 up to date with the AVT-715 (version 1.9). Major changes to the HBCC interrupt service routine and receive buffer routines. Added buffers for acknowlegements and status reports. Added the Match function. Added the 'Look-alike' function.

Version 1.5
Gereral release: 10 July, 1997 VPW: No changes. PWM: Changes made to keep this version in compliance with AVT-715 firmware version 2.0 and 2.1. Discovered errors in both the interrupt routine for the HBCC and in the buffer forward routines. The acknowledgment routines did not allow for a zero count (result was counter underflow and memory dump). Installed a watch dog timeout routine to handle a watchdog event. The watchdog routine permits saving the 'look-alike' mode so that if a watchdog event occurred the recovery was more graceful. Made changes in the main loop, especially the transmit routine, to inhibit interrupts whenever talking with the HBCC device. I theorize that during certain situations, while loading a message for transmission, a receive interrupt would/could occur, thus the load routine was pre-empted by a receive routine. This would completely screw up the HBCC communications. The program would get caught in a loop in the ISR and a watchdog timeout would occur. Added code to clear the watch dog bit after a watch dog reset. Made a change in the HBCC interrupt service routine so that if a network fault should be detected it does NOT terminate message transmission. A network fault condition is not considered catastrophic. (Network fault indicates a possible short to high or short to ground condition).

Version 1.6
General release: 24 November, 1997 VPW: Added data block transfer function. This includes a new command and header identifier. Block transfer function includes both transmit and receive. The function is transparent to the data block being transferred. Also made changes to the DLC interrupt service routine so that the first read of the DLC is non-destructive. Changed the actions taken upon receipt of some RFS field values in the DLC interrupt routine. PWM: No changes to this code.

Version 1.7
General release: 24 December, 1997 VPW: Made changes to the block transfer function. Added a "no-echo" feature in which the transmitted block is not echo'ed back to the host. Added the commands: "52 21 00 and 52 21 01" to turn off and on (respectively) the no-echo feature. Made changes to the block transmit routine to make it more consistent with the method used in the AVT-716. Both the transmit and receive functions of block transfer are now interrupt driven. Added an error detection ability during block transmit. If, during block transmit, a completion is detected early (indicating too long of a delay in obtaining bytes from the host), then FIFO #1 (from the host) is flushed of expected bytes (I only wait for 5 seconds for these bytes), an error message ($21 $32) is sent to the host, and the block transfer mode is exited ($62 $20 $00). PWM: No changes to this code.

Version 1.8
General release: 8 May, 1998 VPW: Changed the SPI speed to 1.25 MHz (previously it ran at 2.5 MHz). This was done to permit the use of alternate opto-isolators that exhibited a slightly slower rise time. There were no other changes. PWM: Changed the SPI speed to 1.25 MHz (previously it ran at 2.5 MHz). This was done to permit the use of alternate opto-isolators that exhibited a slightly slower rise time. There were no other changes.

Version 1.9
General release: 3 November, 1998 VPW: Added the Echo/No-Echo command (same as in the AVT-716 unit).
51 06: Status query.
52 06 00: No echo of the transmitted message.
52 06 01: Echo the transmitted message to the host. PWM: No changes to this code.



Site Map