Товарищ обоснованно негодует, но все излечимо.const USB_Descriptor_Device_t PROGMEM MyDeviceDescriptor = и тратата из хедера убрать, вместо этого extern USB_Descriptor_Device_t MyDeviceDescriptor; а перед этим еще обязательно должен быть тайпдеф на USB_Descriptor_Device_t.
ну и в хедере не забыть ифндеф название_файла_большими_буквами. (смотри системные хедеры)