Почему умирают мыши? Или планируемое устаревание

Поговорим о том, почему умирают мыши. Игровые мыши. А точнее микропереключатели в них.
Казалось бы с чего бы им умирать?

Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

50 миллионов нажатий по спецификации. В чем же проблема?
Чаще всего проблема начинает проявляться в даблкликах и/или потере "клика" при перетаскивании/выделении.
Основная причина в том, что спецификации врут: 50 Миллионов при соблюдении целого ряда условий: 30 кликов в минуту,  влажность 65%+-5%, температура 20 градусов. Как сильно на них могут нажать(вопрос больше к конструкции мыши), как часто отпускают полностью, с какой скоростью на них нажимают и т.д. и т.п. Любое нарушение данных условий приводит к уменьшению срока службы.
Основные причины умирания следующие:

Первая. Контакты внутри микропереключателей серии D2F , рассчитаны на МИНИМУМ 1 миллиампер при 5 вольтах. Они будут работать и при меньших. Но их производитель уже не гарантирует ресурс. Он точно знает, что ресурс будет меньше.

Использование модели для обычных нагрузок для размыкания или замыкания контакта цепи микронагрузки может привести к неисправному контакту. Используйте модели, которые работают в нужном диапазоне.
Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

Первые игровые мыши, и многие офисные жили(и живут) на на обычных дешевеньких USB контроллерах с напряжением питания и логики 5В.
Современные же игровые мыши перешли на гораздо более быстрые, при этом гораздо более энергоэффективные процессоры ARM( Как пример STM32L100 во многих мышах) с напряжением логики 3.3В и ниже.
Вот примерные напряжения/токи для разных мышей:
MX400: 0.60mA при 4.95V
MX518: 0.36mA при 4.97V
G502: <0.1mA при 3.2V(!!!)
Т.е. производители начали использовать эти микропереключатели слегка выходя за спецификации. Но с началом использования скоростных контроллеров ушли ооочень далеко за их пределы(красная точечка на графике выше). И вроде бы все не так страшно, но это лишь одна часть проблемы.

Вторая во внутреннем устройстве самого переключателя. А точнее в контактных площадках, их составе и покрытии.
Можно глубже пойти в материалы, где нужно рассматривать не просто материалы, а сплавы с их характеристиками. Например, что для совсем продолжительной жизни нужно использовать не просто латунь, а конкретно сплав С2680, с покрытием из сплава С1720, с трехслойным покрытием из сплава AuNi10(Со времен СССР используется сплав ЗлН-5, внимание(!), для для производства скользящих и разрывных контактов). Но это уже лишнее для этой статьи. Мало кто из производителей в точности указывает все это в даташите на переключатель стоимостью в пару долларов. Исключение, пожалуй, Panasonic.
Интенсивность использования офисных мышек очень низкая, поэтому для удешевления используют медь с никелем и оловом сверху. И так сойдет. Все равно не накликивают столько, чтобы это стало заметно на 5В логике.
Контактные площадки в "игровых" переключателях состоят из медного сплава(латунь чаще) с покрытием из никеля(или без него) и в свою очередь с покрытием из тонкого слоя сплава серебра. И часто это используют только на подвижной части выключателя. Ответная, неподвижная часть - просто кусок латуни.
Вспомним еще один маркетинговый ход. Все любят хороший, чувствительный и достаточно громкий щелчок. А это немаленький по силе удар контактных площадок друг об друга.
И получается следующее:

Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

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

Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

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

И переходим к третьей и финальной проблеме касающейся исключительно игровых мышей. Она называется частота опроса мыши. Измеряется в Герцах. Количествах опросов мыши в секунду.
Те из нас, кто развлекается поделками из разных микроконтроллеров знает, что при подключении кнопки нужно бороться с дребезгом. Этим можно заниматься аппаратно, можно программно.
Дребезг зависит от многого. От материалов контактных площадок, от их износа, от их твердости/упругости(уронить стальной шарик на бетон или пластилиновый), от силы пружины(которая снижается со временем).
С точки зрения контроллера сигнал  от нажатой кнопки выглядит так:

Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

