I made an issue about it on github but I'm not sure it is regularly checked, so I post about it on the forum too :-)

There may be an issue with the string descriptor information sent on the usb setup.
I tried to debug it but didn't figure out how the missing data should be sent.
Here is the problem :
String Descriptor Table

Index LANGID String
0x00 0x0000
0x01 0x0000 "Manufacturer"
0x02 0x0000 "Product name"

And it should be :

Index LANGID String
0x00 0x0000 0x0409
0x01 0x0409 "Manufacturer"
0x02 0x0409 "Product name"

So first missing part is the wLangID not being set.
And the second missing part is the LangID field not being set.
{0x0300, 0x0000, (const uint8_t *)&string0, 0},
{0x0301, 0x0409, (const uint8_t *)&usb_string_manufacturer_name, 0},
{0x0302, 0x0409, (const uint8_t *)&usb_string_product_name, 0},
{0x0303, 0x0409, (const uint8_t *)&usb_string_serial_number, 0},

So basically I have tried to debug and print the sent usb packets through serial, and I think the wIndex is never taken into account.
I am not sure at all if I am on the right track, and still I didn't figure out why the 0x0000 offset which we set at 0x0409 (the supported languages, english) is never set.

Any idea ?