Pull to refresh

Comments 38

Дожили.

Вместо обычного Digispark с Attiny, который включается в USB и эмулирует hid, чел заюзал ATmega32U4!
А чего сразу не Rasberry?

Можно бы было и вообще PC в ITX собрать, и его заюзать, че мелочиться-то…

Я уж молчу, что можно было-бы просто замэппить нужную клавишу с обычной клавиатуры и написать очень простой хук, который при нажатии на нее, отсылал бы нужное сочетание.
Так вроде там пробел звук включает. Достаточно держать микрофон выключенным, а когда говоришь нажимать пробел.
Верно. Но это не сработает, если окно Zoom не активно.
Зачастую все параллельно работают, а зумец сбоку висит где-то.
ATmega32U4 хороша тем, что у неё уже есть аппаратный USB. На тиньке надо эмулировать USB-HID, на что её возможностей едва хватает. А здесь ещё обратный канал по USB-UART. Хотя, учитывая что всё равно требуется софтовая поддержка со стороны компьютера, можно было использовать только USB-UART без эмуляции HID.
Посыл правильный, но высказан не корректно и токсично. Легко отбить охоту писать не только у автора, но и у всех кто ваш коммент прочитает.
Ну… Последние несколько тысяч лет люди высказывают соплеменникам коллегам свои замечания о неправильных действиях этих самых соплеменников коллег в жёсткой и резкой форме как раз с целью отбить охоту делать неправильно.
Раньше ещё и сопровождали постукиванием по разным частям тела, чтобы доходило быстрее.
Вначале отошли от такой замечательной практики, а теперь и простой комментарий токсичным считают :)
A почему бы и не на Raspberry? это же не массовое и даже не серийное производство. Поставил поигрался, непонравилось — забрал комплектующие в другой проект. Может вообще проект в реале не понравится. На одном распбери зеро я могу 100 таких проектов сделать. Не для того чтобы юзать, а просто так пазырить
Зачем ужиматься, если бюджет позволяет поставить хоть ту же raspberry pico?

Если в тираже это играет существенную роль, то для самоделок — это вообще копейки. И главный вопрос — с чего бы автор должен учитывать ваши личные мировоззрения?
Вместо обычного Digispark с Attiny, который включается в USB и эмулирует hid, чел заюзал ATmega32U4!


Можете пояснить, почему это было бы лучше?
Оо, вот это жесть. Про микроконтроллер молчу, но что за программная жесть? Неужели кроме NodeJS больше никак не сделать такой мелкую прикладуху для PC? Реально для этого надо тратить море ресурсов, ставить NodeJS для работы и т.д.? Такое реализуется даже на C/C++ элементарно.
он это сделал чтобы кнопка знала о том включен или выключен звук в программе, чтобы правильно зажигать светодиодики… только вот зачем??? это осталось загадкой.

чтобы была полноценная синхронизация, это как раз понятно

Я говорил про использование NodeJS. Есть куда более подходящие инструменты для этого. В данном случае можно было потратить несколько дополнительных часов от силы, чтобы сделать это же самое на .NET к примеру.
Но зачем? Видимо автору ближе JS, он его и использовал. Меня больше смущает то, какое кривое архитектурное решение получилось в целом. Он использует USB-HID в контроллере, чтобы эмулировать нажатие клавиш, которое прописано в Зуме для отключения микрофона. Но это не даёт обратной связи, поэтому он использует апи зума. Но делает это не напрямую, а через какую-то отдельный скрипт. А чтобы устроить периодический опрос использует NodeJS. Плюс для передачи данных обратно контроллеру — дополнительный канал USB-UART.

Почему бы тогда не общаться с Зумом прямо из JS, все данные передавать и получать через UART? И в таком решении я ничего страшного в NodeJS не вижу. Почему бы и нет? Там удобно писать асинхронный код и обеспечивать взаимодействие по https. И кроссплатформенно.
Да, кривость решения сложно отрицать. Просто учитывая, сколько самопальных клавишных блока есть и сколько там клавиш, можно сказать одно, в изучении электроники он добрался до уровня соединения готовых модулей проводками и всё.
Но это гораздо лучше, чем ничего не делать совсем.

