2 usb кнопка

Содержание

2 usb кнопка зачем потребуется нанять профессионала

Вот диаграмма для него с sparkfun.com:

Дешевая USB кнопка для PC

2 usb кнопка

Мысль — запускать скриптик по нажатию физической кнопки, присоединенной к компу.

кнопка

  • Arduino nano — 1400 р (ориг), 300 р (не ориг). (плюсы: можно навесить много кнопок на 1 usb порт; минусы: нужно паять + осознать как она работает и на компьютере придется держать повсевременно программку, которая будет ожидать нажатия кнопки)
  • USBbutton — 780 р (плюсы: все прекрасно оформлено и изготовлено; минусы: высочайшая стоимость и она win-only)
  • U-HID Nano — 1150 р (плюсы: есть софт; минусы: высокаяя стоимость + нужно паять)
  • Usb устройство (практически хоть какое) — 0 — 100 р (плюсы: практически 0 себестоимость, не нужно программировать; минусы: linux, вероятная пайка, повреждение usb кабеля)

Все опыты я проводил на Raspberry PI с debian на борту (поточнее прошивка raspbmc).
Для реализации подойдет хоть какой дистрибутив, испльзующий udev для отслеживания системных устройств.

Устройство, на базе которого будет делаться кнопка может быть хоть каким: древняя полусломаная usb клавиатура, мышка, камера ну и вообщем все что цепляется по USB и может быть опознано системой.
На маркете отыскал мышь за 70 руб, что может служить кнопкой и полностью конкурентоспособно с другими вариациями.

Делаем кнопку

2 usb кнопка

Схема работы кнопки ординарна до бесчинства
принципиальное замечание по схеме подключения: см P.S.101 в конце статьи

Пока кнопка нажата — вся цепь замкнута, на устройство подается питание и система лицезреет, что подключено новое устройство.
Когда кнопку отжимаем, то происходит разрыв цепи и устройство теряется из системы.
Эта логика и есть главная во всем процессе разработке кнопки.

Я разобрал старенькую клавиатуру и добыл из нее

микросхему

2 usb кнопка
В одной из версий этой кнопки я использовал замыкание определенных контактов на клавиатуре
чтоб эмулировать нажатие какой-нибудь кнопки и была в фоне запущена программка, которая ждала нажатия этой кнопки.
2 usb кнопка

2 usb кнопка

Проверка работоспособности кнопки:

Кратчайшая теория udev

Процесс udevd выслеживает подключение/отключение аксессуара и делает файл устройства в директории /dev/ (совершенно образное разъяснение, для любителей подробностей смотри ссылки в конце статьи)
Во время подключения устройств udevd инспектирует перечень правил в директории /etc/udev/rules.d/
Правила могут жить как и в одном файле так и в нескольких.
Сделаем файл и добавим правило:

pi@raspbmc:~$ cat /etc/udev/rules.d/20-usb_button.rules ATTRS=="LITEON Technology USB Multimedia Keyboard", ATTRS=="usb-bcm2708_usb-1.2/input0", ACTION=="add", RUN+="/bin/sh /home/pi/usb.sh" 

в debian нет необходимсто перезапускать udev после конфигурации правил, все происходит автоматом.

Это правило производится только когда соблюдаются все условия:

ATTRS==«LITEON Technology USB Multimedia Keyboard» (имя присоединенного устройства совпадает)
ATTRS==«usb-bcm2708_usb-1.2/input0» (устройство подключено в конкретный USB порт. Мне это необходимо, тк использую 2 кнопки, сделанные из одинаковых клавиатур)
ACTION==«add» (правило работает только когда устройство тольок что добавлено, еще есть параметр «remove«. Если не указать Action, то скрипт будет постоянно запускаться, пока подключено устройство)
RUN+=»/bin/sh /home/pi/usb.sh» (собственно наш скрипт, который запускается по нажатию кнопки, без /bin/sh так и не запустился, также см P.S.01 ниже)

Список атрибутов можно узнать следующим образом:

