Нуууу .... Руки опустили зря. Ежели сдаваться и отступать, то где же сладость побед тогда добывать?

А если по существу, то прошивку тут никто, естественно, не видел и устройство в руках не держал, НО я практически уверен, что основной трабл в схеме Вашего устройства, реализации, ежели угодно, а конкретно в выходных каскадах.
Что бы я сделал в этой ситуации?
Закурил (не пропаганда

) ....
Наморщил бы лоб ... Параллельно пытаясь сделать лицо умным.
И если, описывая свои достижения в этом направлении, Вы никого не обманули, то пришел бы к выводу, что устройство функционирует. Пускай на 50%, но тем не менее.
Значит идея живая (это было сразу понятно), осталось допилить реализацию.
Внимание! Мысль.
Я склонен предположить, что устройство не успевает подать на свои выходы сигнал лежащий в пределах нормативов. Не успевает до того момента, как моторный уже успевает это отмониторить.
Возможное решение - доработка выходных каскадов.
Огрехи в ПО для PICа то же весьма и весьма вероятны.
Что, как мне кажется, Вы должны сделать? Вам нужно взять нормальный осциллограф и отследить, что происходит с сигналами на входе устройства и на его выходе, в какие моменты это происходит и при каких условиях. После анализа полученных Вами данных, я практически уверен, Вы сразу поймете куда копать.