Encode ISO15693 response as tag byte by byte, instead of 2 bytes by 2 bytes, so that responses with an odd number of bytes don't end up encoded and transmitted with an extraneous uninitialized byte after the CRC.

This commit is contained in:
giraut 2022-03-21 20:22:27 +02:00
parent 0f98e177ba
commit 42f4888f1c

View file

@ -252,11 +252,9 @@ void CodeIso15693AsTag(const uint8_t *cmd, size_t len) {
ts->buf[++ts->max] = 0x1D; // 00011101
// data
for (size_t i = 0; i < len; i += 2) {
for (size_t i = 0; i < len; i ++) {
ts->buf[++ts->max] = encode_4bits[cmd[i] & 0xF];
ts->buf[++ts->max] = encode_4bits[cmd[i] >> 4];
ts->buf[++ts->max] = encode_4bits[cmd[i + 1] & 0xF];
ts->buf[++ts->max] = encode_4bits[cmd[i + 1] >> 4];
}
// EOF