Во время переключения далеко не всегда понятно, какое на самом деле состояние кнопки. И чем больше износ выключателя, тем дольше по времени и частоте этот дребезг имеет место.
Вплоть до такого:

Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

Дешевым мышам нет смысла с ним бороться. Никакого. Так как их опрашивает компьютер всего-навсего 125 раз в секунду.  Так как вся ширина этого графика укладывается в 8 миллисекунд это по сути и есть программная обработка дребезга. Даже если опрос попадет в середину дребезга, то мы получим или предыдущее состояние или будущее.
Игровые же мыши опрашиваются драйвером до 1000 раз в секунду. И весь этот дребезг ловится контроллером и драйверами как двойные-тройные клики.
Вспоминаем первую проблему. Напряжение и ток. При необходимых токах/напряжениях этот дребезг гораздо меньше. Упоминалось в одной из статей как "микроспекание" контактов. Но уж не знаю, насколько правда.

Итого:
"Чистка" контактов, равно как и подгибание пружины поможет(а то и нет) на очень короткое время.
Как временное и простое решение проблемы - уменьшение частоты опроса мыши. Вплоть до удаления родных драйверов. Работает. Но это уже не игровая мышь.
Если хочется починить надолго, то искать японские микровыключатели серии D2F-01F(не китайские D2FC). У них покрытие из золота, контактная площадка побольше, пружина отдельная... 
Вот сравнение D2FC и D2F-01F.

Почему умирают мыши? Или планируемое устаревание Мышь, Компьютерная мышка, Запланированное устаревание, Гифка, Длиннопост, Детали, Электроника

Такие микропереключатели делают и другие фирмы. Их много. Но нужно смотреть даташиты. У того же панасоника их в таком размере десятки разных.
В качестве альтернативы, для экспериментаторов и профи в электронике,  возможно добавление подтягивающего резистора с расчетом на ток хотя бы 1мА. Но будьте осторожны, дабы не спалить процессор недешевого мыша. Прошивку для нового никто не вышлет. Ардуинщики лечат также маааленьким конденсатором параллельно кнопке. Это уменьшит дребезг до 0, но увеличит время логического перехода, что может привести к некорректной работе на высоких частотах опроса мыши.
Но самый простой и дешевый вариант(который вам сделают в ближайшем сервисе) это заменить их на такие же, как и стояли. Через пару лет вы снова придете.  Или выбросите мышь и купите новую.
Если вы аккуратный человек, то можете просто купить новый выключатель D2FC-F-K или D2FC-F-7N и переставить из него подвижную часть. Так можно обойтись и без пайки.

P.S. Вы думаете что производители мышей не в курсе? Проблему легко было бы решить программно. Легко решить аппаратно, добавив пару резисторов и конденсаторов и колодку для быстрой замены переключателя.
Но кому нужны вечные мыши? Какой игрок будет ждать неделю починки мыши? Какой даже офисный работник не купит новую мышь за 100 рублей в тот же день.

P.P.S. Всего один раз видел на какой-то мыши эти микропереключатели в специальных
разъемах.  Но и то, они были не стандартного размера, а процентов на 20-30 меньшего.

P.P.P.S. @neostory001, @WidowMaker, @lightman.inc, вы хотели данную статью, я точно помню. Простите, что так долго. Зима, депрессия, коронавирус, ром....

UPD: #comment_193290297

https://components.omron.com/microloads
На сайте производителя микровыключателей OMRON прямым текстом написано следующее:
For a microload, there is not sufficient energy to destroy the film on the contact surfaces that results from oxidation and sulfurization. This makes contact failure a problem.
Если по русски, то " При микронагрузках недостаточно энергии для разрушения пленки на контактных поверхностях, которая возникает в результате окисления и сульфуризации. " И дальше в статье прямым текстом написано "нужно больше золота".