logo

Lithiumate™ Manual

index reference description_specs comm_specs hvfe_can_specs

HVFE CAN specs

Specifications for the CAN Bus messages used by the Remote High Voltage Front End

These are the CAN messages that are sent or may be sent by the Remote High Voltage Front End, and the ones that it listens to.

back to topTransmitted

Sent 7 ms after each time a message is received from the BMS controller.

If no messages are received from the BMS controller, sent at a configurable rate (10 ms to 2.55 s, 1 s default).

Rev 1.03 and above
ID Bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6
681h 7 Load current (1) Source current (1) Data (2) Pack voltage (3)

Rev 1.02 and below
ID Bytes Byte 0 Byte 1 Byte 2 Byte 3 Byte 4
681h 5 Load current (1) Source current (1) Data (2)

  1. [10 mA], + = into battery, big-endian. The value is refreshed 1/s, regardless of the message rate
  2. Normally 01h. Bit 0: 1 = no voltage seen by the HVFE during contactor tests isolation is OK
  3. [100 mV] (Resolution is 1.2 V)
back to topReceived

Notes:

  • Maximum period: 2 s (after 3 s it assumes there is no such message on the CAN bus)
ID Byte 0: Address Byte 1: Mask Byte 2: Data
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
680h 48h FFh - Drive Precharge switch Drive SW- switch Drive SW+ switch Drive relay K3 Drive relay K2 Drive relay K1 Fault
back to topReprogramming

The Remote HVFE and the BMS controller are programmed at the factory to work with each other.

If you need to change the the CAN Bus speed, or ID of the messages used (because of a conflict with messages from another device on the bus), you my reprogram both the Remote HVFE and the BMS controller, to new values.

Three items are programmable through the CAN bus:

  • The CAN bus speed (125, 250, 500 kbps or 1 Mbps)
  • The CAN ID of the received control message
  • The CAN ID of the transmitted status message

The EEPROM may also be programmed through the ICSP connector and a PIC programmer.

The control message (by default at ID of 680h) is also used by the Elithion display. If you are using an Elithion display, changing this ID will make the display unoperable (the display cannot be reprogrammed).

Procedure:

  1. Connect to the board through the CAN bus, using the CAN bus speed that the board is presently set to
  2. Send CAN messages to modify the EEPROM (either through a computer and a CAN adapter, or using the "Custom Output Message" feature of the BMS)
  3. Power down and up for the changes to take effect
ID Length Byte 2: Data
Data 0 Data 1 Data 2 Data 3 Data 4 Data 5 Data 6 Data 7
7FFh 8 12h 34h 56h 78h 9Ah BCh EEPROM address EEPROM data
Item EEPROM Address EEPROM Data Default Notes
High byte of the CAN ID of the received control message 00h 00h to 07h 06h
Low byte "" 01h 00h to FFh 80h
High byte of the CAN ID of the transmitted status message 02h 00h to 07h 06h
Low byte "" 03h 00h to FFh 81h
CAN bus speed code 04h FFh, 00h, 01h or 03h 00h 1
Status message rate 05h 01h to FFh 100 2
High byte of the offset in the high current sensor (load current) 06h 00h 00h 3
Low byte "" 07h 00h 00h
High byte of the offset in the low current sensor (source current) 08h 00h 00h
Low byte "" 09h 00h 00h
CAN bus receive timing code 0Ah 00h to FFh F7h 4

Notes:

  • Wait 10 ms before programming a new value
  1. The value for the CAN Bus speed is validated, so there's no risk of locking the board from being programmed by CAN bus
    • FFh for 1 Mbps {Rev 1.07 and up}
    • 00h for 500 kbps
    • 01h for 250 kbps
    • 03h for 125 kbps
  2. Normally, the HVFE only transmits as a response to a received message.
    If the HVFE includes current sensors, it also transmits on its own, at a rate set by this setting. Units: [10 ms]. For example: 1 = 10 ms; 10 = 100 ms; 100 = 1 s...
  3. {Rev 1.06 and up}. Units: [10 mA] 0000h = 0 A offset; 0001h = decrease the reported value by 10 mA; FFFFh = increase the reported value by 10 mA
  4. {Rev 1.08 and up}. See the CAN Rx Timing page

Example: configure the HVFE from 500 kbps to 250 kbps using a custom message

  1. Start with both the BMS master and the HVFE at 500 kbps (factory default)
  2. In the GUI, go to the Configure/Communicate tab
  3. Set the "Custom message" parameters as shown below
    • ID is "7FF", per the table above
    • Number of bytes is 8
    • "Item" = 8 means "constant"
    • "Multiplier" and "Divider" don't matter: set them to 1
    • "Offset" is the value to be sent for that byte
      • Bytes 0~5 are 0x12 through 0xBC, converted to 12 through 188 decimal, per the table above
      • Byte 6 is set to "4" for CAN speed
      • Byte 7 is set to "1" for 250 kbps
    • You can use this configuration file
  4. Click the "Write to BMS" button; the BMS will send the custom message once a second; the HVFE will configure its speed to 250 kbps
  5. Change the "ID" to 0 to stop the custom messsage; change the "Rate" control to 250 k b/s
  6. Click the "Write to BMS" button; the BMS will stop sending the custom message; the BMS master will configure its speed to 250 kbps but will keep on using 500 kbps for now
  7. Remove power to the unit; this will reset both the BMS master and the HVFE
  8. Power the unit back up; both the BMS master and the HVFE will use their newly configured speed and operate at 250 kbps
e-logo

© 2008~2024 Elithion™, LLC. All rights reserved, except where noted by CC mark. Page published on Sep 01 2020.
The Elithion brand and the 'ə' (upside down 'e') logo are Trademarks of Elithion LLC. Graphic design by morninglori

 

In this page: