* Read any number of bytes (was fixed at 7 bytes).
* Change buffer size to 64 bytes for more flexibility (was 16).
* Improved error messages for debugging purposes.