Como fazer o Logitech Anywhere MX funcionar no Ubuntu 12.X?

14

Eu tenho um mouse Logitech Anywhere MX (sem fio), quando eu o conecto ao computador, ele não funciona.

O mouse funciona em outros computadores com Windows e com o Fedora 17 e o Fedora 19, mas não funciona em dois computadores diferentes com o Ubuntu 12.04 e o 12.10. Além disso, esses mesmos computadores funcionam com outro mouse sem fio da Microsoft.

Então, acho que a combinação do Logitech MX e do Ubuntu não funciona bem.

A entrada do log de dmesg é assim:

[  578.845838] usb 3-2: Product: USB Receiver
[  578.845841] usb 3-2: Manufacturer: Logitech
[  578.851625] logitech-djreceiver 0003:046D:C52B.0009: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-2/input2
[  578.851899] logitech-djreceiver 0003:046D:C52B.0009: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32
[  578.854518] logitech-djreceiver: probe of 0003:046D:C52B.0009 failed with error -32

Em vez do esperado (retirado do Fedora):

[154344.634520] usb 2-1.2: Manufacturer: Logitech
[154344.647935] logitech-djreceiver 0003:046D:C52B.000D:
hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on
usb-0000:00:1d.0-1.2/input2
[154344.653788] input: Logitech Unifying Device. Wireless PID:1017 as
/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.2/0003:046D:C52B.000D/input/input21
[154344.654192] logitech-djdevice 0003:046D:C52B.000E: input,hidraw1:
USB HID v1.11 Mouse [Logitech Unifying Device. Wireless PID:1017] on
usb-0000:00:1d.0-1.2:1

ATUALIZAÇÃO: Eu diria que, neste momento, solaar é o caminho a percorrer. Então aceitei uma resposta anterior sugerindo isso.

    
por alfC 17.11.2012 / 07:16

5 respostas

5

Solaar trabalhou para mim em 12.04. No tipo de terminal:

sudo add-apt-repository ppa:daniel.pavel/solaar  
sudo apt-get update  
sudo apt-get install solaar  

Uma vez instalado, abra o Solaar no menu Dash e clique em no canto superior esquerdo. Clique no canto inferior direito e siga as instruções.

Se você já tinha os dispositivos logitech emparelhados a outro computador, talvez seja necessário desemparelhar os dispositivos logitech de outro (s) computador (es). Depois disso, reinicie o Ubuntu sem o logitech receiver em USB, inicie o Solaar a partir do Dash / menu, conecte o receptor logitech, clique em 'adicionar novos dispositivos' e ligue / desligue o novo dispositivo para ser reconhecido. Repita para cada dispositivo.

Uma vez emparelhados, os dispositivos são reconhecidos sempre que você inicia o Ubuntu (o Solaar é instalado automaticamente em 'aplicativos de inicialização').

Além disso, verifique este link como link de origem ou para mais problemas tiroteio

    
por ubunoop 23.11.2013 / 17:13
14

Eu aprimorei o script no topo e também adicionei uma regra do udev para disparar sempre que o mouse fosse conectado. Estou usando um Logitech Performance MX, mas a regra deve ser semelhante.

#!/bin/bash

# loop up to 10 times trying to fix the mouse insertion
for i in {1..10}
do

  # exit the script if there was no mouse error
  if [ 'dmesg | grep "logitech-djreceiver" | tail -1 | grep -c "failed with error -32"' -eq 0 ]; then
    echo "No logitech receiver error...exiting" ;
    exit 0 ;
  else
    # try to reload the mouse driver
    echo 'date'" Error detected, trying reload of logitech hid driver" ;
    rmmod hid_logitech_dj ;
    modprobe hid_logitech_dj ;
    sleep 1 ;
  fi

done

Isso tenta até 10 vezes para recarregar o driver antes de sair.

Eu nomeei o script /usr/bin/mousefix e fiz um chmod +x .

Aqui está a regra do udev, uma linha que pode ser adicionada a /etc/udev/rules.d/10-local.rules

SUBSYSTEMS=="usb", DRIVERS=="usb", ATTRS{manufacturer}=="Logitech", ATTRS{product}=="USB Receiver", ACTION=="add", RUN+="/usr/bin/mousefix"

Espero que isso ajude alguém. Parecia mais fácil fazer o script rodar sempre que o usb estivesse conectado.

    
por Dennis Kubes 08.12.2012 / 06:12
5

Você só precisa atualizar o sistema se estiver usando 12.04 ou 12.10.

Eu tenho várias perguntas relacionadas ao Mouse Anywhere e ao Mouse M600

O receptor Unifying da Logitech é suportado?

Posso usar o Logitech Touch Mouse M600?

Eu até participei desse bug no launchpad: link onde várias soluções como:

sudo modprobe -r hid_logitech_dj e sudo modprobe hid_logitech_dj

foram mencionados, mas no final, a atualização do sistema corrigiu todos os problemas com os dois mouses.

Existe até uma resposta do askubuntu sobre isso aqui: O Logitech M515 não funciona após a atualização para o 12.04

Mas para todos os 4 computadores que testei, a solução foi ativar todos os repositórios por padrão não ativados (universo, multiverso, proposto, backport), fazer uma atualização e atualização. Reinicie e o mouse deve funcionar perfeitamente.

