Attempted some changes to get the write read to work. they didn't work.
Changed function to where it exactly reflects the main.cpp script I wrote. However this did not result in the same response from the CP2112.
Doing a write_read_request works with multiple bytes. It works well with 8 bytes being read but it seems that it can't do 1 or 2.
Minor change in the number of bytes being sent and changed the data read from HID to a hid_read_timeout with a one second timeout.
As it turns out, it does work... sort of. The second and all subsequent calls to the write_read_request fails. Something is not getting clear properly or something and thus failing.