Logging
The Driver Station saves 2 types of log files to disk (in C:\Users\Public\Documents\FRC\Log Files)
for later viewing. A .dslog and a .dsevents.
The log populates the list with any file ending with .dslog, but the Driver Station helpfully names
them with the current date and time. (e.g. 2018_04_22 23_39_25 Sun.dslog)
.dslog
Stored in Big Endian
Field |
Length |
Type |
Comments |
|---|---|---|---|
Header |
20 |
||
Entries |
n |
Array of n entries |
Header
Field |
Length |
Type |
Comments |
|---|---|---|---|
Version |
4 |
uint32 |
|
Unknown |
4 |
||
Timestamp |
4 |
uint32 |
Seconds since 1904/1/1 |
Fractional Seconds? |
1 |
uint8 |
Divide by 256 to get decimal part of timestamp? |
Unknown |
7 |
Entry
Field |
Length |
Type |
Comments |
|---|---|---|---|
Trip Time |
1 |
uint8 |
x / 15 = ms |
Packet Loss % |
1 |
uint8 |
x * 4 |
Battery |
2 |
Battery |
xx + yy/256 |
RoboRIO CPU % |
1 |
uint8 |
x / 2 |
Trace |
1 |
||
CAN Percent |
1 |
uint8 |
x / 2 |
Wifi dB |
1 |
uint8 |
x / 2 |
Wifi Mb |
1 |
uint8 |
|
Unknown |
2 |
||
PDP Stats |
21 |
||
Unknown |
3 |
Trace
Field |
Mask |
Comment |
|---|---|---|
Brownout |
|
|
Watchdog |
|
|
DS Teleop |
|
|
Unused |
|
|
DS Disabled |
|
|
Robot Teleop |
|
|
Robot Auton |
|
|
Robot Disabled |
|
PDP
Current for each PDP port is stored as 10 bits, (mostly) packed together. 0-5 are packed and padded into the first 64 bits, 6-11 are packed and padded into the next 64 bits, 12-15 are packed into the next 40 bits. Each of the 10 bit numbers is the current of the port * 8.
Ports |
Bits |
Total Bytes |
|---|---|---|
0, 1, 2, 3, 4, 5 |
60 bits + 4 padding |
8 bytes |
6, 7, 8, 9, 10, 11 |
60 bits + 4 bits padding |
8 bytes |
12, 13, 14, 15 |
40 bits |
5 bytes |
.dsevent
TODO