MQTT Explorer is an excellent client for viewing and exploring these payloads when building your own applications on top of these payloads.
Intended to show whether the device is online or not. Uses MQTT "Last Will and Testament" feature.
Currently untested.
Batrium/{Serial No}/d/lnk
{
"Online": 0
}
Index |
Field |
Units |
1 |
Link Status |
uint8 |
Shows identifying information about the system and its firmware
Batrium/{Serial No}/d/sys
{
"System": [
5712,
"BOL-D",
"BOL-D-WMC-LTO-24V",
"14.6.0",
"14.3.56",
1,
22,
11,
1
],
"Vers": 1,
"Time": 1705921438
}
Index |
Field |
Units |
1 |
System ID |
uint16 |
2 |
System Code |
Text 8 |
3 |
System Name |
Text 20 |
4 |
Hardware Version (Major,Minor, Batch) |
text |
5 |
Firmware Version (Major, Minor, Build) |
text |
6 |
CMU Range - Entire First ID |
range |
7 |
CMU Range - Entire Last ID |
range |
8 |
Nom Cell Count |
count |
9 |
Shunt NomCapacity |
AmpHours |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows the state of the Expansion Board (if used)
Batrium/{Serial No}/d/exp
{
"Exp": [
1,
4,
4,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"Vers": 1,
"Time": 1705922158
}
Index |
Field |
Units |
1 |
Critical BattOk |
0=Off, 1=On |
2 |
Charge Operating State |
0=Off, 2=Limp, 4=Normal |
3 |
Discharge Operating State |
0=Off, 2=Limp, 4=Normal |
4 |
Cooling Operating State |
0=Off, 1=On |
5 |
Heating Operating State |
0=Off, 1=On |
6 |
SoC Limit IsOn 1 |
0=Off, 1=On |
7 |
SoC Limit IsOn 2 |
0=Off, 1=On |
8 |
SoC Limit IsOn 3 |
0=Off, 1=On |
9 |
SoC Limit IsOn 4 |
0=Off, 1=On |
10 |
Expansion Output 1 |
0=Off, 1=On |
11 |
Expansion Output 2 |
0=Off, 1=On |
12 |
Expansion Output 3 |
0=Off, 1=On |
13 |
Expansion Output 4 |
0=Off, 1=On |
14 |
Expansion Output 5 |
0=Off, 1=On |
15 |
Expansion Output 6 |
0=Off, 1=On |
16 |
Expansion Output 7 |
0=Off, 1=On |
17 |
Expansion Output 8 |
0=Off, 1=On |
18 |
Expansion Output 9 |
0=Off, 1=On |
19 |
Expansion Output 10 |
0=Off, 1=On |
20 |
Expansion Input 1 |
0=Off, 1=On |
21 |
Expansion Input 2 |
0=Off, 1=On |
22 |
Expansion Input 3 |
0=Off, 1=On |
23 |
Expansion Input 4 |
0=Off, 1=On |
24 |
Expansion Input 5 |
0=Off, 1=On |
25 |
Expansion Input 6 |
0=Off, 1=On |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows the current targets being sent to the inverter or alternator.
Batrium/{Serial No}/d/lmt
{
"Limit": [
53.2,
0.4,
47.2,
0.8,
3
],
"Vers": 1,
"Time": 1710393277
}
Index |
Field |
Units |
1 |
Charging Target Voltage |
|
2 |
Charging Target Current |
|
3 |
Discharging Target Voltage |
|
4 |
Discharging Target Current |
|
5 |
Canbus Remote Operating Status |
0=Unknown, 1=Active, 2=Timeout, 3=Disabled |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows the operating state of the BMS, such as the state of communication links
Batrium/{Serial No}/d/ops
{
"Ops": [
55.31,
25,
-70,
"192.168.20.31",
3,
0,
15,
3,
0,
0
],
"Vers": 1,
"Local": 1710468532,
"Time": 1710468532
}
Index |
Field |
Units |
1 |
System Voltage |
Voltage |
2 |
System Temperature |
Celcuis |
3 |
Rssi |
|
4 |
IP Address |
|
5 |
System Operating Status |
0=Simulator, 1=Idle, 2=Discharging, 3=Empty, 4=Charging, 5=Full, 6=Timeout, 7=CriticalPending, 8=CriticalOffline, 9=MqttOffline, 10=TechnicanMode, 11=ShuntOffline |
6 |
USB Operating Status |
0=Unknown, 1=Active, 2=Timeout, 3=Disabled |
7 |
WiFi Operating Status |
0=Unknown, 1=Active, 2=Timeout, 3=Disabled |
8 |
WebAccess Operating Status |
0=Unknown, 1=Active, 2=Timeout, 3=Disabled |
9 |
Reserved |
0=default |
10 |
Reserved |
0=default |
If UTC time is enabled, the Local object appears and shows the local time as well.
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows the voltage, current, power, and information about the general state of the battery.
Batrium/{Serial No}/d/sht
{
"Shunt": [
54.47,
0,
0,
17.9,
100,
0.2,
4124,
-0.03,
2
],
"Vers": 1,
"Time": 1710469042
}
Index |
Field |
Units |
1 |
Shunt Voltage |
Voltage |
2 |
Shunt Current |
Amps |
3 |
Shunt Power |
Watts (VA) |
4 |
State of Charge SoC% |
percentage |
5 |
State of Health SoH% |
percentage |
6 |
NomCapacityToEmpty |
AmpHours |
7 |
EstDurationToEmptymins |
minutes |
8 |
Power Filtered (5min average) |
Watts (VA) |
9 |
Shunt Status |
0=Unknown, 1=Active, 2=Timeout, 3=Disabled |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows aggregated statistics for which cells have balanced, and how much.
Batrium/{Serial No}/d/statB
{
"StatByp": [
0,
0,
0,
0,
0,
0.33,
0,
2,
0,
0,
0
],
"Vers": 1,
"Time": 1710470495
}
Index |
Field |
Units |
1 |
Min Bypass Current |
MilliAmps |
2 |
Max Bypass Current |
MilliAmps |
3 |
Min Bypass Current - Identifier |
range |
4 |
Max Bypass Current - Identifier |
range |
5 |
Min Bypass Session |
MilliAmpHours |
6 |
Max Bypass Session |
MilliAmpHours |
7 |
Min Bypass Session - Identifier |
range |
8 |
Max Bypass Session - Identifier |
range |
9 |
NumOfCells InBypass |
counter |
10 |
NumOfCells AboveInitalBypass |
counter |
11 |
NumOfCells AboveFinalBypass |
counter |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows aggregated statistics for your cells (i.e. which cell has the highest voltage, and what is that voltage)
Batrium/{Serial No}/d/statC
{
"StatCell": [
5,
22,
0,
100,
2358,
2280,
2380,
16,
10,
23,
23,
23,
1,
1,
24,
30,
12,
1
],
"Vers": 1,
"Time": 1710470855
}
Index |
Field |
Units |
1 |
CMU Operating Status |
0=Unknown, 1=Active, 2=Timeout, 3=Disabled |
2 |
NumOfCells |
counter |
3 |
NumOfCellsOverdue |
counter |
4 |
Delta Cell Voltage |
MilliVolts |
5 |
Average Cell Voltage |
MilliVolts |
6 |
Min Cell Voltage |
MilliVolts |
7 |
Max Cell Voltage |
MilliVolts |
8 |
Min Cell Voltage - Identifier |
range |
9 |
Max Cell Voltage - Identifier |
range |
10 |
Average Cell Temperature |
Celcuis |
11 |
Min Cell Temperature |
Celcuis |
12 |
Max Cell Temperature |
Celcuis |
13 |
Min Cell Temperature - Identifier |
range |
14 |
Max Cell Temperature - Identifier |
range |
15 |
Min Bypass Temperature |
Celcuis |
16 |
Max Bypass Temperature |
Celcuis |
17 |
Min Bypass Temperature - Identifier |
range |
18 |
Max Bypass Temperature - Identifier |
range |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows individual cell voltages in 16-cell groups i.e.(the V1
payload includes the voltages of cells 1 through 16)
Batrium/{Serial No}/cell/Vx
(where x
is the cell group)
{
"First": 1,
"Last": 16,
"CellV": [
2375,
2375,
2345,
2380,
2380,
2375,
2285,
2370,
2375,
2355,
2375,
2350,
2355,
2360,
2370,
2340
],
"Vers": 1,
"Time": 1710472821
}
Index of the first cell in this group
Index of the last cell in this group
Index |
Field |
Units |
1 |
Cell Voltage - Node #1 |
MilliVolts |
2 |
Cell Voltage - Node #2 |
MilliVolts |
3 |
Cell Voltage - Node #3 |
MilliVolts |
4 |
Cell Voltage - Node #4 |
MilliVolts |
5 |
Cell Voltage - Node #5 |
MilliVolts |
6 |
Cell Voltage - Node #6 |
MilliVolts |
7 |
Cell Voltage - Node #7 |
MilliVolts |
8 |
Cell Voltage - Node #8 |
MilliVolts |
9 |
Cell Voltage - Node #9 |
MilliVolts |
10 |
Cell Voltage - Node #10 |
MilliVolts |
11 |
Cell Voltage - Node #11 |
MilliVolts |
12 |
Cell Voltage - Node #12 |
MilliVolts |
13 |
Cell Voltage - Node #13 |
MilliVolts |
14 |
Cell Voltage - Node #14 |
MilliVolts |
15 |
Cell Voltage - Node #15 |
MilliVolts |
16 |
Cell Voltage - Node #16 |
MilliVolts |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
¶ Cell and Bypass Temperatures (Vers 1)
Shows individual cell temperatures and bypass temperatures in 16-cell groups i.e.(the T2
payload includes the temperatures of cells 16 through 22 in a 22-cell system)
Batrium/{Serial No}/cell/Tx
(where x
is the cell group)
{
"First": 1,
"Last": 16,
"CellT": [
24,
24,
24,
24,
24,
24,
23,
23,
23,
24,
24,
23,
23,
23,
24,
24
],
"BypT": [
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
29,
26,
26,
26,
26,
26
],
"Vers": 1,
"Time": 1710474863
}
Index of the first cell in this group
Index of the last cell in this group
Index |
Field |
Units |
1 |
Cell Temperature - Node #1 |
Celcuis |
2 |
Cell Temperature - Node #2 |
Celcuis |
3 |
Cell Temperature - Node #3 |
Celcuis |
4 |
Cell Temperature - Node #4 |
Celcuis |
5 |
Cell Temperature - Node #5 |
Celcuis |
6 |
Cell Temperature - Node #6 |
Celcuis |
7 |
Cell Temperature - Node #7 |
Celcuis |
8 |
Cell Temperature - Node #8 |
Celcuis |
9 |
Cell Temperature - Node #9 |
Celcuis |
10 |
Cell Temperature - Node #10 |
Celcuis |
11 |
Cell Temperature - Node #11 |
Celcuis |
12 |
Cell Temperature - Node #12 |
Celcuis |
13 |
Cell Temperature - Node #13 |
Celcuis |
14 |
Cell Temperature - Node #14 |
Celcuis |
15 |
Cell Temperature - Node #15 |
Celcuis |
16 |
Cell Temperature - Node #16 |
Celcuis |
Index |
Field |
Units |
1 |
Cell Temperature - Node #1 |
Celcuis |
2 |
Cell Temperature - Node #2 |
Celcuis |
3 |
Cell Temperature - Node #3 |
Celcuis |
4 |
Cell Temperature - Node #4 |
Celcuis |
5 |
Cell Temperature - Node #5 |
Celcuis |
6 |
Cell Temperature - Node #6 |
Celcuis |
7 |
Cell Temperature - Node #7 |
Celcuis |
8 |
Cell Temperature - Node #8 |
Celcuis |
9 |
Cell Temperature - Node #9 |
Celcuis |
10 |
Cell Temperature - Node #10 |
Celcuis |
11 |
Cell Temperature - Node #11 |
Celcuis |
12 |
Cell Temperature - Node #12 |
Celcuis |
13 |
Cell Temperature - Node #13 |
Celcuis |
14 |
Cell Temperature - Node #14 |
Celcuis |
15 |
Cell Temperature - Node #15 |
Celcuis |
16 |
Cell Temperature - Node #16 |
Celcuis |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |
Shows individual cell bypass readings and statistics for the session in 16-cell groups i.e.(the B3
payload includes the temperatures of cells 33 through 49)
Batrium/{Serial No}/cell/Bx
(where x
is the cell group)
{
"First": 1,
"Last": 6,
"BypA": [
0,
0,
0,
21,
0,
0
],
"BypSes": [
0,
0,
0,
0,
0,
0
],
"v": 1,
"Time": 1710390827
}
Index of the first cell in this group
Index of the last cell in this group
Index |
Field |
Units |
1 |
Cell Bypass Current - Node #1 |
MilliAmps |
2 |
Cell Bypass Current - Node #2 |
MilliAmps |
3 |
Cell Bypass Current - Node #3 |
MilliAmps |
4 |
Cell Bypass Current - Node #4 |
MilliAmps |
5 |
Cell Bypass Current - Node #5 |
MilliAmps |
6 |
Cell Bypass Current - Node #6 |
MilliAmps |
7 |
Cell Bypass Current - Node #7 |
MilliAmps |
8 |
Cell Bypass Current - Node #8 |
MilliAmps |
9 |
Cell Bypass Current - Node #9 |
MilliAmps |
10 |
Cell Bypass Current - Node #10 |
MilliAmps |
11 |
Cell Bypass Current - Node #11 |
MilliAmps |
12 |
Cell Bypass Current - Node #12 |
MilliAmps |
13 |
Cell Bypass Current - Node #13 |
MilliAmps |
14 |
Cell Bypass Current - Node #14 |
MilliAmps |
15 |
Cell Bypass Current - Node #15 |
MilliAmps |
16 |
Cell Bypass Current - Node #16 |
MilliAmps |
Index |
Field |
Units |
1 |
Cell Bypass Session - Node #1 |
MilliAmpHours |
2 |
Cell Bypass Session - Node #2 |
MilliAmpHours |
3 |
Cell Bypass Session - Node #3 |
MilliAmpHours |
4 |
Cell Bypass Session - Node #4 |
MilliAmpHours |
5 |
Cell Bypass Session - Node #5 |
MilliAmpHours |
6 |
Cell Bypass Session - Node #6 |
MilliAmpHours |
7 |
Cell Bypass Session - Node #7 |
MilliAmpHours |
8 |
Cell Bypass Session - Node #8 |
MilliAmpHours |
9 |
Cell Bypass Session - Node #9 |
MilliAmpHours |
10 |
Cell Bypass Session - Node #10 |
MilliAmpHours |
11 |
Cell Bypass Session - Node #11 |
MilliAmpHours |
12 |
Cell Bypass Session - Node #12 |
MilliAmpHours |
13 |
Cell Bypass Session - Node #13 |
MilliAmpHours |
14 |
Cell Bypass Session - Node #14 |
MilliAmpHours |
15 |
Cell Bypass Session - Node #15 |
MilliAmpHours |
16 |
Cell Bypass Session - Node #16 |
MilliAmpHours |
Index |
Field |
Units |
1 |
Time |
uint32 epoch |
Index |
Field |
Units |
1 |
Payload Version |
uint8 |