Спасибо, вернул EXTI->IMR=EXTI_IMR_MR18; Запретил suspend в смысле поправил usb_pwr.c
//__IO bool fSuspendEnabled = TRUE; //было так, уход в сон при неактивности на шине
__IO bool fSuspendEnabled = FALSE; //теперь так, нефиг спать, будем жечь энергию
//void USBWakeUp_IRQHandler(void){EXTI_ClearITPendingBit(EXTI_Line18);} //в оригинале сброс запроса на прерывание через SPL
void USBWakeUp_IRQHandler(void){EXTI->PR=EXTI_PR_PR18;} //так оно понятнее)