pi@raspbmc:~$ udevadm info -a -p $(udevadm info -q path -n /dev/input/by-path/platform-bcm2708_usb-usb-0\:1.2\:1.0-event-kbd) looking at device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.0/input/input107/event0': KERNEL=="event0" SUBSYSTEM=="input" DRIVER=="" looking at parent device '/devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.0/input/input107': KERNELS=="input107" SUBSYSTEMS=="input" DRIVERS=="" ATTRS=="LITEON Technology USB Multimedia Keyboard" ATTRS=="usb-bcm2708_usb-1.2/input0" ATTRS=="" ATTRS=="0" . 

где /dev/input/by-path/platform-bcm2708_usb-usb-0\:1.2\:1.0-event-kbd — адрес устройства

адрес устройства в системе можно узнать в момент подключения устройства:

pi@raspbmc:~$ udevadm monitor --env |grep DEVLINKS DEVLINKS=/dev/input/by-id/usb-LITEON_Technology_USB_Multimedia_Keyboard-event-kbd /dev/input/by-path/platform-bcm2708_usb-usb-0:1.2:1.0-event-kbd 

для дебага я использовал правило:

SUBSYSTEM=="usb", ATTRS=="c312", SYMLINK+="ABC" 

и проверял создался ли симлинк устройства /dev/ABC

Итог

Вот и все. Мы получили кнопку, по нажатию которой запускается скрипт в системе.

стоимость:
старая клавиатура — 0р
кнопка — 10р
корпус — 0 р

И самое главное что такая кнопка не требует знаний микроконтроллеров и особого умения паять, удобна и доступна каждому 🙂

P.S.00 про мой корпус для кнопки.

2 usb кнопка

Обезьяна на пружине и если надавить на голову, то обезьяна давит хвостом кнопку, что и приводит к замыканию цепи

P.S.01 Наткнулся на интересный баг и не смог забороть: скрипт указанный в правиле запускается 2 раза. Может кто подскажет?
P.S.10 Кнопку необходимо держать около 2х секунд, потому что необходимо дождаться инициализации устройства в системе
P.S.11 Если решите повторить проект с какими либо измененими, настоятельно рекомендую хотя бы пролистать список литературы
P.S.100 Скрипт на python для работы с udev github.com/bockro/misc usb_checker.py
P.S.101 Важное замечание от Blangel

Вы сделали замыкание-размыкание провода +5 В у USB, однако, Data лучше бы тоже замыкать/размыкать.
Давайте вспомним историю — зачем в USB-коннекторе сделаны удлиненными контакты +5 В и GND?
Во-первых, чтоб USB-устройство успело сделать программный сброс и быть готовым к получению и отправке данных.
Но есть и во-вторых — старые компьютеры (а особенно веселые материнки времени Pentium 4 на ICH5) грешат плохой реализацией USB-шины, в конечном итоге есть, что комп зависнет или перезагрузится.
А еще бывают сильно дешевые глючные китайские устройства с похожим эффектом и расчетом на подключение только через USB-коннектор.
Так что оптимальнее было бы замыкать и размыкать 3 контакта — +5 В и Data ± (причем питание замыкать до данных). Сделать это можно, например, при помощи 2 советских выключателей, которые ставились в торшер, только у одного надо кнопку подпилить на 3-5 мм…
В вашем случае можно и не делать, но хотя бы упомянуть про это в статье надо, а то среди комментариев я ничего подобного не заметил.

Ссылки
  • [RU]Отличный перевод на opennet про использование udev
  • [ENG]Главный manual по написанию udev правил
  • [ENG]Презентация про udev. Много примеров и пояснений
  • [RU]Хабр: использование udev для автоматического монтирования устройств
  • man udev

Спасибо, что дочитали до конца.

Usb Программируемый

2 usb кнопка

2 usb кнопка

Toowei кнопочный мини-переключатель, мгновенный водонепроницаемый переключатель 12 мм 50 шт./корт. (черная кнопка)

