Привет, Хабр! В этой статье хочу поделиться простым но интересным проектом в виде вот такой USB-кнопки:
Зачем и для чего?
По приколу! При нажатии она посылает сигнал левой кнопки мыши и клавиши Enter, таким образом ее можно использовать например при покупках в интернете (навести курсор на "купить" и ударить по кнопке) или чтобы отправить важное сообщение (для этого используется Enter).
Примерно так, да
Что еще умеет?
Еще можно аппрувать pull-request'ы, запускать приложения и вообще любое действие, которое можно сделать с помощью этих двух клавиш :). Кнопка проектировалась удароустойчивой, т.е. бить по ней можно со всей силы и кулаком, она не сломается. Также внутри есть круговая адресная светодиодная RGB лента с тремя режимами:
Яркий красный свет всеми светодиодами - при нажатии
Эффект загрузки (желтый светодиод бегает по кругу) - в течение 10 секунд после нажатия
Эффект "дыхания" - кнопка начинает светиться случайными светодиодами и случайным цветом спустя 10 секунд после нажатия (как режим ожидания)
Видео работы
Инструкция по сборке
Для сборки понадобятся:
3D принтер
Arduino leonardo
Круговая адресная светодиодная лента - необязательно (вот такая)
Кнопка (примерно вот такая)
Термоклей
Провод USB
Все исходники (3д модели и код) находятся тут
Инструкция:
Напечатать все детали - требуются подпорки, для крышки можно использовать динамическую толщину слоя
Установить кнопку в нижнюю часть на термоклей
Установить светодиоды, тоже на термоклей
Припаять провод, кнопку и светодиодную панель к ардуино
Прошить приложенным ардуино скетчем
Приклеить крышку сверху к кнопке
Готово!
Фото внутренностей
Недостатки конструкции и мои просчёты:
Первый просчет довольно очевиден - несмотря на то, что светодиоды цветные, через красную крышку ВНЕЗАПНО поступает в основном красный цвет. Теоретически, если крышку сделать белой, то это будет неплохим светильником.
Второе - из-за особенностей конструкции крышка держится только за счет кнопки. Это не влияет на работоспособность, но из-за этого она немного колеблется за счет люфтов в кнопке. Но зато итоговая толщина кнопки составляет всего 3 см!
Возможные доработки
Переделать модель чтобы убрать люфты
Сделать ее беспроводной
Напечатать белую крышку и сделать RGB лампу
На этом все. Прошло более трех лет с момента публикации прошлой статьи, и вот я решил вернуться в ряды писателей :)
Все ссылки на магазины приведены в качестве примера, автор не получает за них вознаграждение