NicoHood/HID

PluggableUSB limit and count of endpoints

Closed this issue · 1 comments

Every cpp in SingleReport creates an instance and 'plugs' it as endpoint. Gamepad has 4 instances. That is 11 instances. Plus HID for MultiReport. That is 12. They are not optimized away if not used, because they register into PluggableUSB. The MultiReports are registered into HID so they are too not optimized away.

So that takes flash, SRAM and only 3 random SingleReport interfaces work because in AVR core PluggableUSB_ has limit for 7 endpoints a 3 are used by CDC and one by HID object.

sorry. it is some problem with build in Arduino Eclipse plugin (Sloeber). Arduino IDE builds the resulting code without unused endpoints. It is a fist time I see something built differently by Sloeber then Arduino builder. I use Sloeber more then two years.