1,14 $ — 1,19 $
Min Order: 200 шт.
2 yrs

2 usb кнопка

Подключение usb кнопки в штатную заглушку приора 1(для непытных пользователей) просто

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

#Лада калина 2. Установка usb-зарядного устройства на 2 слота вместо заглушки кнопки.

2 usb кнопка

Лидер продаж, автоматический сброс, 1NO, компактный супер короткий корпус, водонепроницаемая кнопка, мгновенный металлический кнопочный переключатель 22 мм

Самые низкие цены за 90 дней
1,18 $ — 1,32 $
Min Order: 2 шт.

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

Высокопрочный водонепроницаемый металлический кнопочный переключатель с плоской головкой, 16 мм, 18 А

Самые низкие цены за 90 дней
0,86 $ — 0,96 $
Min Order: 2 шт.
Shipping per piece: 12,50 $
9 yrs

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2×4 3×3 3×6 4×4 4,5×4,5 5,2×5,2 6×6 12×12 мини тактильный переключатель 2*4 3*3 3*6 4*4 4,5*4,5 5,2*5,2 6*6 12*12 мм DIP SMT SMD

0,01 $ — 0,04 $
Min Order: 1000 шт.

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

Toowei ip67 водонепроницаемый кнопочный переключатель с подсветкой, мини 12 мм пластиковые кнопочные переключатели со светодиодной подсветкой (красный)

1,30 $ — 1,40 $
Min Order: 200 шт.
2 yrs

Related Searches

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

Программируемая usb Звуковая кнопка записываемые звуковые чипы зуммер звуковая кнопка

1,00 $ — 1,89 $
Min Order: 100.0 акров

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

Программируемая степлер-Кнопка usb

1,10 $ — 9,99 $
Min Order: 3 шт.

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

2 usb кнопка

Пользовательские говорящие кнопки usb , программируемые, легко

Min Order: 1000 шт.
5 yrs
Go to Page Go
About products and suppliers:

Включение. usb программируемый с Alibaba.com в дом может значительно облегчить жизнь. Представьте, что вам не надо вставать с дивана, чтобы включить или выключить свет. Есть много разных типов. usb программируемый, и любой из них предлагает разные типы функций.

Точное знание того, на что способны разные варианты, может помочь покупателям сузить круг выбора и найти лучший вариант.

При поиске. usb программируемый от Alibaba.com, подумайте о совместимости их с общим дизайном и потребностями дома, о котором речь идет. Подумайте, насколько легко их установить и можно ли это сделать без посторонней помощи или зачем потребуется нанять профессионала. Почти всегда у пользователей должны быть все инструменты и оборудование, необходимые для самостоятельного выполнения работы.

Покупателям также следует подумать о том, стоит покупать. usb программируемый содержат дополнительные функции, такие как таймеры, дополнительные настройки и программы энергосбережения, которые могут улучшить их работу. Умные варианты могут сэкономить домохозяйствам много энергии, также снизить их углеродный след за счет энергоэффективных средств. Другие варианты могут подключаться к более чем одному прибору или оборудованию одновременно для дополнительного удобства.

Возможность управлять всем с одного портала — это довольно роскошь.

Просмотрите Alibaba.com и найдите ряд. usb программируемый, который помогает облегчить домашние дела. Находить на веб-сайте продукт, который соответствует потребностям и бюджету потребителей, стало удобно.

USB-педаль для переключения между компьютерами

2 usb кнопка

2 usb кнопка

Я одновременно использую несколько ноутбуков. На них запущены Linux, OpenBSD, macOS и ChromeOS. Я предпочитаю работать на клавиатуре вслепую и использую навигацию с помощью клавиш. Мне нужно было переключаться между ноутбуками.

И мне хотелось делать это, не убирая руки с клавиатуры. Что все-таки делать? Мастерить!

  • 3 порта USB-A (мама).
  • 2 кабеля USB-A (папа-папа).
  • 1 кабель удлинения USB.
  • 1 фиксирующийся выключатель 4PDT.
  • Монтажный провод.
  • Припой.
  • Термоусадка.
  • Мешок пластика для 3D-принтера.

