2020 год однозначно можно назвать годом Zoom. Такого количества онлайн-встреч, кажется, не было никогда. И в начале 2021 пока изменений не видно. Но есть способы разнообразить это и заодно немного повеселиться. Эта кнопка аварийного выхода из Zoom позволяет мгновенно выйти из конференции. Она проста в изготовлении и требует очень небольшого опыта работы с электроникой. Я сделал её, потому что я всегда искал кнопку выхода в нижней части экрана и, казалось, всегда был тем человеком, который уходил с каждого собрания последним. Теперь, когда я сделал кнопку аварийного выхода, я могу уйти с любого собрания Zoom как чемпион. Я бы сказал, что качество моей жизни улучшилось на 357 % (плюс-минус).
Запчасти:
(X1) Блок аварийной кнопки.
(X1) Контроллер Adafruit Trinket M0.
(X1) Микро-USB кабель.
(X2) 22AWG M4 Вилочная клемма.
(X2) 6-дюймовые многожильные провода.
(X1) Кнопка мгновенного действия (опционально).
Инструменты:
(X1) Паяльник.
(X1) Инструмент для зачистки проводов.
(X1) Отвёртка.
(X1) Канцелярский нож.
Шаг 1. Установите программное обеспечение
Этот проект предполагает, что у вас есть некоторые практические знания об Arduino. Тем не менее я остановлюсь на процессе установки программного обеспечения.
Прежде всего загрузите Arduino IDE, если вы ещё это не сделали.
Затем вам нужно будет добавить Adafruit Trinket M0 в Arduino IDE. Самый простой способ сделать это – следовать инструкциям по установке на странице Adafruit.
Наконец, настройте плату следующим образом
Tools > Board > Adafruit Trinket M0.
Tools > Port > /dev/cu.usbmodem (или похожие).
Шаг 2. Запрограммируйте контроллер
Загрузите в контроллер следующий код:
// ******************************************************
//
// Code for quitting Zoom quickly
//
// Designed for Adafruit Trinket M0
// by Randy Sarafan
//
// For more info check out:
// https://www.instructables.com/Easy-Zoom-Quit-Button/
//
// ******************************************************
// Add the keyboard library
#include <Keyboard.h>
void setup() {
// Configure Pin 2 as input switch.
// Triggered when connected to ground.
pinMode(2, INPUT_PULLUP);
// Start running the board as a virtual computer keyboard
Keyboard.begin();
}
void loop() {
// Check for a button press event
if (digitalRead(2) == LOW) {
// Press command w and wait 1/10 second
Keyboard.press(KEY_LEFT_GUI);
Keyboard.press('w');
delay(100);
// Release all keyboard keys
Keyboard.releaseAll();
// Press the return key and wait 1/10 second
Keyboard.press(KEY_RETURN);
delay(100);
// Release all keyboard keys
Keyboard.releaseAll();
// Wait for the pushbutton to be released before resuming
while (digitalRead(2) == LOW){
delay(1000);
}
}
}
Шаг 3. Присоедините разъёмы
Отрежьте два провода. Предпочтительно, чтобы один был чёрным (для заземления), а другой – любого другого цвета, который вам нужен.
Зачистите один конец каждого провода и обожмите клеммы вилки на концах каждого из них.
Шаг 4. Припаяйте провода.
Припаяйте чёрный провод к земле.
Другой провод припаяйте к контакту 2.
Примечание: если вы не умеете паять, вы можете узнать, как это сделать, в моей инструкции «Введение в пайку».
Шаг 5. Вставьте USB
Найдите резиновую втулку корпуса.
С помощью лезвия бритвы сделайте небольшую прорезь, чтобы пропустить через неё конец USB-кабеля, а затем сделайте это.
Шаг 6. Подключите USB
Установите резиновую втулку в корпус, а затем подключите кабель USB к контроллеру Trinket M0.
Шаг 7. Замените кнопку (необязательно)
Блок аварийного выключателя поставляется с блокирующим выключателем. Это означает, что, когда вы нажимаете на него, кнопка фиксируется на месте и остается там, пока вы её не повернёте и не отпустите.
Я хотел, чтобы моя кнопка не фиксировалась. Таким образом, я решил заменить её выключателем мгновенного действия с пружиной.
Для этого я просто разобрал фиксирующую кнопку и вынул её из корпуса. Затем я разобрал и вместо этого установил кнопку мгновенного действия.
Шаг 8. Подключите коммутатор
Внутри коммутатора есть два набора соединений. Один – нормально открытый (не подключён), а другой – нормально закрытый (подключён). Мы хотим подключить два провода к нормально разомкнутому контакту. Таким образом, при нажатии кнопки соединение закрывается.
Обычно эти соединения маркированы. В моём переключателе этого не было, но корпус был чистым, и я мог видеть, какое соединение было тем, которое обычно не подключается к клеммам.
Я прикрепил плоские клеммы на печатной плате к этим двум клеммам с помощью крепёжных винтов.
Примечание: не беспокойтесь, если вы ошибётесь. Просто подключите провода к другому набору клемм.
Шаг 9. Закройте корпус
Установите крышку на корпус и закрепите её крепёжными винтами.
Шаг 10. Закройте Zoom!
Чтобы использовать это, просто подключите его к USB-порту.
Когда вы будете готовы выйти с собрания в Zoom, просто нажмите кнопку.
Вот и всё.
Такая кнопка пригодится и на наших вебинарах, которые мы на регулярной основе проводим для наших студентов на всех курсах. На них менторы разбирают со студентами особо сложные темы, попутно отвечая на вопросы. Неважно, какое направление вы выберете — Этичный хакинг, Data Science или Machine Learning — на каждом из них вы найдёте современную программу и внимательную службу поддержки.
Узнайте, как прокачаться в других специальностях или освоить их с нуля:
Другие профессии и курсы
ПРОФЕССИИ
КУРСЫ
RiseOfDeath
Вообще ужасная статья — пункт 1-2 (т.е. суть вопроса) описана «поставьте какую-то прогу и залейте какую-то прошивку в ардуинку), а 3-10 простыня картинок с текстом „как присобачить два контакта платы к кнопке и закрутить винты на корпусе“, а по сути вопроса в ничего не сказано. В общем статья уровня радиокружока для школьников.
Как это работает вообще? Я правильно понимаю что программа отправляет через виртуальный компорт „w“ и „backspace“ или она что-то другое делает? А как и почему это закрывает зум? А будет-ли работать если у зумовского окна нет фокуса?
Я уж молчу что плату и USB-кабель нужно закреплять (да хоть клеем приклеить к корпусу), ибо в текущем виде это даже для наколенного колхоза не стыдно.
Ну если у вас все вебинары такие, то да, такая кнопка действительно на них пригодится.
dmitryrf
Плата прикидывается клавиатурой и при нажатии на кнопку отправляет command + w. Будет ли работать без окна в фокусе — не знаю. На днях была аналогичная статья для кнопки mute, там говорилось про глобальные хоткеи, которые работают без фокуса.
c_kotik
Аналогичная статья опубликована:
RiseOfDeath
А, теперь понятно.
p.s
Я не заметил что это перевод, тогда бессмысленно все эти вопросы задавать. (@НЛО, мож эту плашку как-то позаметнее делать?)
p.p.s.
К стати в комментариях к оригиналу резонно заметили, что это маковский хоткей, а на винде он ALT+q.
Romiro_Orimor
А я, блин, как дурак брал рабочую плату от убитой клавиатуры и замыкал кнопкой контакты на нужных выводах соответствующие комбинации клавиш, а оказывается для этого сейчас покупают платку за $18. Вот это технологии…
karabanov
Как-то дорого $18 долларов. Arduino nano ?300 стоит.
А есть ещё Arduino spark (точно не помню название), она ?100 максимум...
GennPen
Digispark на Attiny85. К ней даже USB не нужно прикручивать, свой имеет, только провода от кнопки подпаять.
karabanov
Да.
Romiro_Orimor
около $18 амазон выдал цену Adafruit Trinket M0 для меня, хотя по ссылке из статьи за $8.95 хмм…
Нормально для поиграться с «кнопкой выхода» и потом ещё где-нибудь применить.
На такие однозадачные вещи даже жалко платку за пару баксов тратить при наличии пары потрёпанных клавиатур в каждом офисе.
crustal
А много здесь таких, кто не может себе позволить купить мышку с программируемыми кнопками, если ему вдруг понадобилась отдельная кнопка для какого-то действия? Зачем нужно городить весь этот огород, непонятно. Меньше тысячи рублей цена вопроса наверное.
Paskin
Разве что те, которые пользуются планшетами и телефонами. У остальных не только мышка — но и клавиатура есть с shortcut-ами.
Picard
Это делается затем же, зачем запускается Doom на осциллографе — just for fun.
VT100
6' диаметр провода для подключения кнопки. У меня всё. Вся кровь из глаз вытекла на этом месте…
Этому трешу не место на хабре. И переводчику, вероятно, — тоже.
numark
Не могу удержаться…
irishmann
Весна на Хабре: статейки из дзена, низкосортные переводы.
Шта?werwolflg
Могли бы тогда уже и небольшой клиент сделать, который бы при нажатии на кнопку убивал процесс, тогда зум закрывался бы в любом случае, а не только при активном окне.
slavius
Нужнее кнопка не выхода, а отключения трансляции своего звука+видео. И включения обратно. Сразу оба. И без выхода. И если активно не окно зума. Как тебе такое, randofo?
werwolflg
На Windows с помощью простой утилиты с использованием Windows UI Automation можно реализовать.
G1yyK
на андроиде, через синезубую кнопку, было бы вообще огонь