Звучит как отличный проект! Я бы посоветовал начать с чего-то немного более простого, поскольку вы - как вы говорите - «полный n00b». Я не уверен, какое оборудование у вас есть (или имеется в виду), но для начинающего я бы посоветовал STK500 . Это доска для разработки, которая очень хорошо поддерживается как в Linux, так и в Windows и даст вам максимальную гибкость. Он поставляется со встроенными светодиодами и переключателями для ваших проектов, но вам понадобится микроконтроллер. И для этого я рекомендую ATMega32 , отличную многоцелевую ИС, которая также хорошо поддерживается и имеет много документации в Интернете.
После того, как вы их получите, я предлагаю вам заняться разработкой под Linux с помощью avr-gcc (не забудьте также установить avr-libc). Если вы используете Ubuntu, легко получить все необходимые вам пакеты:
% sudo apt-get install gcc-avr avr-libc avrdude
Это должно заставить тебя работать. Я бы порекомендовал поискать ваши первые программы в поисках помощи, но другим хорошим ресурсом являются онлайн-материалы для этого класса в Корнелле .
Этого достаточно, чтобы промокнуть ногой с помощью микроконтроллеров AVR и средств разработки. Небо - это предел на тот момент, но, поскольку вы сказали, что хотите подключиться к USB, я бы предложил использовать превосходную инфраструктуру V-USB , чтобы ваш ATMega32 выступал в качестве устройства USB. После этого, как говорится, шаги по переключению светодиодов - это просто пирог:).