WX-Mouse — это создание, в каком либо корпусе, мышки с уникальным функционалом и отличным качеством работы сенсора. В этой заметке я расскажу как сделать WX-Mouse в необычном корпусе — Nova Slider 600.
У мыши Nova Slider 600 необычный корпус. Мало того что сам корпус как будто слепок с чьей то руки, так еще и провод USB находится с правого боку.
Особенно удивляет боковой ввод USB кабеля. Сначала я отнесся к этому скептически, но попробовав мышку в игре, согласился — такой вариант имеет право на жизнь — кабель, даже такой дубовый как у этой мыши, практически не ощущался.
«Вернемся к нашим баранам» — для тех кто не знает о проекте W-Mouse, несколько слов о нём, чтобы было понятно зачем вообще переделывать работающую мышь.
Основные достоинства и возможности WХ-Mouse:
- Точность работы сенсора — сенсор при сборке, выставляется на высоту наилучшей фокусировки.
- Настройка динамики движения — зависимость чувствительности от скорости. Доступны довольно широкие настройки. Например можно задать параметры dpi и скорости, таким образом, чтобы на низких скоростях движение было попиксельно точным, а на широких движениях (резкие развороты) не нужно было махать мышью на полстола. Получается сочетание высокой и низкой сенсы…
- Возможность использования фильтрации, а также функция настраиваемой угловой притяжки — повышают удобство работы в программах проектирования.
- Выводить видео-картинку работы сенсора, что например, позволяет контролировать фокусировку сенсора.
- Ускорение прокрутки колеса (удобно листать большие страницы).
- Хранение всех настроек (8 профилей) в памяти мыши.
- 8 профилей, индикация каждого, настраиваемой RGB подсветкой.
- Режим работы кнопок Buss-keeper — увеличивает надежность определения состояния кнопки.
Все это делает WХ-Mouse уникальной мышью.
WХ-Mouse делается следующим образом — берется корпус серийной мыши, который удовлетворяет требованиям эргономики и имеет нужное количество кнопок. В этом корпусе оставляются кнопки и оптический сенсор (если он подходит), а также подсветка и прочие рюшечки. Все остальное — родной контроллер, мелкие детали и ненужная часть основной платы выкидываются. Далее в корпус вставляется плата WХ-Mouse (плата WХ и сенсор могут быть объединены, а также есть варианты, когда полностью заменяется родная плата мыши). После этого выполняются соединения от сенсора, кнопок и подсветки с платой WХ, вдувается прошивка WX-Mouse в контроллер и WX-Mouse готова.
Мыши W-Mouse отличаются от других мышей уникальной функциональностью и высоким качеством работы. Как иллюстрация этого утверждения предлагаю комментарий человека, который не так давно стал счастливым обладателем WX-Mouse — ссылка на комментарий.
W-Mouse использует линейку «игровых» сенсоров, фирмы Avago — ADNS 6010, 6090, 3080, 3090, 9500, 9800
WX-Mouse используется топовые сенсоры PMW-3360 и PMW-3389.
Для наглядного представления о возможностях WX-Mouse, предлагаю взглянуть на окно программы её настройки:
Как пример — мышью можно писать как ручкой.
картинка нарисована в паинте, при масштабе 100%, размер букв на экране составлял 4-5мм.
Проект обсуждается в конференции в теме Лазерный оптический сенсор — проект W-Mouse
План действий по переделке Nova Slider 600 в WX-Mouse
- Сборка платы WX с контроллером atxmega32a4u и сенсором, прошивка контроллера.
- Анализ корпуса мыши-пациента, чтобы решить как, что и в каком порядке переделывать.
- Доработка дна мыши для установки линзы сенсора PWM-3360
- Установка платы WX на стойки.
- Контроль высоты установки сенсора.
- Переделка основной платы мыши. Замена кнопок на omron D2FC-F-K(50M)
- Переделка боковой платы мыши. Замена кнопок на omron D2FC-F-K(50M)
- Согласование RGB подсветки.
- Распайка разъемов.
- Окончательная сборка.
1. Сборка платы WX осуществляется в следующем порядке:
— Первым делом запаиваются 3 стабилизатора напряжения. После этого плата подключается к +5В и тестером проверяем, что все три стаба работают нормально.
— Запаивается контроллер — atxmega32a4u
— Прошиваем контроллер программатором, питание берем с платы программатора.
— Подключаем плату WX к компьютеру по USB и прошиваем в контроллер прошивку WX-Mouse. Это делается уже штатным прошивальщиком.
— Запаиваем сенсор. Во время пайки надо проконтролировать плотную посадку сенсора на плату и отсутствие перекоса в горизонтальной плоскости.
— Ставим линзу, подключаем к компьютеру и убеждаемся в работоспособности собранной платы WX, уже как собственно мыши, т.е. подносим плату к поверхности и смотрим на движение курсора.
2. Вот так внутри выглядит наш пациент
Как видим, конструкция «двухэтажная», но нас интересует только основная плата, т.к. как на ней расположены все основные кнопки и енкодер колеса.
Так как большая часть основной платы не будет использоваться и расположена эта часть на том месте, где будет стоять WX плата, то эту ненужную часть основной платы безжалостно отрезаем и выкидываем. При этом от основной платы останется небольшой обрезок, на котором расположены три основные кнопки, а также дополнительная кнопка, толкатель которой выведен на спину мыши.
Видно, что расстояние от отверстия в дне сенсора до дополнительной кнопки на спине мыши небольшое и если использовать это штатное отверстие, то плата WX тупо не влезает — мешает дополнительная кнопка. Так как заказчик настаивал на использовании штатного отверстия, то решено было сдвинуть эту кнопку ближе к колесу.
3. В большинстве современных мышей производители ставят сенсоры на одинаковую высоту. Эта высота определяется расстоянием от рабочей поверхности (коврик) до нижней поверхности линзы и составляет 2.4мм.
Линза сенсора PWM-3360 имеет форму, контур которой на картинке отмечен карандашной линией.
Расширение ложа для линзы сделано с помощью дремеля, используя насадку с боковыми режущими кромками и плоским торцом.
Примерка линзы:
4. Дно этой мыши имеет необычную конструкцию.
Боковые вставки из молочно-матовой пластмассы крепятся на специальных стойках. Расположение этих стоек приходится на то место, куда ставится плата WX.
Если срезать эти стойки, то придется как-то крепить боковые вставки, например термоклеем. По надежности и чисто эстетически, этот вариант мне не нравился.
При примерке платы WX, оказалось, что отверстия в стойках дна располагаются недалеко от крепежных отверстий платы WX, и как раз в зоне, где нет дорожек. Поэтому было решено использовать имеющиеся стойки, только уменьшить их высоту. Для этого в плате WX были сделаны дополнительные отверстия для винтиков.
В результате и овцы сыты и волки целы :)
C противоположной стороны стойки сделал из дюралюминия, их высота выбрана такой, чтобы линза плотно прижималась WX платой к поверхности дна.
Вид со стороны дна
тут видно, что форма отверстия была изменена — она сделана такой, как указывает в даташите производитель сенсора.
5. На этом этапе было проконтролировано с помощью видео-картинки, считываемой с сенсора, что высота установки линзы обеспечивает хорошую фокусировку.
6. Основная плата была обрезана так, чтобы можно было разместить плату WX.
Видно, что линия обрезки основной платы пришлась на отверстия для выводов доп-кнопки.
Далее эта плата была проанализирована на возможность подключения кнопок, енкодера и светодиодов подсветки к стоящему на ней разъему, с максимальным использованием уже существующих дорожек. Для этого была «переснята» на бумагу схема дорожек на этой плате.
На картинке проводники каждого из каналов RGB нарисованы своим цветом.
Оказалось, что есть возможность использовать почти все существующие дорожки. Дорожки, которые надо добавить, нарисованы пунктиром. Очень повезло, что RGB подсветка заведена на разъем.
Для монтажа дополнительной кнопки были просверлены отверстия, смещенные на 3мм в сторону колеса.
Далее были установлены кнопки D2FC-F-K(50M) (заказчик решил заменить на них вообще все кнопки в мыше), заменен RGB светодиод на такой же, но с более длинными выводами, чтобы можно было подсвечивать матовую вставку вокруг колеса. Выполнена разводка кнопок на разъем.
При использования режима Buss-Keeper, общий контакт или по другому полюс должен переключаться между двумя направлениями — это земля и +3.3В.
В микропереключателях, которые ставят в мыши, общий контакт или по другому полюс располагается с краю под штоком кнопки. Этот контакт переключается между центральным выводом и дальним (от штока) выводом. В ненажатом состоянии полюс замкнут на дальний контакт, в нажатом соединяется с центральным выводом.
Большинство производителей мышей используют только два вывода, причем с шиной земли соединять почему-то предпочитают крайний вывод, а не центральный. В результате для использования режима Buss-Keeper, при переделке в WX-Mouse, приходится менять разводку кнопки, так чтобы к земле был припаян центральный вывод.
Очень повезло, что кнопки производителем, были подключены средним контактом на землю. Это позволило реализовать режим Buss-keeper с минимальными доработками.
Также удалось по максимуму использовать существующие дорожки и дополнительных соединений почти не делать.
7. На боковой плате производитель использовал не RGB светодиоды, а одноцветные. Поэтому пришлось делать дополнительную маленькую платку на два RGB светодиода.
Платка примитивна, поэтому дорожки просто прорезал скальпелем. На картинке эта плата просвечивается снизу, чтобы хорошо видно было дорожки.
Боковая плата также была проанализирована на предмет использования существующих дорожек для подключения кнопок и RGB светодиодов на два разъема.
После этого на боковую плату были поставлены два разъема, а также маленькая платка RGB подсветки и выполнен монтаж соединений.
Разъем А — подсветка, разъем В — кнопки и земля.
8. Согласование подсветки выполняется для того, чтобы все её части, подсвечиваемые разными светодиодами, давали одинаковый цвет.
Для этого подбираются резисторы в каждом из RGB каналов.
Проще всего это сделать, подав на все три канала максимальный уровень ( +3.3В). При этом в результате смешения трех каналов должен получаться белый цвет свечения, но так как разные цвета не согласованы, то цвет свечения имеет какой-либо оттенок. После этого переменными резисторами меняется яркость каждого из каналов RGB, так чтобы получился таки белый цвет.
9. Для основного разъема, ввиду его плотности решено было использовать отрезок IDE ATA шлейфа (80 жил).
После этого была выполнена распайка всех разъемов на плату WX. Все платы поставлены на свои места и соединены шлейфами.
10. Произведена окончательная сборка. Мышь была протестирована в течение двух дней в играх и отправлена заказчику.
Для самостоятельного изготовления WX-Mouse, все материалы (схема, инструкция етс) есть в теме проекта в конференции — Лазерный оптический сенсор — проект W-Mouse.
Там же идет обсуждение участниками проекта, а также выкладываются свежие прошивки автором W-Mouse — Walkie.
Еще раз огромное спасибо автору проекта Walkie!
Комментарии (21)
iG0Lka Автор
22.11.2018 16:03+1По-моему, «всё это» очень быстро сокращается
Отнюдь. Такой настройки динамики нет ни у одной мыши. Есть попытки которые либо убоги либо совершенно неудобны из-за неинформативности настройки.
Режим Buss-keeper скорее всего используется только в WX-Mouse.
Ну и во фразе не просто так используется слово «Всё» — т.е. не одно какое либо достоинство, а их сочетание делает WX-Mouse уникальной мышью.
Здорово, что можно. Но нужно ли это кому-нибудь?
Это иллюстрация качества работы.
roscomtheend
22.11.2018 16:25Nova неплохая мышка была, но кнопки — полный отстой, именно они за пару лет сдохли совсем, как раз их бы я оставлять и не стал.
iG0Lka Автор
22.11.2018 16:37Видимо поэтому заказчик пожелал заменить все восемь кнопок, даже боковые. :)
Maklaut
22.11.2018 17:25+2Какова себестоимость такой мышки?
iG0Lka Автор
22.11.2018 18:08Это зависит от не скольких причин.
Если не учитывать стоимость корпуса и стоимость работы, то получается примерно 1500-1800 руб. Сюда входит плата, сенсор, контролер и мелочевка.
Времени на переделку уходит примерно от 4 до 7 рабочих дней, если делать все тщательно и качественно, т.е. без крепления на термоклей и т.д.dididididi
23.11.2018 17:264-7 рабочих дней, это 40-70 тыров?
iG0Lka Автор
23.11.2018 18:30Нет конечно — намного дешевле.
Я думаю финансовые вопросы лучше обсуждать приватно.
EwgenW
22.11.2018 17:59+19. Для основного разъема, ввиду его плотности решено было использовать отрезок sata шлейфа.
Это IDE шлейф )iG0Lka Автор
22.11.2018 18:03Да спасибо.
Но это не просто IDE у которого было 40 довольно толстых жил, а IDE Ultra ATA у которого 80 тонких жил. Собственно я перепутал вместо ide ата написал sata…
Но возможно это кабель scsi теперь уж не поймешь — разъемы срезал давно…
Сейчас исправлю в статье, еще раз спасибо.
holomen
22.11.2018 18:25+1Большинство производителей мышей используют только два вывода, причем с шиной земли соединять почему-то предпочитают крайний вывод, а не центральный.
Это как раз довольно просто объяснить. Все свободное место залито землей, кнопки находятся на самом краю платы -> крайний контакт «автоматически» садится на землю. Повелось это, очевидно, еще с двухкнопочных мышей, а там и понеслось и по привычке в том числе.
vanyas
23.11.2018 05:59Как по мне, проводные мыши это какой-то рудимент, провод — это уж жутко неудобно, уже лет наверно 10 пользуюсь только беспроводными мышами. Да и игровые мыши давно есть беспроводные.
roscomtheend
23.11.2018 09:12Пользовался и теми и другими, провод оказался удобнее (и аккумулятор не деградирует за пару-тройку лет, вес меньше и заряжать не надо, да ещё и не отваливается). В ноуте BT-мышка ещё имеет смысл (чтобы порт не занимать, мыши со своим приёмником не имеют такого достоинства), но в стационарном выбираю проводные мыши и клавиатуры. Как раз лет 10 назад пытался использовать беспроводные, но потом взял такую Нову и вернулся к проводным (какая сейчас — точно не скажу, покупал года 3-4 назад по удобству и надёжности, не смотря на марки).
PS. И сеть к компьютеру у меня тоже кабелем подключена, для стационарного это удобнее.
8street
23.11.2018 12:55Для вас провод неудобен, а для меня неудобны вес, возня с аккумуляторами, разряд в самый неподходящий момент. Была у меня мышь беспроводная с возможностью работы по проводу. Несколько циклов заряда проработала на аккумах, а потом лет 5 на проводе.
dmsav
23.11.2018 09:51Проект классный как DIY.
Но вот Ваша схема...Для этого была «переснята» на бумагу схема дорожек на этой плате.На картинке проводники каждого из каналов RGB нарисованы своим цветом.
iG0Lka Автор
23.11.2018 13:16Зачем стрелять по воробьям из пушки? Нужно было быстро прикинуть, что куда идет.
Обычно я даже схемы не рисую — держу в голове, а тут решил нарисовать, чтобы проверить все связи. В редакторе ушло бы времени раз в 5 больше, зачем это для одноразовой схемы?
Тут более прикольно, что дорожки на плате сделаны так как будто их в ручную проводили, я давно уже не видел такой трассировки :)dmsav
23.11.2018 14:10-1Дело Ваше. Но если о чем-то рассказываете и показываете, то нужно это делать на уровне. Схемы для этого как раз и нужны, чтобы не держать все в голове.
Можно и от руки начертить схему более аккуратно, чтобы она была понятна для остальных.
А как рисунок схемы «для себя» да, согласен, пойдет.iG0Lka Автор
23.11.2018 14:19В данном случае не было цели показывать схему понятную для остальных, никто же не будет разбираться как там конкретно разводка сделана. Схема показана с целью иллюстрировать процесс анализа платы. Кроме того подсказка, что можно максимально использовать существующие дорожки, для тех кто решит переделывать свою мышку.
Так то использовалась вот такая схема
GeMir
Как DIY-проект, безусловно, интересное занятие на n вечеров.
Пропорциональным «прямоте» рук собирающего?По-моему, «всё это» очень быстро сокращается до «выводить видео-картинку работы сенсора», если покупать мышку не за «пять копеек».
Здорово, что можно. Но нужно ли хоть кому-нибудь?