Схема

«Схема» мало что делает – это просто четыре провода, между которыми идёт переключение. Механизм работы USB не используется.

2 usb кнопка

USB-кабель, выходящий сверху, идёт на клавиатуру. Два других идут каждый к своему компьютеру.

Немного об USB

Я знал, что это значит «универсальная последовательная шина», но не понимал до конца. В ближайшее время я изучаю аналоговую электронику. Изучение продвигается медленно, но прогресс есть. Одна из изучаемых тем – последовательные коммуникации.

И хотя в схеме педали это не учитывается, когда я узнал, что USB – просто один из вариантов последовательной шины, это сняло с USB покров волшебства – из-за чего она становится волшебной совсем по другой причине. Так как теперь я чувствую себя волшебником.

Для USB rev. 1.1 и 2 провода расположены так:

  • 5V (питание)
  • D+ (приемник)
  • D- (передатчик)
  • GND (земля)

О переключателях

Переключатели – это крутая штука. Я больше не буду воспринимать их, как нечто само собой разумеющееся. Представляя себе переключатель, я обычно думал, что он размыкает контур или замыкает, как показано на диаграмме с сайта electronicshub.org:

2 usb кнопка

Но мне было нужно не только лишь это. Мне нужно было переключать по четыре провода для USB-клавиатуры за один раз. И мне не надо было отключать ни один из четырёх проводов. Мне нужно было, чтобы:

  • 4 провода были подключены к компьютеру А.
  • Когда я нажимаю на переключатель, эти четыре провода подключаются к компьютеру Б.
  • После повторного нажатия они вновь подключаются к компьютеру А.

Такой переключатель, который представлял себе я (типа выключателя света в комнате) известен, как один полюс, одно направление [Single Pole, Single Throw — SPST].

Вот диаграмма для него с sparkfun.com:

2 usb кнопка

А мне был нужен переключатель 4PDT – четыре полюса (4 провода), два направления (переключение между двумя положениями), как на следующей диаграмме:

2 usb кнопка

Оказалось, что это очень распространённый вариант, используемый… в гитарных педалях! (помните, я говорил, что не хочу снимать руки с клавиатуры).

Вот такой переключатель я заказал с mammothelectronics.com:

2 usb кнопка

Замечание касаемо гитарных педалей: важно, чтобы переключатель был фиксирующимся. Это значит, что он сохраняет подключение, когда вы убираете ногу. Это важно, так как было бы неудобно держать ногу на педали постоянно для того, чтобы клавиатура работала с определённым компьютером.

Прототип: баночка из-под паштета

2 usb кнопка

Да. Для прототипа я взял баночку из-под паштета и прорезал в ней отверстия. И, да – это термоклей держит USB-порты.

2 usb кнопка

Вот. Так. Всё. Просто.

2 usb кнопка

Также некрасиво и непрочно. Прототип «работал», но ежедневного использования он бы не выдержал. Также компьютеры иногда не распознавали клавиатуру, и мне приходилось пару раз переключаться туда-сюда.

Правильная пайка

В процессе изготовления этой схемы пострадало несметное количество USB-портов. Но в процессе я здорово прокачал навыки пайки. В процессе припайки крохотных проводов к крохотным контактам очень помогла система «третья рука» с магнитными захватами.

2 usb кнопка

После пары подходов я поумнел и начал использовать термоусадку, чтобы мои комки припоя не касались друг дружку (из-за вибраций при нажатии на педаль).

2 usb кнопка

Да, да. Очень «профессионально».

Моделирование корпуса для 3D-печати

Также в ближайшее время я обучаюсь 3D-моделированию и печати. Один из главных усвоенных мною принципов – если нужно распечатать детали, совпадающие вместе, их недостаточно измерить штангенциркулем. Нужно ещё распечатать пробные детальки, чтобы убедиться, что они совпадают и в реальности.

2 usb кнопка

2 usb кнопка

