ADVANCED VEHICLE TECHNOLOGIES, Inc.
AVT-841 Firmware Version
Descriptions
Updated: 7 February 2010
Version 0.1
Initial release for demonstration and testing.
18 July 2006.
Version 0.2
General release: 2 August 2006.
Taken from version 0.1.
Changed and added timer functions.
Added CAN mode Type1 and Type2 periodic message
functions and commands.
Updated CANx_to_init routines.
Added CANx force init routines.
Changed use of: ECT0, ECT1, and RTI.
Added 5x 63 command to change RTI rate.
Cleaned up all timer functions.
Changed the method used to exit CAN mode.
Version 0.3
General release: 9 September 2006.
Taken from version 0.2.
Added the 5x 4C the command to pause processing
commands.
Version 0.4
General release: 21 September 2006.
Taken from version 0.3.
Added periodic messages to VPW mode.
Added the following commands, functions, etc.
to VPW mode for periodic message support: 7x 0C, 7x 18, 7x 1A,
7x 1B, 71 1C.
Version 0.5
General release 27 October 2006.
Taken from version 0.4.
VPW mode: When in block transfer mode,
either receive or transmit, do not perform short to ground or
short to high tests.
CAN mode: Implemented commands and functions
for ISO 15765 protocol support in receive direction only (including
transmitting flow control frame) for both CAN channels. Updated
the user documentation.
(ISO 15765 support for transmit operations is
now under development.)
Version 0.6
General release 1 December 2006.
Taken from version 0.5.
VPW mode: No changes.
CAN mode: Completed implementation of for
support of ISO 15765. Transmit and receive capabilities
for both CAN0 (high speed 2-wire) and CAN4 (Single Wire) channels
are now fully functional.
Version 0.7
General release 18 March 2007
Taken from version 0.6.
Added K-line communications mode. Supports Keyword
Protocol 2000 mode (ISO 14230) and ISO 9141 communications.
No initialization modes or methods have been implemented,
yet.
Added a new reFLASH routine called FLASH3. All
previous versions only had FLASH2 available.
Documentation will be updated as soon as possible.
Version 0.8
General release 2 April 2007
Taken from version 0.7.
Changes to CAN mode only.
Changed the CAN source clock to be the 4 MHz resonator
(not the microcontroller PLL).
Corrected bit timing register (BTR0 and BTR1) load
values for all baud rates.
Note that for previous versions of firmware the
33.333 kbaud rate was incorrect (2% error).
Fixed the 7x 0B command - it did not work.
Corrected CAN mode change routines to wait for
the init-ack bit to change state before performing subsequent
actions (enable listen and enable normal routines).
Version 0.9
General release 22 April 2007
Taken from version 0.8.
Documentation for AVT-84x will be updated as soon
as possible.
CAN mode.
Increased number of periodic messages. Now
16 messages in each group. Only CAN mode.
Periodic messages are numbered: $01 to $10
in group 1; $11 to $20 in group 2.
KWP mode.
Added CARB mode 5-baud initialization capability.
Added FAST initialization capability.
Added the following commands.
51 2C: Query for both key bytes.
5x 46: Query / Set the network idle time prior to
an initialization attempt. This is a word size variable with 1
millisecond resolution.
5x 47: Query / Set the FAST initialization mode
low time.
5x 48: Query / Set the FAST initialization mode
high time (prior to starting transmission of start communications
message).
61 11: CARB 5-baud initialization.
6x 13: FAST initialization .
Version 1.0
General release 17 May 2007
Taken from version 0.9.
Added fully operational LIN mode.
LIN mode operates simultaneously in CAN mode. At
this time there is no separate LIN mode.
Entering CAN mode gives you two CAN channels and
one LIN channel all operating simultaneously.
When in CAN mode there are three time stamp commands.
52 08 00: No time stamps.
52 08 01: CAN channels are time stamped using their
own baud clock derived time stamp. The LIN channel is time
stamped using a 16-bit free running counter with 1 millisecond
resolution.
52 08 02: Both CAN channels and the LIN channel are
all time stamped using one 16-bit free running counter with 1 millisecond
resolution.
VPW mode: added the 1 millisecond time stamp option
using the 5x 08 command.
KWP mode: added the 1 millisecond time stamp option
using the 5x 08 command.
Added a new reFLASH mode known as FLASH3 (firmware
file suffix is ".pf3").
FLASH3 mode is faster than the previous FLASH2 (".pgc"
file suffix) mode/method.
Both modes or methods will be supported in future
firmware versions; for the time being.
The Technical Manual has been updated and a copy can
(possibly) be obtained by writing to the "Support@AVT-HQ.com" address.
Version 1.1
General release: 17 July 2007
VPW: Changes to block receive manager in an attempt
to prevent loss of message if a network message is received from
the network immediately following receipt of a block of data.
LIN: Added the 5x 28 command to disable/enable receive
message processing based on the ID byte. This feature permits
receiving LIN revision 2.0 messages where the number of data bytes
in the frame are not related to the message ID.
52 28 00: disable ID byte processing
52 28 01: enable ID byte processing [default]
Version 1.2
General release: 18 August 2007
CAN: Added the 7x 32 command to change the data
field length for a first frame. Default is 8 bytes (total).
KWP: Added the 5x 57 command to change the data
field bit length and parity status.
The User's Manual will be updated and released as soon
as possible.
Version 1.3
General release: 3 September 2007
Changes in CAN mode only.
Added a wait function while sending a large block of data
to the host. This prevents FIFO2 overflow and data loss if messages
are are received while or shortly after forwarding a large block
of data to the host. Same issue as was discovered in VPW mode and
corrected in version 1.1.
Version 1.4
General release: 3 October 2007
Changes in CAN mode only.
Added the 7x 33 command to query for and change the receive
buffer time out (in ISO 15765 processing mode).
71 33: query for receive buffer time out value.
72 33 xx: set the receive buffer time out; "xx" is in 167.8
msec time ticks.
Added the 7x 34 command to query for and change the default
inbound flow control separation time.
71 34: query for flow control separation time.
72 34 xx: set the flow control separation time; "xx" is
in 1 msec increments.
Note that this value is only used if the received flow
control frame has a separation time that is zero or otherwise invalid
(as defined by ISO 15765).
Version 1.5
General release: 2 November 2007
Changes in LIN mode only.
Changed the receive message processing routines.
Default now is that if an ID only byte is received, it
is not sent to the host.
Added the 5x 66 command to change operation when an ID
only byte is received.
51 66: query for status.
52 66 00: do not send ID only byte messages to host (default).
52 66 01: do send ID only byte messages to host. Format
is: 03 05 83 xx
Explanation
03: is the packet header byte
05: means from the LIN bus (channel 05)
83: is the receive status byte; indicates frame timeout,
message too short, and checksum error
xx: is the ID byte received.
In LIN operations, an ID only byte occurs if the Master
device sends an ID byte and no module responds to it.
Version 1.6
General release: 4 November 2007
Corrected a bug in CAN mode, type2 periodic message routines.
Version 1.7
General release: 16 November 2007
LIN mode: added a LIN "keep alive" message function.
Added these commands:
51 04: query for the "keep alive" message
5x 04 0y id rr ss tt ... : set the "keep alive" message where
x: count of bytes to follow.
y: 0 if slave, 1 if master
id: message ID
rr ss tt ... : message data field (optional)
51 05: delete the "keep alive" message
51 07: query for "keep alive" message interval count. Interval
is 167.8 msec increments.
52 07 xx: set the "keep alive" message interval count. Interval
is 1678. msec increments.
Version 1.8
General release: 4 February 2008
All modes: Corrected a bug in a restricted command.
All modes: Added a new baud rate of 230.4 kbaud.
All modes: Added the 5x 67 command. This command permits a
user to change the baud rate of the unit without requiring special access
to the unit.
The command is only available from within an operating mode
(VPW, CAN, or KWP). It is not available from the idle (startup) mode.
The new baud rate only takes affect after successful completion
of the command and after a unit reset (power-on reset or an "F1 A5"
reset).
The new command details:
51 67: query for baud rate setting.
52 67 01: set baud rate to 19.2 kbaud
52 67 02: set baud rate to 38.4 kbaud
52 67 03: set baud rate to 57.6 kbaud
52 67 04: set baud rate to 115.2 kbaud
52 67 05: set baud rate to 230.4 kbaud
All responses to this command are of the form: 62 67 xx
Special Note:
Errors were discovered in the AVT-842 USB driver files while
testing all the baud rates with firmware version 1.8. These were corrected
on 2 February 2008.
If you loaded AVT-842 USB drivers prior to that date, the
driver files should be updated. You can request the updated driver
files by e-mail.
If you received a driver CD from us after that date, it is
likely you received a CD with updated driver files.
The User's Manual will be updated as soon as possible.
Version 1.9
General release: ~10 May 2008
All modes: Corrected several errors in several restricted
commands.
No changes to any operational functions.
Version 2.0
General release: 23 June 2008
All modes: Corrected an error in EEPROM locations.
Be sure to read Volume 2 of the User's Manual if you are using
the EEPROM, changing default baud rate settings, or using the security
features.
Added the 5x 68 command (it is a secure command).
Version 2.1
General release: 16 July 2008
In VPW mode, removed the transmit ack "$F3 rr ss tt" after a block
transfer, if transmit acks are disabled.
Version 2.2
General release: 11 September 2008
Corrected several errors found in CAN mode.
CAN mode: removed the LIN "keep alive" message functions.
CAN mode: added ten periodic messages for LIN operations. All
are independent and capable of both Type1 and Type2 operations. Same
periodic message commands as used by all other operating modes.
CAN mode: added KWP as an secondary mode of operation along with
CAN0 and CAN4.
CAN mode: added the 5x 69 command to disable or select the secondary
operational mode.
51 69: query for secondary operational mode.
52 69 00: disable both KWP and LIN as secondary operations.
52 69 01: enable LIN for secondary operations [default].
52 69 02: enable KWP for secondary operations.
Summary: In CAN mode, both CAN0 and CAN4 operate simultaneously.
An additional (secondary) operation can be selected to operate simultaneously
with both CAN channels. LIN mode can be selected (and is the default).
LIN is designated as channel "05". KWP mode can be selected
for secondary operations instead of LIN mode. KWP mode is designated
as channel "06".
The User's Manual, volume I, has been updated and posted.
Version 2.3
General release: 8 December 2008
CAN mode: I5P mode (ISO 15765 support) changed default separation
time for outbound frames to 2 milliseconds when a flow control frame
of 00 is received. This value is controlled by the 7x 34 command.
LIN mode: Added the 5x 19 command to disable transmit checksum;
default is enabled. Added the 5x 6A command to enable disable long
frame support. User should use that command along with the 5x 28
command to receive long frames. Example: send 52 28 00 to
disable ID byte processing, send 52 6A 01 to enable long frame support.
The AVT-84x will now be able to send and receive LIN frames with
a maximum of 64 data bytes.
Note that the alternate packet header format: "11 xx" is now supported
and used for long received frames. The alternate header formats
"11 xx" and "12 xx yy" are also support for sending LIN frames.
I will update the User's Manual volume 1 as soon as I can.
Version 2.4
Taken from released version 2.3. Never formally released. All
changes went with the move to version 2.5 which followed immediately.
LIN mode: Added "5x 3C" auto buffer termination command to close
a receive buffer immediately upon end of transmitting a message.
LIN mode: Added the 5x 02 receive buffer time-out command and function.
Added a timer to watch the time since the last byte of the buffer was received.
If that time is exceeded, the receive buffer times-out and the message
in the receive buffer is immediately processed and forwarded to the host.
LIN mode: Added support for ABIC device/module. Commands to the AVT-84x
that are transmit messages to the ABIC must use channel "15" with LIN mode
active in CAN mode. Transmit commands to the AVT-84x that are transmit
messages to the ABIC must also indicate the number of expected response
bytes from the ABIC. Only the published ABIC commands are supported and
only with the AVT-84x unit as the 'Master'. Example ABIC transmit command:
0x 15 yy rr ss tt ... where "x" is the count of bytes to follow; "15"
indicates a transmit message to the ABIC; "yy" is the count of response bytes
expected from the ABIC; "rr ss tt ..." are the bytes of the actual message
to the ABIC. Do not include any checksum. The one message requiring a transmit
checksum will be computed and appended (unless that function is disabled).
LIN mode: Added the "53 6B xx yy" command to generate a low pulse
(break symbol) on the K-line (LIN bus) for "xx yy" microseconds.
LIN mode: Deleted the "5x 6A" command.
I will update the User's Manual volume 1 as soon as I can and as
soon as this version is released.
Version 2.5
Taken from version 2.4 (which was never released).
General release: 14 July 2009
All modes: Added the capability of installing an 8 MHz reference
resonator instead of the production 4 MHz reference resonator.
This change corresponds with a hardware modification available for
any AVT-84x unit.
Added the "51 6E" command to query for the status of the reference
resonator.
51 6E => 62 6E 04 if the reference resonator is 4 MHz
51 6E => 62 6E 08 if the reference resonator is 8 MHz
To support CAN bus baud rate of 1 Mbaud, using the 8 MHz reference
resonator is preferred to the 4 MHz resonator. There is less CAN bus
bit time jitter when using the 8 MHz resonator.
Version 2.6
Taken from version 2.5
General release: 30 August 2009
All modes: Decreased the size of the internal (software) incoming command
FIFO #1 to 32 bytes. This will not affect operations.
All modes: Increased the size of the internal (software) FIFO #2 to
128 bytes. This will most affect CAN mode of operations by allowing more
CAN frames to be buffered while waiting to be sent to the host computer.
This will reduce the chance of loss of data.
All modes: Added the "5x 6A" command to control the state of the red
"heartbeat" LED. Summary of the command is:
51 6A: query for blink value of the red 'heartbeat' LED.
52 6A 00: turn the LED off; does not blink.
52 6A xx: the state of the LED switches according to the count "xx"
- where each count is 167.8 msec. The default value is "01".
52 6A FF: turn the LED on; does not blink.
Version 2.7
Taken from version 2.6
General release: 31 August 2009
All modes: increased the size of FIFO #2 (outbound, to host computer)
to 432 bytes.
No other changes.
Version 2.9
I need to fill-in this section.
Version 3.0
Taken from released version 2.9
General release: 22 November 2009
Major changes in how FLASH memory is used, where firmware modules are
installed, etc.
The startup message and all modes will now report the same firmware version
number.
Changed the routine for communications to the host computer to prevent
possibility of a lost byte in event RTS/CTS is negated by the host.
Added the "Auto Block Transmit" function/feature to CAN mode.
The user can store up to 32 KBytes of data in non-volatile space on the
AVT-84x micro. The user can also store all the transmit parameters in non-volatile
space on the AVT-84x micro.
At any time, when in CAN mode, with one simple command, the user can
initiate a transfer of the stored data in consecutive CAN frames, according
to the stored parameters and data. Either CAN channel can be specified.
An application note, with detailed explanations, has been posted on the
"Download" page describing this function and all the commands.
Added the following Auto Block Transmit commands.
7x 36 Auto Block Transmit separation time
7x 37 Auto Block Transmit message ID
7x 38 Auto Block Transmit data
7x 39 Auto Block Transmit total byte count
7x 3A Auto Block Transmit control
Version 3.1
Taken from released
version 3.0
Limited release: 23 November 2009
For testing only.
Version 3.2
Taken from version 3.1
General release: 2 December 2009
Scheduled for general release, but never actually released.
Version 3.3
Taken from version
3.2
Limited release: 2 December 2009
For testing only.
Version 3.4
Taken from version 3.3
Limited release: 4 December 2009
Only for one customer.
Version 3.5
Taken from version 3.4
General release: 8 December 2009
Summary of changes since version 3.0
Changed the micrcontroller internal bus clock to 24.0000 MHz.
Changed necessary internal parameters for communications with host computer.
This provides much better baud rate accuracy and more reliable communications
with host computer.
Removed the 230.4 kbaud selection command (the 52 67 05 command). The
230.4 kbaud rate for communications with the host computer is not allowed.
Note that the change in internal bus clock frequency to 24.0000 MHz changes
the LIN bus baud rate formula.
Changed the routine that manages communications with the host computer.
This eliminates the chance of a lost byte during very heavy (and simultaneous)
communications between the 84x board and the host computer.
Added an ability to monitor for CAN channel activity without the host
having to actually receive the CAN frames.
Added the 7x 3B and 7x 3C commands for the "CAN Activity" function. Command
summary
71 3B: query for function status, both channels.
72 3B 0x: query for function status, CAN channel "x" = 0 or 4.
73 3B 0x 0y: set function status of channel "x". "y" = 0 = disabled,
"y" = 1 = enabled.
71 3C: query for CAN frame count, both channels.
72 3C 0x: query for CAN frame count, CAN channel "x" = 0 or 4.
Notes: when the function is enabled, no CAN messages from the enabled
channel will be sent to the host. When the CAN frame count is read, the
counter is immediately reset. The counter will not overflow or rollover.
It will count from $00 to $FF. If more frames show up, the counter will stay
at $FF.
Version 3.6
Taken from version 3.5
Limited release: 7 February 2010
Developed to support the pending revision "V" add-on board capability.
Revision "V" adds a small daughter board that converts CAN0 to single wire
CAN (SWC) - thus giving the AVT-84x two channels of single wire CAN.
Added the "7x 17" command to control the single wire CAN tranceiver for
CAN0.
The new "7x 17" command is exactly the same as the "7x 12" command for CAN4.
Otherwise, there were no other changes to the firmware.
Version 3.5 is usually shipped with "regular" AVT-84x units.
Version 3.6 will be shipped only with AVT-84x units with the revision "V"
modification installed.
Version x.x
xxx
Version x.x
xxx
Version x.x
xxx
Version x.x
xxx
Site Map