Тем более, если есть возможность соединять блоки проводками и программировать это на JavaScript.
Дело не в том, что бы что-то делать. Обычно PET проекты делаются не для тяп-ляп, а для реального морального удовольствия. И изучение нового языка программирования даёт знатное удовольствие. Я вот занимаюсь электроникой ну где-то месяца 4, до этого знал название электронных компонентов, но тонкостей работы не знал. К примеру считал, что транзистор = реле, как же я заблуждался. Разобрался с работой базовых компонентов, типовые схемы подключения, как работают усилители и т.д. И уж если я уж знаю кучу ЯП, в том числе и C/C++, мне нет смысла изучать язык, но я углубился в изучение компонентной базы. В качестве PET проекта в итоге уже закончил переключатель аудиовыходов (1 вход, несколько выходов), работает от пульта ДУ телевизора, при этом из готовых модулей только Arduino Nano, да, пока не готов к разводке, хотя планирую на следующем проекте уже частично разводить сам под микроконтроллеры.
Аппаратная кнопка выключения микрофона выглядит как тумблер, работает как тумблер и является тумблером. Всё ещё проще. Нужно пропустить микрофонный провод через тот самый тумблер и банально замыкать его в одном положении переключателя.
Цена вопроса — стоимость тумблера.
Электронщики, блин. Простейшую задачу нужно решать микроконтроллерами и программированием.
Нужно пропустить микрофонный провод через тот самый тумблер и банально замыкать его в одном положении переключателя
Безусловно, решение самое правильное, но только при условии «отдельного» микрофона. Если это гарнитура (а автор, вроде, нигде не говорит, что у него отдельный микрофон), то всё не так радужно (резать весь провод, чтобы запаять наушники обратно?). А если это USB-микрофон, так и вовсе не стоит контакт рвать.
Да, даже примитивный аналоговый микрофон рвать — тоже может быть опасно. Кто его знает как AGC (если он включен) сойдёт с ума после тишины, и какой громкости щелчок улышат собеседники при включении…
C гарнитурой проблема решается методом переходника 3,5 — тумблер/кнопка с фиксацией/клавишный переключатель — гарнитура.
А вот для микрофона ноутбука или вебкамеры придётся делать аппаратное решение.
Например, вторую мышь распотрошить, и её плату и кнопку использовать в качестве готового HID устройства. Или клавиатуру.
Но где тогда простор для творчества?
Ведь любое простое решение ВСЕГДА можно усложнить.
Но сложное — НЕ ВСЕГДА можно упростить.
Гарнитуры давно обычно BT, вероятно про это речь.
Микрофон может быть в беспроводной гарнитуре или встроенный в ноутбук.
UFO just landed and posted this here
Ну тогда расскажите, как можно щёлкнуть аппаратным тумблером при помощи курсора на экране? )

Я ещё один недостаток добавлю, я сейчас не помню точно интерфейс зума, но вроде там тоже статус микрофона у коллег видно. В Google Meet это точно так. Аппаратный тумблер можно использовать только если в самом зуме микрофон включен. И всем остальным будет казаться, что человек что-то все время хочет им сказать.

Проводная гарнитура смотрит на статью с легким недоумением
Картинка
image
Беспроводная гарнитура с поднимающимся для отключения микрофоном — тоже.
Для себя решил задачу именно так.
Беспроводная гарнитура и встроенный мокрофон смотрят на вашу картинку с сильным недоумением.
Не понимаю, почему взъелись на автора, не могу сходу предложить другое решение, где будет так же работать индикация. Какие тумблеры? Какие выносные микрофоны? Переназначение клавиш? Все это не соответствует изначальному ТЗ.

Кстати сам использую KeyBow на три клавиши, работает на малине, хорошо выглядит и не требует софта на стороне компьютера
Фото
image
почему взъелись на автора, не могу сходу предложить другое решение, где будет так же работать индикация

Скорее, на использование в реализации этого решения не очень подходящего инструмента в виде нодЖээс.


KeyBow на три клавиши, работает на малине,

£21 — гмммм


хорошо выглядит и не требует софта на стороне компьютера

И как у вас осуществляется синхронизация состояния? А, полистал интернеты — никак. Ну, это не интересно же.


Вообще, одной кнопки, кажется, мало. Я думаю, что должно быть как раз три. "Тумблер" — кнопка с индикацией и состояними — "постоянно включено"/"постоянно выключено". Кнопка мьют для временного отключения, когда "тумблер" "постоянно включен" и кнопка РТТ для временного включения, когда "тумблер" — офф.
Хотя, если подумать, то мьют/ртт можно объединить в одну — у них непересекающиеся функции. А ещё добавить туда "крутилку" для громкости с нажималкой "плей-стоп". Хмммм… пожалуй, надо бы этим заняться!

Вообще, одной кнопки, кажется, мало. Я думаю, что должно быть как раз три.
И горящая табличка «ON AIR»
В целом, человек придумал себе проблему и решил ее. Его право.
Глядя на фото кажется, что у автора есть по такой кнопке на все случаи жизни

Когда у меня была проблема с фоновым шумом — я просто включил в Discord активацию по кнопке и забиндил её на одну из боковых кнопок на мышке (Forward, если быть точным). Получилось весьма удобно, и не мешало при этом.

В Зуме можно ещё пробелом пользоваться — он позволяет временно включить звук.


То есть вначале звук отключаем, а когда говорим удерживаем пробел. Как на рации.

Я себе похожую штуку делал, но с другими деталями реализации. Платка была arduino nano, вместо кнопки — педаль от швейной машинки (в ней реостат), случайный набор резисторов (подбирал так, чтобы диапазон читаемых значений побольше был). И вместо эмуляции клавиатуры (нано этого не умеет на дев-плате) — пишу в serial моменты включения/выключения (которые находятся в разных точках значений сигнала, включается при 80% нажатии, отключается при 20%, в итоге не нужно дебаунсить). Плюс небольшой скрипт на питоне, читающий этот последовательный порт и говорящий Reaper'у, какой трек нужно замьютить/размьютить (а из него уже звук после всех эффектов отдаётся системе).


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

Должна быть кнопка не mute, а unmute. Микрофон все время выключен. При нажатии на кнопку микрофон включается, при отпускании кнопки выключается. Тогда это будет по-настоящему полезно.

Sign up to leave a comment.