I'm trying to decode
.PLW data acquired by a temperature logger (PicoLog PT-104).
If you convert the
.PLW file to a
.txt file through the official software you get something like this:
where each row has single temperature measurements across the 20 channels available to the device. I would like to extract the data directly from the
.PLW, file without having to convert it to
By opening the
.PLW file in a hex editor, I have managed to isolate with a bit of tweaking the section which seems to contain the raw data measurements:
The first 4 hexes contain the row index. And should be read in the reversed column order
03 02 01 00.
There are then the 20 groups of 4 columns, one for each channel. Assuming all groups should be read right to left (given that was the case for the index columns), they all seem to begin with
0x41 which might maybe be some kind of encoding for the tab character (or similar).
The next hex in each chunk (so the one just before the
0x41) seems to be mapping at least to some approximate way the temperature read in that channel:
- Hex -> TEMP
0x50 -> 13
0xa0, 0xa1, 0xa2, 0xa3 -> 20
0xa4, 0xa5, 0xaa, 0xab -> 21
0xac, 0xae, 0xb0 -> 22
And the order of the channels also seems to match the order of the columns in the
.txt file: for example channel 8 in the
.txt file has an outlier temperature at
13 --> which is also present in the 8th data column in the
.PLW file, where the temperature hex is set to
Would anyone be able to crack the mapping between the hex values in each chunk to the final temperature measurement displayed in the
Or does anyone know of an encoding where
0x41 would correspond to a tab-like character? Thanks!