The scale zero command should work on any USB-compliant scale, but this code doesn't send it correctly.
I've had success in another codebase sending feature report 0x02 with a single byte 0x03. It took me quite a while to figure this out.
This should fix the error "errno=No such file or directory r=-1 (LIBUSB_ERROR_IO) transferred 0 bytes" when running ./usbscale zero