Разъёмы для USB-портов

С ними пришлось помучаться, особенно из-за того, что я не знал, зачем нужны эти маленькие металлические штырьки на конце портов. Оказалось, они удерживают пластик в металлическом рукаве.

2 usb кнопка

Я сначала пробовал использовать их для удержания порта в разъёме – на следующем фото их видно, с обеих сторон от контактов:

2 usb кнопка

Потом я попытался засунуть в этот порт кабель, и знаете, что? Я выдавил внутренний пластиковый корпус порта из металлического корпуса.

Ну ничего, можно просто сделать там сужение, и это не повторится.

Главный корпус

Я думал схитрить и оставить корпус открытым снизу. Чтобы можно было менять эти дешёвые USB-порты, когда они сломаются (а я ожидал, что это будет происходить постоянно). Однако это решение оказалось плохим; открытые провода – прекрасный способ разломать пайку или уничтожить контакты.

Зная, что дно у него всё же будет, я сконцентрировался на высшей части корпуса, поскольку мне нужно было определить:

2 usb кнопка

  • Удержит ли она на месте порты и переключатель.
  • Достаточно ли она высокая, чтобы в неё поместились провода от переключателя.

На фото у верхнего левого нет сужения, препятствующего от проталкивания портов. Тот, что слева внизу, получился хорошим, но у него не было отверстий для присоединения дна.

У модели справа есть отверстия для винтов. И вот я подготовился к проектированию и печати дна корпуса.

Днище

Я решил не заморачиваться – простое дно, с отверстиями для винтов, совпадающими с теми, что есть на высшей части. Ну и ещё добавить углубления, чтобы винты вошли заподлицо.

Если у вас в руках молоток…

Хотел бы я, чтобы у меня осталась видеозапись моих попыток 3D-моделирования. Если вам знакомы CAD-системы, то из текста вы поймёте, насколько неуклюжий подход я избрал.

Я выдавил всё дно из главного корпуса, а потом сделал вырез в 0,5 мм толщиной, чтобы отделить от него дно. Это было криво, но результат дало. Вообще, мои навыки 3D-моделирования можно описать так:

  • Рисовать прямоугольники и круги.
  • Надавить/вытянуть.

Проблемы с принтером решились с помощью долгой настройки и правок. Сначала у меня начали получаться неудачные результаты (от небольших искривлений до полного отсутствия сцепления со столом). Поэтому качество деталей разнилось от приемлемого до комичного.

2 usb кнопка

После ручной подстройки уровня стола и высоты сопла я перешёл на использование перфорированной подложки (чтобы рафт был частично соединён со столом) и задал предварительный прогрев стола в течение более 15 минут. Успех! Плоские рафты, никаких искривлений.

Добавляем поддержку USB-портов

Места для портов получились слишком высокими, туда могла попасть грязь. Не думаю, что она повредит, однако грязь – это плохо (педаль стоит на полу, а у нас кошки).

Я добавил столбиков, входящих в слоты, чтобы они держали USB-порты, и закрывали отверстия.

2 usb кнопка

Мне почему-то показалось хорошей идеей сделать в высшей части корпуса «колодцы». Не думаю, что они будут помогать или мешать мне, так что я их оставил.

Более эргономичная крышка для кнопки

Я скачал и распечатал крышку для кнопки, чтобы её было удобно использовать как в обуви, так и без.

Заключение

2 usb кнопка

Успех! Я использую устройство ежедневно, и оно доставляет мне радость. И поскольку я потратил время на тщательную пайку, контакты получились достаточно надёжными для того, чтобы я смог использовать USB-хаб для подсоединения… мыши. Ну, знаете, если она прям очень сильно понадобится.

Среди потенциальных улучшений могут быть:

  • Резиновая прокладка снизу.
  • Светодиодная подсветка, обозначающая, какая сторона сейчас работает.
  • Гидравлика.
  • Сабвуфер.
  • Периферия
  • DIY или Сделай сам
Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Что будем искать? Например,Человек

Мы в социальных сетях