Dear yamcs-Team,
we've noticed that telemetry parameters using IntegerDataTypes with encoding of anything other than 'uint8/16/32/...' seem to mess up the yamcs parser for our telemetries. A small telemetry containing
1 x uint1_t
1 x uint8_t
1 x uint1_t
array: 3 x uint8_t
is of by 2 bits from being divisible by 8 and is therefore messing with the last 2 bits of our telemetry (in this case last 2 bits of last array entry).
Figure 1: Debugging stack for requesting example telemetry containing 2 boolean parameters encoded with uint1_t
Sending our 'request_tm' command leads to always changing results, meaning that in case of being 2 bits off of being divisible by eight leads to the last 2 bits being read as 0b00 up to 0b11.
This leads also to problems parsing strings, since parser does not find the beginning of a string parameter where is is supposed to start (byte aligned).
Just for a sanity check: here our simple implementation for debugging this issue.
Figure 2: Parameter definition for debugging non-byte-aligned telemetries
Thank you in advance