Come far funzionare Logitech Anywhere MX in Ubuntu 12.X?


14

Ho un mouse Logitech Anywhere MX (wireless), quando lo collego al computer non funziona.

Il mouse funziona su altri computer con Windows e con Fedora 17 e Fedora 19, ma non funziona su due computer diversi con Ubuntu 12.04 e 12.10. Inoltre, questi stessi computer funzionano con un altro mouse wireless Microsoft.

Quindi penso che la combinazione di Logitech MX e Ubuntu non funzioni bene.

La dmesgvoce di registro è simile alla seguente:

[  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

Invece del previsto (tratto da 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

AGGIORNAMENTO: direi che a questo punto solaarè la strada da percorrere. Quindi ho accettato una risposta precedente che suggeriva questo.


Sembra che questa sia una soluzione alternativa, ha funzionato per me un paio di volte che ho provato: askubuntu.com/a/196915/15943 . È anche apprezzata una soluzione permanente.
Alf

ok, ho parlato troppo presto, il trucco sopra non ha funzionato di nuovo.
alfC


Vorrei chiarire che questo sembra essere un problema con il kernel, perché lo stesso problema si verifica in Fedora 18 (usando il kernel 3.7.2). Fortunatamente la soluzione contrassegnata risolve anche questo problema in Fedora 18.
alfC

Ciò risolve il problema dei dispositivi Logitech: webupd8.org/2013/07/pair-unpair-logitech-unifying-devices.html . Non ci ho ancora provato.
alfC

Risposte:


5

Solaar ha lavorato per me nel 12.04. Nel tipo di terminale:

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

Una volta installato, apri Solaar dal menu Dash e fai clic su nell'angolo in alto a sinistra. Fai clic su nell'angolo in basso a destra e segui le indicazioni.

Se in precedenza i dispositivi logitech erano associati a un altro computer, potrebbe essere necessario annullare l'abbinamento dei dispositivi logitech agli altri computer. Dopo aver riavviato Ubuntu senza ricevitore logitech in USB, avvia Solaar dal Dash / menu, collega il ricevitore logitech, fai clic su "aggiungi nuovi dispositivi" e accendi / spegni il nuovo dispositivo per essere riconosciuto. Ripetere l'operazione per ciascun dispositivo.

Una volta accoppiati, i dispositivi vengono riconosciuti ogni volta che si avvia Ubuntu (Solaar viene automaticamente installato nelle "applicazioni di avvio").

Controlla anche questo link come fonte http://www.webupd8.org/2013/07/pair-unpair-logitech-unifying-devices.html o per ulteriori informazioni sulla risoluzione dei problemi


La risposta è piuttosto vecchia, ma: in 16.04 solaarè già nel repository principale, quindi è possibile installarlo direttamente!
Lapshin Dmitry il

14

Ho migliorato lo script in alto e poi ho anche aggiunto una regola udev al fuoco ogni volta che il mouse è stato collegato. Sto usando Logitech Performance MX ma la regola dovrebbe essere simile.

#!/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

Questo tenta fino a 10 volte per ricaricare il driver prima di uscire.

Ho chiamato la sceneggiatura /usr/bin/mousefixe ho fatto un chmod +x.

Ecco la regola udev, una linea a cui è possibile aggiungere /etc/udev/rules.d/10-local.rules

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

Spero che questo aiuti qualcun altro. Sembrava una cosa più semplice da fare avere lo script eseguito ogni volta che l'USB era collegato.


1
Ha funzionato con Logitech Anywhere MX, sia all'avvio che alla connessione della presa USB. Accetterò questa risposta perché offre una soluzione permanente.
alfC

Il mio mousefixscript non può essere eseguito senza sudo... Viene visualizzato l'errore "ERRORE: rimozione di 'hid_logitech_dj': operazione non consentita". Eventuali suggerimenti?
Jesse Webb,

@JesseWebb - prova chmod a+xa dare privilegi di esecuzione universali.
Jess Telford

Ho cercato una soluzione per i miei problemi con il ricevitore Logitech Unifying per una settimana prima di trovarlo. Funziona alla grande, GRAZIE!
Nathan Loding

Grazie per la soluzione Questo mi ha impedito di buttare via quello che pensavo fosse un topo difettoso!
Flimzy

5

È necessario aggiornare il sistema solo se si utilizza 12.04 o 12.10.

Ho avuto diverse domande relative a Anywhere Mouse e Touch Mouse M600

Il ricevitore Unifying di Logitech è supportato?

Posso usare Logitech Touch Mouse M600?

Ho anche partecipato a questo bug del launchpad: https://bugs.launchpad.net/linux/+bug/958174 dove diverse soluzioni come:

sudo modprobe -r hid_logitech_dj
sudo modprobe hid_logitech_dj

sono stati citati ma alla fine l'aggiornamento del sistema ha risolto tutti i problemi con entrambi i mouse.

C'è anche una risposta askubuntu al riguardo qui: Logitech M515 non funziona dopo l'aggiornamento a 12.04

Ma per tutti e 4 i computer che ho provato, la soluzione era di attivare tutti i repository di default non attivati ​​(universo, multiverso, proposti, backport), fare un aggiornamento e un upgrade. Riavvia e il mouse dovrebbe funzionare perfettamente.

Se per caso fare questo non risolve il problema, fare una diagnostica ad esso aiuterà, ad esempio:

  1. Dopo il riavvio, scollegare / collegare il ricevitore Logitech. Apri un terminale e digita dmesgper vedere le ultime righe che menzioneranno il ricevitore. Vedi se appare un errore.

  2. Tipo lsusb. Dovresti vedere una linea simile a quella qui sotto se tutto è stato rilevato correttamente:

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

  3. Accendi / spegni il mouse (l'interruttore di accensione / spegnimento nel mouse è in basso) e prova.

Questo è stato testato nelle porte USB 2.0 e 3.0. Per assicurarsi (almeno per la maggior parte degli utenti) che questo lavoro, TUTTI i repository devono essere attivati. Come le seguenti 3 immagini:

Qui vediamo principale , universo , limitato e multiverso attivato. Ho anche cambiato il server dal mio paese a MAIN

inserisci qui la descrizione dell'immagine

Qui ho attivato da quando erano fuori, i repository Canonical e di terze parti.

inserisci qui la descrizione dell'immagine

Qui vediamo proposta e backport attivati ​​(Oltre a sicurezza e aggiornamenti).

inserisci qui la descrizione dell'immagine

Dopo tutto quello che ho fatto a sudo apt-get update && sudo apt-get upgrade. Riavvia il PC e fatto.

Il mouse dovrebbe funzionare ogni volta mentre è acceso, ma se questo non riesce, vedo un paio o motivi per cui:

  • Il mouse Anywhere MX scarica effettivamente le batterie più velocemente degli altri mouse che ho testato. Nei miei test, Anywhere MX utilizza una quantità di batteria doppia rispetto a Touch Mouse M600 e almeno 20 volte superiore a Logitech V450. Ad esempio, usandolo ogni giorno, puoi usare Anywhere MX per 1,5 mesi a 2 mesi. Il Touch Mouse dura dai 4 ai 5 mesi. Il V450 dura chiaramente un anno intero fino a 16 mesi. Quindi controlla le batterie. Sospetto che ciò sia dovuto alla tecnologia Darkfield.

  • Il mouse Anywhere MX quando è acceso, una luce verde lampeggerà per circa 3 secondi, quindi si spegnerà. Questo non significa che il mouse sia spento, significa solo che le batterie del mouse sono buone. Se le luci erano rosse, è necessario cambiarle. In entrambi i casi, la luce si accenderà con verde o rosso, quindi si spegnerà per preservare le batterie.

  • L'interruttore per accendere / spegnere il mouse in basso può essere commutato in qualsiasi momento quando si utilizza Ubuntu, ma è meglio spegnere il mouse quando non lo si utilizza. In questo modo durerà più a lungo. Ad esempio quando dormi, vai a lavorare, ecc.

  • Alcune opzioni del BIOS potrebbero avere un impatto sul mouse. Controlla il BIOS della scheda madre per le opzioni USB. Gioca con loro nel caso in cui il mouse non funzioni.

  • Cambia la porta USB a cui è collegato il ricevitore. Alcune porte (come le porte frontali) sono note per far schifo avere dispositivi ad alta potenza.


Sembra che backportssia la chiave. Non mi sono attivato proposedperché ho avuto problemi molte volte e l'ho avuto universee multiversedall'inizio). Ora funziona fuori dagli schemi.
Alf

Bene, l'aggiornamento del sistema (non ancora proposto) ha funzionato una volta, per caso. Ho dovuto ricorrere al trucco modprobe, che sembrava funzionare anche solo una volta, quindi ho provato la soluzione Wendel e ha funzionato.
alfC

Ho finalmente installato il proposedrepository e aggiornato / aggiornato come ultima risorsa; non funziona ancora. Un dettaglio da menzionare è che in questo computer tutte le porte USB sono 3.0.
alfC

Non preoccuparti delle porte USB 3.0. Ho appena provato quelli sul mio computer e il mouse funziona ancora. Ho intenzione di aggiornare la mia risposta, ma sarebbe fantastico se potessimo parlare in chat. Ti inviterò a una chat e cercherò di risolverlo lì per evitare di avere mille commenti qui.
Luis Alvarado,

4

C'è una soluzione alternativa, usando questo script (copiarlo in uno script .sh, chmod + x questo file ed eseguirlo come 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

Oppure scarica mousefix.sh che è un link in questa pagina qui:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143/comments/55

Questa correzione funziona rimuovendo e aggiungendo nuovamente (rmmod + modprobe) hid_logitech_dj che è il modulo responsabile del ricevitore unificante. Lo fa in un ciclo while una volta al secondo fino a quando non viene finalmente riconosciuto.

Sembra che ci sia un bug del kernel Linux intorno all'uso di questo ricevitore su una porta XHCI (USB 3) e versioni più recenti del kernel Linux. Probabilmente funziona bene su porte USB2. (?)

Ecco il lungo thread su questo problema, in cui gli sviluppatori e molte altre persone hanno lavorato per risolvere il problema.

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143

Puntelli a Jelle Foks per averlo capito. Mi stava facendo impazzire da anni.

Mentre lascio sempre il mio ricevitore, eseguo questo script all'avvio e riprendo da sleep per una correzione "automatica" e ha funzionato alla grande negli ultimi bit.

Fammi sapere se funziona.


0

K, grazie mille "Dennis Kubes" per la tua sceneggiatura, ma non ha funzionato per me. Ho dovuto modificarlo per farlo funzionare:

#!/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

Spero che questo possa aiutare qualcuno.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.