1) Программирование (написание алгоритмов) - это самая основа, без нее ты никуда не выйдешь в программировании контроллеров.
Этому пункту, как правило, сопутствует практика в виде изучения одного из языков программирования, и тут трудно что-то однозначно посоветовать. Кто-то пишет на JS, кто-то по-старинке на C, кто-то использует внутренний язык платформы (актуально для ПЛИС).
Моя рекомендация - С.
2) Если ты хочешь создавать свои приборы, тебе придется освоить курс электротехники (знать пассивные элементы, активные элементы). Даже если ты безумно богат и планируешь что-то создавать на ПЛИС, тебе все равно стоит освоить теорию.
Этому пункту сопутствует практика паяния, трассировки печатных плат и так далее - это сугубо практический навык, берешь информацию на форумах и действуешь (иных вариантов нет). Ошибки будут, не унывай).
Будут вопросы - пиши, с радостью отвечу!