Se por acaso isso não resolver o problema, fazer um diagnóstico ajudará, por exemplo:

  1. Após reiniciar a desconexão / conectar o Logitech Receiver. Abra um terminal e digite dmesg para ver as últimas linhas que mencionarão o receptor. Veja se um erro apareceu.

  2. Digite lsusb . Você deverá ver uma linha semelhante à abaixo se tudo foi detectado corretamente:

    Bus 002 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver

  3. Ligue / desligue o mouse (o botão liga / desliga do mouse está abaixo) e teste.

Isso foi testado em portas USB 2.0 e 3.0. Para garantir (pelo menos para a maioria dos usuários) que este trabalho, TODOS os repositórios devem ser ativados. Como as seguintes 3 imagens:

Aqui vemos main , universo , restricted e multiverse ativados. Eu também mudei o servidor do meu país para MAIN

Aqui, ativei desde que eles estavam desligados, os repositórios da Canonical e de terceiros.

Veja aqui proposto e backports ativado (além de segurança e atualizações).

Depois de tudo isso eu fiz um sudo apt-get update && sudo apt-get upgrade . Reinicie o PC e pronto.

O mouse deve funcionar sempre que ligado, mas se isso falhar, vejo um par ou motivos:

  • O mouse MX Anywhere realmente drena as baterias mais rápido do que outros mouses que testei. Nos meus testes, o Anywhere MX usa 2x mais bateria que o Touch Mouse M600 e pelo menos 20x mais que o Logitech V450. Por exemplo, usá-lo todos os dias, pode usar o Anywhere MX por 1,5 meses a 2 meses. O Touch Mouse dura cerca de 4 a 5 meses. O V450 dura claramente um ano inteiro até 16 meses. Então verifique as baterias. Eu suspeito que isso se deva à tecnologia Darkfield.

  • O mouse MX do Anywhere quando ligado em uma luz verde piscará por cerca de 3 segundos e depois desligará. Isso não significa que o mouse esteja desligado, apenas significa que as baterias do mouse são boas. Se as luzes estavam vermelhas, você precisa alterá-las. Em ambos os casos, a luz se acenderá em verde ou vermelho e desligará para preservar as baterias.

  • O interruptor para ligar / desligar o mouse abaixo pode ser alternado qualquer quantidade de vezes ao usar o Ubuntu, mas é melhor desligar o mouse quando não estiver usando-o. Desta forma, vai durar mais tempo. Por exemplo, quando dorme, vai trabalhar, etc.

  • Algumas opções do BIOS podem ter um impacto no mouse. Verifique o BIOS da sua placa-mãe para opções de USB. Jogue com eles apenas no caso do mouse não funcionar.

  • Altere a porta USB onde o receptor está conectado. Algumas portas (como as portas frontais) são conhecidas por realmente terem dispositivos de alta potência nelas.

por Luis Alvarado 25.11.2012 / 05:49
4

Existe uma solução alternativa, usando este script (copie isso em um script .sh, chmod + x este arquivo e execute como root:

#!/bin/bash
while :; do dmesg|grep logitech-djreceiver|tail -1|grep -q -c "failed with error -32" || exit; 
echo -n 'date'" Driver Reload" ; 
rmmod hid_logitech_dj ; 
modprobe hid_logitech_dj ; 
dmesg|grep logitech-djreceiver|tail -1 ; sleep 1; done

Ou faça o download do mousefix.sh, que é um link nesta página aqui:

link

Esta correção funciona removendo e re-adicionando (rmmod + modprobe) hid_logitech_dj, que é o módulo responsável pelo receptor unificador. Ele faz isso em um loop while uma vez por segundo até que seja finalmente reconhecido.

Parece haver um bug no kernel do Linux usando este receptor em uma porta XHCI (USB 3) e versões mais recentes do kernel do Linux. Provavelmente funciona bem em portas USB2. (?)

Aqui está o longo tópico sobre esse problema, no qual os desenvolvedores e muitas outras pessoas trabalharam para resolver esse problema.

link

Adere a Jelle Foks por descobrir isso. Tinha me deixado louco por anos.

Como eu deixo o meu receptor em todo o tempo, eu corro este script na inicialização, e retomado-de-dormir para uma correção "automática" e tem funcionado muito bem no último momento.

Deixe-me saber se isso funciona.

    
por Wendell 25.11.2012 / 05:14
0

K, obrigado muito "Dennis Kubes" pelo seu Script, mas não funcionou para mim. Eu tive que ajustá-lo para que funcionasse:

#!/bin/bash

# loop up to 10 times trying to fix the mouse insertion
    sudo modprobe -r hid_logitech_dj && sudo modprobe hid_logitech_dj ;

for i in {1..10}
do

  # exit the script if there was no mouse error
  if [ 'dmesg | tail -1 |  grep "logitech-djreceiver: probe of" | grep -c "error -32"' -eq 0 ]; then
    echo "No logitech receiver error...exiting" ;
    exit 0 ;
  else
    # try to reload the mouse driver
    echo 'date'" Error detected, trying reload of logitech hid driver" ;
    sudo modprobe -r hid_logitech_dj && sudo modprobe hid_logitech_dj ;
    sleep 1 ;
  fi

done

Espero que isso ajude alguém.

    
por suther 26.04.2013 / 12:07