CAN Specification BMOD0063

MAXWELL TECHNOLOGIES
CAN COMMUNICATION
SPECIFICATION
Applicable to Maxwell Technologies®
BOOSTCAP® Energy Storage Modules
for Heavy Duty Transportation Applications:
BMOD0063 P125
© 2008 Maxwell Technologies, Inc.
FW 1.34
Document no.: 1014339
TABLE OF CONTENTS
TABLE OF CONTENTS ..................................................................................................................................... 2
1.
DOCUMENT HISTORY.............................................................................................................................. 4
2.
INTRODUCTION ........................................................................................................................................ 6
3.
CAN PHYSICAL LAYER............................................................................................................................ 6
3.1.
3.2.
3.3.
3.4.
4.
BAUD RATE ........................................................................................................................................... 6
GENERAL CIRCUIT .................................................................................................................................. 7
CONNECTOR.......................................................................................................................................... 7
TERMINATION RESISTORS ...................................................................................................................... 8
CAN IDENTIFIER ....................................................................................................................................... 9
4.1.
4.2.
4.3.
5.
NODE ID .............................................................................................................................................. 9
MODULE ID ........................................................................................................................................ 10
SERVICE ID ........................................................................................................................................ 10
CYCLIC MESSAGES ................................................................................................................................ 11
5.1.
CYCLIC MESSAGE 1.............................................................................................................................. 11
5.1.1. Status 1 ........................................................................................................................................ 11
5.1.2. Status 2 ........................................................................................................................................ 12
5.1.3. Status 3 ........................................................................................................................................ 13
5.1.4. Temperature ................................................................................................................................ 14
Full Voltage ................................................................................................................................................. 14
5.1.5. Half Voltage ................................................................................................................................. 14
5.2.
5.2.1.
5.2.2.
5.2.3.
5.2.4.
5.3.
5.3.1.
5.3.2.
5.3.3.
5.3.4.
6.
CYCLIC MESSAGE 2.............................................................................................................................. 14
5/6th Voltage ................................................................................................................................ 15
2/3rd Voltage ................................................................................................................................ 15
1/3rd Voltage ................................................................................................................................ 15
1/6th Voltage ................................................................................................................................ 15
CYCLIC MESSAGE 3.............................................................................................................................. 15
Peak Delta Voltage ...................................................................................................................... 16
Average Delta Voltage ................................................................................................................ 16
Max Delta Voltage ....................................................................................................................... 16
Min Delta Voltage ........................................................................................................................ 16
COMMAND MESSAGES .......................................................................................................................... 17
6.1.
6.2.
6.3.
6.4.
6.5.
6.6.
6.7.
6.8.
6.9.
6.10.
6.11.
6.12.
6.13.
6.14.
LOADDEFAULT – LOAD FACTORY SETTING .............................................................................................. 17
GETVERSION – READ VERSION NUMBER ................................................................................................. 18
GETBOARDSERIALNUMBER - READ THE SERIAL NUMBER OF THE BOARD .................................................... 18
GETMODULESERIALNUMBER - READ MODULE SERIAL NUMBER ................................................................ 18
SETMASTERNODEID – SET MASTERS NODE ID ..................................................................................... 19
SETUCMNODEID – SET UCM NODE ID ............................................................................................... 19
SETMODULEID – SET MODULE ID........................................................................................................ 20
SETBAUDRATE – SET BAUD RATE ......................................................................................................... 20
SETINTERVAL – SET CYCLIC TRANSMISSION INTERVAL............................................................................ 21
GETINTERVAL – READ CYCLIC TRANSMISSION INTERVAL ......................................................................... 21
SETPEAKDELTALIMIT – SETS THE PEAK DELTA VOLTAGE LIMIT. .............................................................. 22
CALIBRATECHANNEL – CALIBRATES A VOLTAGE CHANNEL ........................................................................ 22
ERRORMESSAGE – ERROR MESSAGE ...................................................................................................... 23
RESTART ............................................................................................................................................ 23
Maxwell Technologies CAN Communication Specification – Document no. 1014339
2
7.
BOOTLOADER MESSAGES.................................................................................................................... 25
7.1.
7.2.
7.3.
7.4.
7.5.
7.6.
7.7.
7.8.
7.9.
7.10.
7.11.
8.
8.1.
8.2.
8.3.
8.4.
8.5.
8.6.
8.7.
ENTERBOOTMODE – SWITCH FROM APPLICATION TO BOOTLOADER.......................................................... 25
ENTERAPPLICATIONMODE – SWITCH FROM BOOTLOADER TO APPLICATION ............................................... 25
ERASE – ERASE DATA IN MICRO CONTROLLER FLASH MEMORY ................................................................. 26
FILL – FILL DATA IN MICRO CONTROLLER TEMPORARY BUFFER ................................................................. 26
PROGRAM – PROGRAM DATA IN MICRO CONTROLLER FLASH MEMORY ....................................................... 26
READ – READS DATA FROM MICRO CONTROLLER FLASH MEMORY ............................................................. 27
READEEPROM – READS DATA FROM MICRO CONTROLLER EEPROM MEMORY ......................................... 27
WRITEEEPROM – WRITE DATA IN MICRO CONTROLLER EEPROM MEMORY ............................................ 27
CALCULATEFLASHCRC – CALCULATES THE CRC OF THE FLASH MEMORY ................................................... 27
PROGRAMFLASHCRC – PROGRAMS THE CRC TO THE FLASH MEMORY ....................................................... 28
BOOTHEARTBEAT – B OOTLOADER HEART BEAT MESSAGE ....................................................................... 28
APPENDIX ................................................................................................................................................. 29
A LIMIT VALUES ................................................................................................................................. 29
B FACTORY DEFAULT SETTINGS ........................................................................................................... 30
C STATE DIAGRAM APPLICATION – B OOTLOADER ................................................................................... 30
D BOARD SERIAL NUMBER FORMAT ....................................................................................................... 31
E MODULE SERIAL NUMBER FORMAT ..................................................................................................... 31
F VOLTAGE TAPS IN CAPACITOR STRING ............................................................................................... 32
G ABBREVIATIONS ............................................................................................................................... 33
Maxwell Technologies CAN Communication Specification – Document no. 1014339
3
1. Document History
Revision
Author
Date
Change
Reason
1.0
USt
2007-07-23
Original
1.1
USt
2007-07-26
Internal note off
Liberation for customer
MaxTech
2008-06-24
Match to Code
Cost vs. Functionality
1.2
MSE
2008-10-15
1.21
MSE
2008-11-11
Changes in the
communication
protocol
Minor changes
Requirement change after
telephone conference with
customer.
No functional changes.
1.22
MSE
2008-11-26
1.23
MSE
2008-12-12
1.24
MSE
2009-01-19
1.31
MSE
2009-02-05
1.33
MSE
2009-04-27
1.34
MSE
2009-09-22
New Start-up
message has been
introduced in the
protocol, minor
changes to
SetModuleId
command and
changed value
and function of
the Command
Time Limit.
Needed new message to be
able to recover a unit with
an unknown Maste Node ID.
The SetModuleID will now
be activated immediately
and will consequently
respond with the new
Module ID. The Command
Time Limit is now set to
2.4s instead of 30s. No
Cyclic Messages will be sent
during this time.
Change of value
The Peak Delta Voltage
of the Peak Delta Limit changed from 2.7VDC
Voltage Limit.
to 3.0VDC.
Added new
Added provision for the
command to
customer to customize the
change Peak Delta use of the Peak Delta Flag.
Voltage Limit.
Added support command to
Added new
improve production
command for
calibration.
production
calibration.
Revision change
Software version changes
Clarification
regarding
temperature
measurement.
Max string voltage
and min string
voltage added to
Maxwell Technologies CAN Communication Specification – Document no. 1014339
It was not clearly specified
what happens at the lower
and upper limits of the
temperature measurements.
The max string voltage and
min string voltage values
where added to support
4
Cyclic Message 3.
Initial delay for
approximately 5s
in warnings and
alarms for
temperature.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
procedures for triggering of
system level module
conditioning.
The delay of temp alarms
and warnings was added
due to that false alarm was
set during the boot-up
sequence due to the long
time constant in the sensor
circuit.
5
2. Introduction
This document represents the CAN communication profile for Maxwell Technologies Ultra
Capacitor Monitoring unit for 125 VDC Ultra Capacitor Modules.
3. CAN Physical Layer
3.1. Baud rate
The UCM node supports 125kbit/s, 250kbit/s and 500kbit/s baud rate. The baud rate can be
change with a command message specified in chapter 3. The default baud rate is 250kbit/s.
Bit Timing for CAN controller
The following parameters are specified for operating the CAN controller with the 3 different
transfer rates:
Description
Oscillator Frequency
125 kbit/s
16 MHz
250 kbit/s
16 MHz
500 kbit/s
16 MHz
Baud rate Prescaler
7
3
1
Time Quantum (tq)
500 ns
250 ns
125 ns
Synchronization Segment
1 tq
1 tq
1 tq
Propagation Time Segment
7 tq
7 tq
7 tq
Phase Segment 1
4 tq
4 tq
4 tq
Phase Segment 2
4 tq
4 tq
4 tq
Σ16 tq = 8 µs
Σ16 tq = 4 µs
Σ16 tq = 2 µs
1 tq
1 tq
1 tq
Bit Time
Re-Synch Jump Width
Maxwell Technologies CAN Communication Specification – Document no. 1014339
6
3.2.
General circuit
3.3. Connector
The HTM125 Ultra Capacitor Module is equipped with two 8 pin Deutsch connectors each on a
short cable. One of the connectors is a Socket Plug and one is a Pin Receptacle for easy daisy
chaining.
Connector Type
Socket Plug
Pin Receptacle
DTM06-08SA
WM-8S
0460-202-20141
DTM04-08PA
WM-8D
0462-201-20141
Drawing Overview
Connector PN
Wedgelock PN
Socket / Pin PN
Connector Pin Out
Description
CAN_H
CAN_L
SHIELD
NC
NC
NC
24 RTN
24 VDC
Pin
1
2
3
4
5
6
7
8
Maxwell Technologies CAN Communication Specification – Document no. 1014339
7
3.4. Termination Resistors
The UCM node is not equipped with any internal terminating resistor (Type I ECU). A
terminating resistor should be placed at each end of the network main line. Below is an
example of network topology with a Type II Master and 6 UCM’s.
UCM 1
UCM 2
UCM 3
UCM 4
UCM 5
UCM 6
Master
(Type II ECU)
Deutsch Connectors
Maxwell Technologies CAN Communication Specification – Document no. 1014339
Terminating Resistor
8
4. CAN Identifier
The UCM supports both the 11-bit standard CAN identifier and the 29-bit extended CAN
identifier. This can be modified by changing the CAN format with a configuration message (see
chapter 4). The unit can only support one format at a time. The CAN identifier is composed of
three parts: Node ID, Module ID and Service ID according to the following scheme.
11-bit Identifier
CAN_ID = ( Node_ID << 7 ) || ( Module_ID << 3 ) || ( Service_ID )
MSB
10
LSB
9
8
7
Node_ID
6
5
4
3
Module_ID
2
1
0
Service_ID
29-bit Identifier
CAN_ID = ( Node_ID << 7 ) || ( Module_ID << 3 ) || ( Service_ID )
MSB
28 27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
Node_ID
8
7
6
5
4
Module_ID
3
2
1
LSB
0
Service_ID
4.1. Node ID
There are two Node ID’s stored in non-volatile memory, Master Node ID and UCM Node ID. The
Master Node ID is used as a source address in the CAN identifier of the messages sent from the
Master to the UCM. The UCM Node ID is used as a source address in the CAN identifier of the
messages sent from the UCM to the Master. The value of the Node ID’s can be changed using
configuration messages.
Range:
0x00 – 0x3FFFFF
Default Master Node ID:
0x000009
Default UCM Node ID:
0x00000A
Maxwell Technologies CAN Communication Specification – Document no. 1014339
9
The Node ID is always stored as a 22-bit value in the non-volatile memory. In the case of using
the 11-bit CAN identifier format only the 4 least significant bits will be used and the 18 most
significant bits will be disregarded.
4.2.
Module ID
The Module ID is a unique identifier for each UCM within the network.
Module ID 0 is used by the Master to send a Broadcast message to all nodes. All UCM nodes will
acknowledge commands sent with Module Id 0. Note that the Master Node Id still has to match
the Master Node Id that the UCM is configured for.
If the Module ID of the UCM is set to 0 the UCM will not respond to any commands but the
commands will be executed by the UCM. The only exception to this rule is if the command is a
GetSerialNumber command. In that case the UCM responds even though the Module Id is 0.
Range:
0x0 – 0xF
Default Module ID:
0x0
4.3. Service ID
The Service ID identifies the type of messages send or received by the UCM. The following
Service ID’s are supported by the UCM:
Description
Cyclic Message #1
Service ID
1
Tx/Rx
Tx
Cyclic Message #2
2
Tx
Cyclic Message #3
3
Tx
Start-up Config Message
4
Tx/Rx
Bootloader Message
6
Tx/Rx
Configuration Message
7
Tx/Rx
Further explanations of the content of these messages are described in individual separate
chapters.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
10
5. Cyclic Messages
Cyclic CAN messages are sent by the UCM if the Module ID and the Cyclic Transmission Interval
Count are both not zero. All Cyclic Messages can be turned on and of independently by means
of a bit mask. All activated Cyclic Messages will be sent out evenly distributed over the Cyclic
Transmission Interval, i.e. if the Transmission Interval Time is set to 300 ms and all three
messages are activated the UCM will send a cyclic message every 100 ms. Both the Cyclic
Transmission Interval Count and the Cyclic Message Activation bitmask are configured using the
SetInterval command specified below. The Cyclic Messages will start transmitting when the
Command Time Limit following a restart event has run out. The value of the Command Time
Limit can be found in Appendix A.
The cyclic messages contain both measured values and status bytes. The Voltage measurement
taps are connected to measure between every 8th capacitor in the module at the negative
terminal. The Full Voltage value is measured between the positive and the negative terminal
and the Half Voltage value is measured over the 24 first capacitors. The status bits are derived
from a diagnostic procedure which runs every 50ms.
5.1.
Cyclic Message 1
Description
Service ID
Value
1
Data Length Code (DLC)
8
Cyclic Interval
* N is the Cyclic Interval Count.
Sender
UCM
DB 0
Status
1
DB 1
Status
2
N x 50 ms*
DB 2
Status
3
DB 3
Temp
1
DB 4
DB 5
Full Voltage
DB 6
DB 7
Half Voltage
5.1.1. Status 1
Bit 0 Temperature below Low Limit
This bit is set to 1 if the Temperature is currently below the Low Limit. The value of the low
limit is listed in Appendix A (Low Temperature). This indicates a warning that the Temperature
is approaching the minimum level which can lead to a serious condition for the Ultra Capacitor
Module. This alarm will be disabled for 5s at start-up of the module.
Bit 1 Temperature above High Limit
This bit is set to 1 if the Temperature is currently over the High Limit. The value of the high
limit is listed in Appendix A (High Temperature).This indicates a warning that the Temperature
Maxwell Technologies CAN Communication Specification – Document no. 1014339
11
is approaching the maximum level which can lead to a serious condition for the Ultra Capacitor
Module. This alarm will be disabled for 5s at start-up of the module.
Bit 2 Full Voltage below Low Limit
This bit is set to 1 if the Full Voltage is currently below the Low Limit. The value of the low limit
is listed in Appendix A (Low Full Voltage).
Bit 3 Full Voltage above High Limit
This bit is set to 1 if the Full Voltage is currently over the High Limit. The value of the high limit
is listed in Appendix A (High Full Voltage). This indicates a warning that the Voltage is
approaching the maximum level which can lead to an over voltage condition for the Ultra
Capacitor Cells.
Bit 4 Peak Delta Has Been Above Maximum Limit
This bit is set to 1 if the Peak Delta has been over the maximum limit. A definition of the Peak
Delta Above Maximum Limit bit can be read below under Status 2, bit 4.The value of the limit is
listed in Appendix A (Maximum Peak Delta Voltage). This bit will stay set until it is reset by the
restart command (see Command messages).
Bit 5 Temperature Has Been Above Maximum Limit
This bit is set to 1 if the Temperature has been over the maximum limit. The value of the
maximum limit is listed in Appendix A (Maximum Temperature). This bit will stay set until it is
reset by the restart command (see Command messages). This alarm will be disabled for 5s at
start-up of the module.
Bit 6 Full Voltage Has Been Above Maximum Limit
This bit is set to 1 if the Full Voltage has been over the maximum limit. The value of the
maximum limit is listed in Appendix A (Maximum Full Voltage). This bit will stay set until it is
reset by the restart command (see Command messages).
Bit 7 Request Service Has Occurred
This bit is set to 1 if there has been a request for service on the module. A definition of the
request Service bit can be read below under Status 2, Bit 7. This bit will stay set until it is reset
by the restart command (see Command messages).
5.1.2. Status 2
Bit 0 Temperature below Minimum Limit
This bit is set to 1 if the Temperature is currently below the minimum limit. The value of the
minimum limit is listed in Appendix A (Minimum Temperature). It is not recommended to use
the Ultra Capacitor Module at this temperature but rather allow the Ultra Cap Module to warm
up. This alarm will be disabled for 5s at start-up of the module.
Bit 1 Half Voltage above Maximum Limit
Maxwell Technologies CAN Communication Specification – Document no. 1014339
12
This bit is set to 1 if the Half Voltage is currently above the maximum limit. The value of the
maximum limit is listed in Appendix A (Maximum Half Voltage). Operating the Ultra Capacitor
Module at this voltage may damage the capacitors and lead to a shorter life of the product. It is
not recommended to use the Ultra Capacitor Module if this is a lasting or recurring condition.
Bit 2 Half Voltage below Low Limit
This bit is set to 1 if the Half Voltage is currently below the Low Limit. The value of the low limit
is listed in Appendix A (Low Half Voltage).
Bit 3 Half Voltage above High Limit
This bit is set to 1 if the Half Voltage is currently over the High Limit. The value of the high limit
is listed in Appendix A (High Half Voltage). This indicates a warning that the Voltage is
approaching the maximum level which can lead to a serious condition for the Ultra Capacitor
Module.
Bit 4 Peak Delta above Maximum Limit
This bit is set to 1 if the Peak Delta is above the Maximum limit. The definition of Peak Delta
Voltage is described in chapter 5.3.1. A high value of the Peak Delta indicates an imbalance
internally in the Ultra Capacitor Module. The value of the maximum limit is listed in Appendix A
(Maximum Peak Delta Voltage). This can be corrected by performing conditioning. It is
recommended to do balancing at a higher frequency or not use the Ultra Capacitor Module if
this is a recurring condition.
Bit 5 Temperature above Maximum Limit
This bit is set to 1 if the Temperature is currently above the maximum limit. The value of the
maximum limit is listed in Appendix A (Maximum Temperature). Operating the Ultra Capacitor
Module at this temperature may damage the capacitors and lead to a shorter life of the product.
It is not recommended to use the Ultra Capacitor Module if this is a lasting or recurring
condition. This alarm will be disabled for 5s at start-up of the module.
Bit 6 Full Voltage above Maximum Limit
This bit is set to 1 if the Full Voltage is currently above the maximum limit. The value of the
maximum limit is listed in Appendix A (Maximum Full Voltage). Operating the Ultra Capacitor
Module at this voltage may damage the capacitors and lead to a shorter life of the product. It is
not recommended to use the Ultra Capacitor Module if this is a lasting or recurring condition.
Bit 7 Request Service
A request for service of the Ultra Capacitor module is currently being made. This request is
triggered if the Full Voltage above Maximum, Temperature above Maximum, Half Voltage above
Maximum or Temperature below Minimum.
5.1.3. Status 3
Bit 0-7
Not Used
These bits are reserved for future definition.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
13
5.1.4. Temperature
The temperature sensor is placed inside the Ultra Capacitor Module. If the temperature is
outside the lower range the unit will report 0 (-40˚C). If the temperature is outside the higher
range or no sensor is connected the unit will report 255.
Resolution
1˚C/bit
Range
0 to 206 [-40
to 166˚C]
Units
Offset
Data Type
Degree Celsius
-40
uInt08
Full Voltage
The Full Voltage is measured over all 48 capacitor cells in the module.
Resolution
0.05v/bit
Range
0 to 2800
[0 to 140 VDC]
Units
Offset
Data Type
Volts
0
uInt16
5.1.5. Half Voltage
The Half Voltage is measured from the negative terminal over the 24 first capacitor cells.
Resolution
0.05v/bit
5.2.
Range
0 to 1400
[0 to 70 VDC]
Units
Offset
Data Type
Volts
0
uInt16
Cyclic Message 2
Description
Service ID
Value
2
Data Length Code (DLC)
8
Cyclic Interval
* N is the Cyclic Interval Count.
Sender
UCM
DB 0
DB 1
th
5/6 Voltage
N x 50 ms*
DB 2
DB 3
rd
2/3 Voltage
DB 4
DB 5
rd
1/3 Voltage
Maxwell Technologies CAN Communication Specification – Document no. 1014339
DB 6
DB 7
th
1/6 Voltage
14
5.2.1. 5/6th Voltage
The 5/6th Voltage are measured from the negative terminal over the 40 first capacitor cells.
Resolution
Range
Units
Offset
Data Type
0 to 2340
0.05v/bit
Volts
0
uInt16
[0 to 117 VDC]
5.2.2. 2/3rd Voltage
The 5/6th Voltage are measured from the negative terminal over the 32 first capacitor cells.
Resolution
Range
Units
Offset
Data Type
0 to 1880
0.05v/bit
Volts
0
uInt16
[0 to 94 VDC]
5.2.3. 1/3rd Voltage
The 5/6th Voltage are measured from the negative terminal over the 16 first capacitor cells.
Resolution
Range
Units
Offset
Data Type
0 to 940
0.05v/bit
Volts
0
uInt16
[0 to 47 VDC]
5.2.4. 1/6th Voltage
The 1/6th Voltage are measured from the negative terminal over the 8 first capacitor cells.
Resolution
Range
Units
Offset
Data Type
0 to 480
0.05v/bit
Volts
0
uInt16
[0 to 24 VDC]
5.3.
Cyclic Message 3
Description
Service ID
Value
3
Data Length Code (DLC)
8
Cyclic Interval
* N is the Cyclic Interval Count.
Sender
UCM
DB 0
DB 1
Peak Delta
Voltage
N x 50 ms*
DB 2
DB 3
Average Delta
Voltage
DB 4
DB 5
Max Delta
Voltage
Maxwell Technologies CAN Communication Specification – Document no. 1014339
DB 6
DB 7
Min Delta
Voltage
15
5.3.1. Peak Delta Voltage
The definition of Peak Delta is difference between the highest voltage across adjacent voltage
taps (see Appendix F) and the lowest voltage across adjacent voltage taps.
5.3.2. Average Delta Voltage
When calculating the Average Delta Voltage the highest and lowest adjacent tap voltages are
ignored. The average is then calculated from the remaining 4 voltages.
5.3.3. Max Delta Voltage
The definition of Max Delta Voltage is the highest value of voltages across adjacent voltage taps
(see Appendix F).
5.3.4. Min Delta Voltage
The definition of Min Delta Voltage is the lowest value of voltages across adjacent voltage taps
(see Appendix F).
Maxwell Technologies CAN Communication Specification – Document no. 1014339
16
6. Command Messages
The CAN messages are processed in the UCM only on receipt of a command from its master,
after which it acknowledges with a corresponding response. All command messages and
command responses are sent with the same Service ID. The command number is transferred in
the first data byte (byte 0). The content of data bytes 1-7 are organized specific to the
command. The master sends the command to all UCMs (module ID 0) or at one selected UCM
(module ID 1-15).
The UCM listens for CAN ID’s of the following types:
1. CAN ID from Master with Node ID equal to the one the UCM has been configured for
and Module ID equal to the one the UCM has been configured for and Service Id equal
to Configuration Messages.
2. CAN ID from Master with Node ID equal to the one the UCM has been configured for
and Module ID equal to 0 and Service Id equal to Configuration Messages.
3. CAN ID equals to 0x7FC when using Standard CAN format (11-bit identifier) or
0x1FFFFFFC when using extended CAN format (29-bit identifier). This CAN ID will only
execute the LoadDefault command. This is used to get started when the CAN
configuration settings is unknown. Note that this will always load the default settings on
all UCM’s that is connected to the network.
The UCM answers only if its configured Module ID is different from 0 unless otherwise stated.
(GetSerialNumber shall respond regardless of Module ID).
Unused data bytes are shown as blank for easier reading but should contain 0xFF when
composing the CAN message (J-1939’s value representing ‘not available’, see J1939-71:Table1).
6.1.
LoadDefault – Load factory setting
Description
LoadDefault
Sender
Master
UCM
DB0
0xA5
0xA5
DB1
0x1E
LsSer#
DB2
0xEE
Ser#2
DB3
0xE1
Ser#3
DB4
0xEE
Ser#4
DB5
0x1E
Ser#5
DB6
DB7
0x00
ModuleId
MsSer# ModuleId
Parameters can be reset to the factory default values. The factory setting are stored in the
program memory and activated after a restart event. The confirmation is sent with the current
configured parameters.
This command is ignored if not within the valid Command Time Limit following a restart event.
The value of the Command Time Limit can be found in Appendix A.
The following parameters are set to factory default with this command: CAN Format, Master
Node ID, UCM Node ID, Module ID, CAN Baud Rate, Cyclic Message Count and Cyclic Message
Bit Mask. The default values of these values can be found in Appendix B.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
17
This is a valid broadcast message.
6.2.
GetVersion – Read version number
Description
GetVersion
Master
DB
0
0x01
UCM
0x01
Sender
DB1
DB2
LsHwVer HwVer2
DB3
DB4
DB
5
DB6
DB7
ModuleId
MsHwVe LsSwVer SwVer2 MsSwVer
ModuleId
r
(r)
(r)
(V)
Hardware and software version numbers can be read. The lowest bit of the version numbers
will be sent first. The Hardware version is sent as 3 bytes with ASCII interpretation. The
Software version is sent as 3 bytes with hexadecimal interpretation on the format V.rr where V
is a major code version and rr are relatively minor revisions. This is a valid broadcast message.
6.3.
GetBoardSerialNumber - Read the serial number of the board
Description
GetBoard
SerialNum
Sender
Master
UCM
DB0
0x02
0x02
DB1
DB2
DB3
DB4
DB5
DB6
LsSer#
Ser#2
Ser#3
Ser#4
Ser#5
MsSer#
DB7
ModuleId
ModuleId
The Board Serial Number is 6 bytes of the format described in Appendix D. This number is
entered in to the EEPROM when the board goes through the board testing station. This serial
number is used as a safe guard key when changing the ModuleId with SetModuleID command.
UCM responds even if its Module ID is zero. This is a valid broadcast command.
6.4.
GetModuleSerialNumber - Read module serial number
Description
GetModule
SerialNum1
Sender
Master
UCM
DB0
0xB1
0xB1
DB1
Description
GetModule
SerialNum2
Sender
Master
UCM
Description
GetModule
SerialNum3
DB2
DB3
DB4
DB5
DB6
LsSer#0 Ser#1
Ser#2
Ser#3
Ser#4
Ser#5
DB1
0xB2
0xB2
DB2
DB4
DB5
DB6
DB7
LsSer#6 Ser#7
Ser#8
Ser#9
Ser#10
Ser#11
Sender
Master
DB1
0xB3
DB2
DB4
DB5
DB6
DB7
UCM
0xB3
LsSer#12 Ser#13
Ser#14
Ser#15
Ms
Ser#16
DB3
DB3
DB7
ModuleId
ModuleId
DB8
ModuleId
ModuleId
DB8
ModuleId
ModuleId
The Module Serial Number is 17 bytes of the format described in Appendix E. This number is
entered in to the EEPROM when the module goes through the module testing station. The
Module Serial Number can also be read on a label on the UCM. Note that is the UCM is replaced
Maxwell Technologies CAN Communication Specification – Document no. 1014339
18
the Module Serial Number has to be updated to match the label on the module. The spare part
UCM’s is programmed with all bytes equal to zero. This is a valid broadcast command.
6.5.
SetMasterNodeID – Set Masters Node ID
Description
SetMasterNode
Sender
Master
UCM
Parameter
DB0
0x0A
0x0A
DB1
Format
LsSer#
DB2
DB3
DB4
DB5
LsNodeId NodeId2 MsNodeId
Ser#2
Ser#3
Ser#4
Ser#5
Value
Factory Default
0x00
0
0x01 – 0xFF
0x00 – 0x0F
0x09
0x00000 – 0x3FFFFF
Format
Node ID
DB6
MsSer#
DB7
ModuleId
ModuleId
Description
11-bit CAN identifier
29-bit CAN identifier
11-bit CAN identifier
29-bit CAN identifier
With this command, a new Master Node ID can be assigned to the UCM. The UCM will only
recognize and response to messages from the Master with this Node ID. The new Node ID is
stored in the UCM non-volatile memory and is activated after a restart event.
The Format parameter is used for switching between the standard CAN format and the
extended CAN format. Note that the Format can be changed with both the SetMasterNodeID
command and the SetUCMNodeId. The last command sent will override previous commands.
The new Format is stored in non-volatile memory and is activated after a restart event.
The command is a valid broadcast message.
6.6.
SetUCMNodeID – Set UCM Node ID
Description
SetUCMNode
Parameter
Format
Node ID
Sender
Master
UCM
DB0
0x0B
0x0B
DB1
Format
DB2
DB3
DB4
DB5
LsNodeId NodeId2 MsNodeId
Value
0x00
0x01 – 0xFF
0x00 – 0x0F
0x00000 – 0x3FFFFF
Factory Default
0
0x0A
DB6
DB7
ModuleId
ModuleId
Description
11-bit CAN identifier
29-bit CAN identifier
11-bit CAN identifier
29-bit CAN identifier
With this command, a new UCM Node ID can be assigned to the UCM. All transmitted messages
from the UCM will use this Node ID. The new Node Id is stored in the UCM non-volatile memory
and activated only after a restart event. The command is a valid broadcast message.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
19
The Format parameter is used for switching between the standard CAN format and the
extended CAN format. Note that the Format can be changed with both the SetMasterNodeID
command and the SetUCMNodeId. The last command sent will override previous commands.
The new Format is stored in non-volatile memory and is activated after a restart event.
The command is a valid broadcast message.
6.7.
SetModuleID – Set Module ID
Description
SetModuleId
Sender
Master
UCM
DB0
0x0C
0x0C
Parameter
Module ID
DB1
LsSer#
DB2
Ser#2
DB3
Ser#3
Value
0x00 – 0x0F
DB4
Ser#4
DB5
Ser#5
DB6
DB7
MsSer# ModuleId
ModuleId
Factory Default
0
With this command, a new Module ID can be assigned to the UCM. The UCM compares the
internally stored serial number with the passed parameter. If the serial numbers match, the
new Module ID is stored in its non-volatile memory. The change is activated immediately. The
UCM sends the confirmation with the new Module ID. If the serial numbers do NOT match the
message will be discarded by the UCM without confirmation. Note that the new Module Id is
sent in data byte 7.
This command is a valid broadcast message.
6.8.
SetBaudrate – Set Baud Rate
Description
SetBaudRate
Parameter
BaudRate
Sender
Master
UCM
DB0
0x0D
0x0D
DB1
DB2
DB3
LsBitRate MsBitRate
Value
125, 250 or 500 kbit/s
DB4
DB5
DB6
DB7
ModuleId
ModuleId
Factory Default
250 kbit/s
The new Baud Rate is stored in the UCM non-volatile memory and is activated after a restart
event.
This command is a valid broadcast message.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
20
6.9.
SetInterval – Set Cyclic Transmission Interval
Description
SetInterval
Sender
DB0
Master
0x10
UCM
0x10
DB1
DB2
Interval
Mask
Count
DB3
DB4
DB5
DB6
DB7
ModuleId
ModuleId
Parameter
Cyclic Transmission Interval Count
Cyclic Transmission Mask
Value
0x00 – 0xFF
0x00 – 0x07
Factory Default
0
0
With this command, the cyclic transmission interval and cyclic transmission mask of measured
data can be changed.
The interval is configured by means of an interval count value. The interval count is a multiplier
of 50ms which yields an interval in the area of 0… 12750ms. A multiplier of 0 deactivates the
cyclic data transfer.
With the cyclic transmission mask the three cyclic messages can be turned on and of
independently. If the bit is set to 1 the messages is activated and if the value is 0 the message
is deactivated. The three least significant bits coupled to the cyclic messages according to the
following scheme:
Bit 0
Bit 1
Bit 2
Cyclic Message 1
Cyclic Message 2
Cyclic Message 3
All changes take immediate effect. This command is a valid broadcast message.
6.10. GetInterval – Read Cyclic Transmission Interval
Description
GetInterval
Sender
Master
DB0
0x11
UCM
0x11
DB1
DB2
DB3
DB4
DB5
DB6
LSB
MSB
Interval
IntervalCount Interval Interval
Mask
Period
Period
DB7
ModuleId
ModuleId
With this command, the cyclic transmission interval and cyclic transmission mask of measured
data can be read.
The interval is configured by means of an interval count value. The interval count is a multiplier
of 50ms which yields an interval in the area of 0… 12750ms. A multiplier of 0 deactivates the
cyclic data transfer.
With the cyclic transmission mask the three cyclic messages can be turned on and of
Maxwell Technologies CAN Communication Specification – Document no. 1014339
21
independently. If the bit is set to 1 the messages is activated and if the value is 0 the message
is deactivated. The three least significant bits coupled to the cyclic messages according to the
following scheme:
Bit 0
Bit 1
Bit 2
Cyclic Message 1
Cyclic Message 2
Cyclic Message 3
This command is a valid broadcast message.
6.11. SetPeakDeltaLimit – Sets the Peak Delta Voltage Limit.
Description
Sender
Master
SetPeakDeltaLimit
UCM
DB0
0x14
0x14
DB1
DB2
DB3
LsVoltLimit MsVoltLimit
DB4
DB5
DB6
DB7
ModuleId
ModuleId
With this command, the Peak Delta Voltage Limit can be changed. If the Peak Delta Voltage
gets over this limit the Peak Delta Voltage Flag will be set. The resolution of this value is
0.05v/bit. This limit can be set to any value between 0 and 200 [0 VDC and 10 VDC].
This command is a valid broadcast message.
6.12. CalibrateChannel – Calibrates a Voltage Channel
Description
Sender
Master
CalibrateChannel
UCM
DB0
0x20
0x20
DB1
ChannelNr
DB2
DB3
DB4
LsCalibV MsCalibV Key 1
DB5
Key 2
DB6
Key 3
DB7
ModuleId
ModuleId
This command is used in the calibration process when these modules are produced. This
command is not intended for customer use.
The ChannelNr corresponds to the voltage tap requested to be calibrated:
0 = 48th cell tap
1 = 40th cell tap
2 = 32nd cell tap
3 = 24th cell tap
4 = 16th cell tap
5 = 8th cell tap
The CalibV corresponds to the calibration voltage set at the tap input. The resolution of this
value is 0.01/bit.
This command is a valid broadcast message.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
22
6.13. ErrorMessage – Error Message
Description
ErrorMessage
Sender
UCM
DB0
0xEE
DB1
Source
DB2
Code
DB3
DB4
DB5
DB6
DB7
ModuleId
In case of an error, the UCM sends an Error Message. The source of the error is reported in
data byte 2 and the error cause is reported in data byte 3. An error message could be sent
instead of a response to a command if the command failed. Then the error source will
correspond to the command number. The error message could also be sent when an internal
error is detected. Then the definition of the error source will depend on the type of error that
has occurred. So far only errors triggered by commands are implemented.
Error code:
1: Invalid command format (invalid DLC, wrong data bytes numbers)
2: Not implemented command (interpretation of data byte 1 not implemented)
3: Invalid parameter value
4: Program validation failure
5: EeData validation failure
6: Command failed
6.14. Restart
Description
Restart
Sender
DB0
DB1
DB2
DB3
DB4
DB5
Master
0xA0
0x1E
0xEE
0xE1
0xEE
0x1E
UCM
0xA0
LsSer#
Ser#2
Ser#3
Ser#4
Ser#5
DB6
DB7
Restart
ModuleId
Alt.
MsSer# ModuleId
During normal operation it may be necessary to restart a module (such as after certain set
commands or to allow special set commands). There are two types of restarts available, the
warm boot and the cold boot. This command can also be used to reset the latching status
bits in Status Byte 1 in Cyclic Message 1. The different alternatives are commanded as
follows:
Restart Alternative Bit Flag
0
1
2
3
4
5
6
7
Description
Warm Boot
Reserved
Reserved
Reset Latching Flags
Reserved
Reserved
Reserved
Cold Boot
The warm boot will restart the execution in the firmware application and the execution will
Maxwell Technologies CAN Communication Specification – Document no. 1014339
23
not go through the bootloader (see Appendix C). This restart is generally used to activate
changes that are stored in EEPROM.
The cold boot will restart the execution in the bootloader and then depending on flags in
EEPROM jump to start execute in the firmware application.
See chapter 5.1 for a description of the latching status bits.
This is a valid broadcast message.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
24
7. Bootloader Messages
The Ultra Cap Monitor includes an embedded Bootloader that allows the units Application
firmware to be programmable over the CAN bus. The Bootloader also facilitates a way of writing
directly into the EEPROM as well as the Flash memory. It is not recommended that this is done
by the end user. Note that all of the bootloader messages used in Bootloader mode have 7 byte
data length.
The EnterBootMode command is the only Bootloader command that is recognized by the
Application. All other messages are only recognized by the Bootloader. See Appendix C for an
overview of how the switch between the different modes is performed.
7.1.
EnterBootMode – switch from Application to Bootloader
Description
Sender
Master
EnterBootMode
UCM
DB0
0xE0
0xE0
DB1
LsSer#
LsSer#
DB2
Ser#2
Ser#2
DB3
Ser#3
Ser#3
DB4
Ser#4
Ser#4
DB5
Ser#5
Ser#5
DB6
DB7
MsSer# ModuleId
MsSer# ModuleId
With this command the Ultra Cap Monitor will switch from executing the Application firmware to
executing the Bootloader firmware. This command is only recognized if received within 30s from
a restart event. The response is sent out before the switch takes place and should not be seen
as a confirmation of a successful command. Look for the Bootloader heart beat message
specified below for verification of that the UCM is in Boot mode. Use the EnterApplicationMode
command specified below to switch back to the Application mode.
7.2.
EnterApplicationMode – switch from Bootloader to Application
Description
Sender
Master
EnterApplicationMode
UCM
DB0
0xE5
0xE5
DB1
DB2
DB3
DB4
DB5
DB6
With this command the Ultra Cap Monitor will switch from executing the Bootloader firmware to
executing the Application firmware. The response is sent out before the switch takes place and
should not be seen as a confirmation of a successful command. Send a GetSerialNumber
command to verify that the command was successful. Use the EnterBootMode command
specified below to switch back to the Boot mode.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
25
7.3.
Erase – Erase data in Micro Controller flash memory
Description
Erase
Sender
DB0
Master
0xE1
UCM
0xE1
DB1
Ls
Address
DB2
DB3
DB4
Ms
Address 2 Address 3
Address
DB5
DB6
This command is used when the Ultra Cap Monitor is programmed with new firmware. It is not
recommended that this command is used by anything else but approved programming tools.
Failure to follow this recommendation could bring the Ultra Cap Monitor to an unrecoverable
failure state.
7.4.
Fill – Fill data in Micro Controller temporary buffer
Description
Fill
Sender
DB0
Master
0xE2
UCM
0xE2
DB1
Ls
Address
DB2
DB3
DB4
Ms
Address 2 Address 3
Address
DB5
DB6
Ls Data
Ms Data
This command is used when the Ultra Cap Monitor is programmed with new firmware. It is not
recommended that this command is used by anything else but approved programming tools.
Failure to follow this recommendation could bring the Ultra Cap Monitor to an unrecoverable
failure state.
7.5.
Program – Program data in Micro Controller flash memory
Description
Program
Sender
DB0
Master
0xE3
UCM
0xE3
DB1
Ls
Address
DB2
DB3
DB4
Ms
Address 2 Address 3
Address
DB5
DB6
This command is used when the Ultra Cap Monitor is programmed with new firmware. It is not
recommended that this command is used by anything else but approved programming tools.
Failure to follow this recommendation could bring the Ultra Cap Monitor to an unrecoverable
failure state.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
26
7.6.
Read – Reads data from Micro Controller flash memory
Description
Sender
DB0
Master
0xE4
UCM
0xE4
Read
DB1
Ls
Address
Ls Data
Byte
DB2
DB3
DB4
DB5
DB6
Ms
Address 2 Address 3
Address
Data Byte Data Byte Data Byte Data Byte Data Byte
2
3
4
5
6
This command is used to read the data from the flash memory of the Ultra Cap Monitor
7.7.
ReadEEPROM – Reads data from Micro Controller EEPROM memory
Description
ReadEEPROM
Sender
DB0
Master
0xE6
UCM
0xE6
DB1
DB2
Ls
Ms
Address Address
Data Byte
DB3
DB4
DB5
DB6
This command is used to read the data from the EEPROM memory of the Ultra Cap Monitor.
7.8.
WriteEEPROM – Write data in Micro Controller EEPROM memory
Description
WriteEEPROM
Sender
DB0
Master
0xE7
UCM
0xE7
DB1
Ls
Address
DB2
Ms
Address
DB3
DB4
DB5
DB6
Data Byte
This command is used to read the data from the EEPROM memory of the Ultra Cap Monitor. It
is not recommended that this command is used by anything else but approved programming
tools. Failure to follow this recommendation could bring the Ultra Cap Monitor to an
unrecoverable failure state.
7.9.
CalculateFlashCRC – Calculates the CRC of the Flash memory
Description
CalculateFlashCRC
Sender
Master
UCM
DB0
0xE8
0xE8
DB1
DB2
Ls CRC
Ms CRC
DB3
DB4
DB5
DB6
This command is used to calculate the Cyclic Redundancy Checksum when the Ultra Cap
Monitor is programmed with new firmware.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
27
7.10. ProgramFlashCRC – Programs the CRC to the Flash memory
Description
CalculateFlashCRC
Sender
Master
UCM
DB0
0xE9
0xE9
DB1
DB2
Ls CRC
Ms CRC
DB3
DB4
DB5
DB6
This command is used when the Ultra Cap Monitor is programmed with new firmware. It is not
recommended that this command is used by anything else but approved programming tools.
Failure to follow this recommendation could bring the Ultra Cap Monitor to an unrecoverable
failure state.
7.11. BootHeartBeat – Bootloader Heart Beat message
Description
BootHeartBeat
Sender
UCM
DB0
0xEA
DB1
Config Cks
When the UCM is in the boot mode it will send out a heart beat message with 1 Hz frequency.
This message contains the checksum of the configuration parameters currently in use. This
message can be used to verify that the UCM is currently executing the bootloader firmware and
are now responding to messages specified in this section of the specification.
Maxwell Technologies CAN Communication Specification – Document no. 1014339
28
8. Appendix
8.1.
A
Limit values
Description
Maximum Full Voltage
High Full Voltage
Low Full Voltage
Minimum Full Voltage
Maximum Half Voltage
High Half Voltage
Low Half Voltage
Maximum Temperature
High Temperature
Low Temperature
Minimum Temperature
Maximum Peak Delta Voltage
Command Time Limit
Value
134.0
126.6
30.0
10.0
67.0
63.3
5.0
65
55
-30
-40
3.0
2.0
Maxwell Technologies CAN Communication Specification – Document no. 1014339
Unit
Volts
Volts
Volts
Volts
Volts
Volts
Volts
˚C
˚C
˚C
˚C
Volts
Sec
29
8.2.
B
Factory Default Settings
Description
Board Serial Number
Hardware version
Software version
CAN Message Format
Master Node ID
UCM Node ID
Module ID
Baud Rate
Cyclic Message Count
Cyclic Message Bit Mask
Module Serial Number
8.3.
C
Value
Uniquely assigned during manufacturing. See Appendix D.
Assigned during manufacturing.
Unique to code and stored in flash memory.
Standard 11 bit CAN ID. [0]
9d, 1001b
10d, 1010b
0
250 kbit/s
0 (sending deactivated)
0 (all three messages deactivated)
All 0 as default for separate board. Uniquely assigned during
manufacturing if the board is mounted in a module. See
Appendix E.
State Diagram Application – Bootloader
Maxwell Technologies CAN Communication Specification – Document no. 1014339
30
8.4.
D
Board Serial Number Format
DB0
DB1
P
Symbol
P
DD
L
##
8.5.
E
DB0
M
DB10
D
Symbol
M
VVV
CC
P
YY
DDD
L
####
DB2
D
DB3
D
Description
Product Type
Date
Location
Day serial number
DB4
L
Value
1
08286
D
0
DB5
#
#
Interpretation
CAN Monitor
Year + Julian Date (New Style)
San Diego
0 – 65535
Type
Dec
Dec
ASCII
Dec
Module Serial Number Format
DB1
V
DB11
D
DB2
V
DB3
V
DB12
L
Description
Module / Pack
Product Voltage
Cell capacitance
Product Type
Year
Day
Location
Serial Number
DB4
C
DB13
#
Value
M
125
30
P
08
360
D
23
DB5
C
DB6
P
DB14
#
DB15
#
DB7
Y
DB8
Y
DB16
#
Interpretation
Always M
125VDC
3000F
Power/Active Balancing
2008
1-366 Julian Date (New Style)
San Diego
0-9999
Maxwell Technologies CAN Communication Specification – Document no. 1014339
DB9
D
Type
ASCII
ASCII
ASCII
ASCII
ASCII
ASCII
ASCII
ASCII
31
8.6.
F
Voltage Taps in Capacitor String
+Terminal
Full Voltage
5/6th Voltage
rd
2/3 Voltage
Half Voltage
rd
1/3 Voltage
1/6th Voltage
- Terminal
Maxwell Technologies CAN Communication Specification – Document no. 1014339
32
8.7.
G
Abbreviations
BCD
Binary Coded Decimal
CAN
Controller Area Network
DLC
Data Length Code
ID
Identifier
LSB
Least Significant Bit or Byte
MSB
Most Significant Bit or Byte
UCM
UltraCap Module
TBD
To be determined
UC
Unsigned char, 8 bit
US
Unsigned short, 16 bit
DB
Data byte
Maxwell Technologies, Inc.
Worldwide Headquarters
9244 Balboa Avenue
San Diego, CA 92123
USA
Phone: +1 858 503 3300
Fax: +1 858 503 3301
Maxwell Technologies SA
CH-1728 Rossens
Switzerland
Phone: +41 (0)26 411 85 00
Fax: +41 (0)26 411 85 05
Maxwell Technologies GmbH
Brucker Strasse 21
D-82205 Gilching
Germany
Phone: +49 (0)8105 24 16 10
Fax: +49 (0)8105 24 16 19
[email protected] – www.maxwell.com
Maxwell Technologies, Inc. Shanghai Representative Office
Rm.2104, Suncome Liauw’s Plaza
738 Shang Cheng Road
Pudong New Area
Shanghai 200120, P.R. China
Phone: +86 21 5836 5733
Fax: +86 21 5836 5620