if (pdata->hid_usage == 0)
{
// On Linux, libhidapi does not seem to return the HID usage from the report descriptor.
// We try to infer the board from the part information, until somebody fixes libhidapi.
// To use this workaround, the -F option is required.
avrdude_message(MSG_INFO, "%s: WARNING: Cannot detect board type (HID usage is 0)\n", progname);
This seems to happen to the libusb backend but not hidraw backend.
From here.
https://github.com/avrdudes/avrdude/blob/main/src/teensy.c#L126-L131
This seems to happen to the libusb backend but not hidraw backend.