bits2bytes function
Implementation
Uint16List bits2bytes(Uint16List bits) {
if ((bits.length % dataLength) != 0) {
throw FlutterError('bits_contain_incomplete_byte');
}
int byteCnt = bits.length ~/ dataLength;
Uint16List byteMsg = Uint16List(byteCnt);
for (int i = 0; i < byteCnt; ++i) {
Uint16List bitsOfByte = Uint16List.fromList(
bits.getRange(i * dataLength, i * dataLength + dataLength).toList());
int byte = assembleBits(bitsOfByte);
byteMsg[i] = byte;
}
return byteMsg;
}