Проект W-Mouse дорос до использования топового сенсора PMW3360.
W-Mouse — это мышь разработанная человеком с ником Walkie, включая схему и программное обеспечение.
Раньше использовались сенсоры фирмы avago — adns-30x0, adns-60x0, adns-9x00 совместно с контролером atmega32u4.
Новый вариант использует топовый сенсор 3360 и контролер atXmega128a4u и получил название WX-Mouse.
Основные достоинства W-Mouse
— точность работы сенсора, обеспечивается, в том числе установкой сенсора на высоту наилучшей фокусировки, это возможно т.к. W-Mouse умеет показывать графическую картинку считываемую непосредственно с сенсора т.е. видим поверхность коврика «глазами» сенсора.
— настройка оптимальной работы сенсора на конкретной поверхности.
— настройка динамики движения. Например можно настроить так, чтобы на низких скоростях смещение было более «подробное», а при увеличении скорости мыши, смещение ускорялось. Как результат точное, подробное выцеливание пикселов и быстрые развороты, без использования огромных ковриков и размашистых движений.
Или например можно настроить, чтобы прицел был более отзывчивым в начале движения, это полезно для отслеживания двигающейся «туда-сюда» цели (трекинг цели).
— возможность использования настраиваемой фильтрации — удобно чертить прямые линии в CAD программах.
WX-Mouse можно собрать практически в любом корпусе.
Так выглядит окно программы настройки WX-Mouse.
Все это делает W-Mouse уникальной мышью.
Проект обсуждается на форуме Overclockers-ру в теме «Лазерный оптический сенсор».
Как пример, мышью можно писать как ручкой :)
(нарисовано в паинте при масштабе 100%, на экране высота буковки составляла примерно 4-5мм)
План действий по переделке Mamba TE в WX-Mouse:
1. Прозвонить схему «круговой» подсветки и определить, что нужно изменить, чтобы задействовать rgb-светодиоды с двух сторон.
2. Объединить с «круговой» подсветкой, светодиоды колеса и логотипа на спине.
3. Выполнить согласование «баланса белого» и яркости трех частей подсветки (чтобы свечение было одинаковым)
4. Обрезать основную плату мыши, оставив только кнопки и разъем USB.
5. Поставить разъем на основной плате для подключения платы wxmouse и сделать соединения от кнопок и колеса с этим разъемом.
6. Определение оптимальной высоты размещения сенсора.
7. Размещение платы WX-Mouse (контролер + сенсор) на дне с помощью стоек.
8. Mодернизация основного кабеля.
9. Устранение мелких косяков и окончательная сборка.
Далее фотографии с краткими пояснениями, если будут вопросы по конкретным деталям, с удовольствием, более подробно, отвечу в коментах.
Пункт 1. Подсветка
Один из самых трудоемких и муторных моментов, хотя когда все получилось то конечно доставило удовольствие :)
В Мамбе используется тонкая светящаяся полоска вдоль ребер корпуса мыши.
Для этого конструкторы поставили с каждой стороны по 7 независимых rgb-светодиодов.
Конструкторы Razer умудрились сделать независимое управление, каждым из 42 светодиодов, через разъем с 8 контактами.
Сделав прозвонку снял схему.
После анализа схемы, было определено, какие изменения надо внести, чтобы соединить аноды и rgb каналы.
Как видно выводы каждого цвета соединены параллельно. А вот управление т.е. аноды (фиолетовый цвет) хитрО раскидано, в том числе и на цветовые каналы.
Мне нужно было соединить параллельно светодиоды каждого из цветов, а также соединить все аноды и на выходе получить 4 линии — аноды плюс три цвета.
Да я знаю — соединять параллельно светодиоды, не очень хорошее решение, но в данном случае другого варианта нет — т.к. размещать около каждого из 42 светодиодов свой резистор это просто не реально.
Учитывая, что для индикации выбранного профиля, будут использоваться в основном чистые цвета т.е. синий, красный и зеленый, то неравномерность и отличия свечения отдельных светодиодов будут не сильно заметны. Этот момент уже проверен на предыдущих конструкциях.
На работу по модификации подсветки ушло примерно 4-5 часов ковыряния с мелкими светодиодами и скрытыми дорожками, но всё получилось.
Пункт 2 Объединение трех частей подсветки.
Окончательное соединение rgb каналов с двух половинок «подковы», сделано уже на разъеме шлейфа, так же там размещены резисторы для каждого цвета. Разъем, с частью платы, был вырезан из основной платы мамбы. На этом обрезке, был размещен дополнительный разъемчик, для соединения с платой WX-Mouse, а также площадки для соединения с подсветкой колеса и лого на спине.
вот так эта платка крепится в верхней крышке мыши
Пункт 3 Согласования свечения трех частей подсветки.
«Баланс белого» выполняется с помощью переменных резисторов, по одному на каждый канал.
Резистор идет на «землю», анод на +3.3В т.е. все три канала должны максимально светится, в идеале формируя белый цвет.
Переменные резисторы позволяют подогнать яркость каждого цвета, чтобы общее свечение было максимально близкое к белому.
После измерения, номиналов переменных резисторов, они заменяются, на постоянные резисторы.
Пункт 4 Обрезка основной платы.
Во общем то тут ничего особенного — дремелем, алмазным диском — вжик и остался огрызок с кнопками и разъемом USB :)
Сначала планировал использовать разъем USB родной платы, для подсоединения кабеля USB, но так как USB, на основной плате, не нужно, а иcпользуется только на плате WX-Mouse, то этот разъем оказывается лишним. Поэтому из штырей разъема сделал фиксатор кабеля USB. В результате кабель USB, втыкается в разъем, на небольшом шлейфе, идущим от платы WX-Mouse.
пункт 5 разъем для кнопок и колеса.
На огрызке, родной платы, был размещен небольшой разъемчик на 8 контактов, для кнопок и колеса.
Соединения от кнопок с разъемом сделаны с обратной стороны платы. Частично, были использованы, уже существующие соединения платы. Проводки зафиксировал силиконовым герметиком.
пункт 6 определение оптимальной высоты размещения сенсора.
Сенсор PMW-3360 размещается, на небольшой плате, совместно с контролером atxmega128a4u
Подбор высоты, для наилучшей фокусировки, облегчается возможностью WX-Mouse выводить видео того как сенсор видит поверхность.
Пример.
В первой половине сенсор над обычной писчей бумагой, видно как меняется фокусировка при изменении высоты расположения сенсора. Во второй части тканевый коврик, типа «control» т.е. с грубым плетением.
Пункт 7 Размещение платы с контролером и сенсором.
Плата WX_Mouse размещается на стойках из алюминия.
Стойки вырезались из пластины — толщина пластины это высота стоек.
Окончательная подгонка высоты, осуществляется за счет тонких прокладок, под стойками.
вид со стороны дна
пункт 8 модернизация кабеля.
Кабель дорабатывается, путем замены начального сегмента 40-50см, на тонкий, гибкий кабелек, свитый из четырех проводков МГТФ. Свиваются две пары по отдельности — питание и данные, потом они свиваются вместе, т.е. используется витая пара. Сверху одевается матерчатая плетенка, такая же как на родном кабеле. В результате получаем очень легкий и гибкий кабель, который практически никак не ощущается. Если поставить две мыши, одну с этим кабелем и вторую беспроводную, то с закрытыми глазами определить где какая не получиться (по крайней мере у меня :) ).
На боковых кнопках видны небольшие металлические «пимпочки». Без них, в напряженных моментах случались ошибочные нажатия. «Пимпочки» сделаны из нержавейки.
Кроме переделки мышей в W-Mouse, занимаюсь их ремонтом если что обращайтесь — проконсультирую или отремонтирую.
Автор: Василий Смирнов