Передергивал физически - "ошибка дескриптора устройства". Если компилировать с флагом board_build.core = maple, то работает и ведет себя, как вы описали.
1)попробуй Alternate function output 2)закомментируй изменение байта BSRR. просто ради проверить, т. к. модель этого мк в протеусе может быть не полной/кривой