Diagnosi problemi USB

Introduzione

Spesso vediamo segnalazioni di problemi con le stazioni meteorologiche collegate al computer tramite USB. In genere questi problemi compaiono più spesso con il Raspberry Pi (soprattutto i modelli più vecchi). Alcune stazioni meteorologiche sembrano essere più soggette a problemi USB (ad esempio, vecchie stazioni FineOffset come 1080/2080/3080), ma anche altre potrebbero avere problemi (TE923, console USB Acurite).

Gli errori tipici includono:

error sending control message: Broken pipe
could not detach kernel driver from interface 0: No data available
[Errno 5] Input/Output Error 

Nel caso di stazioni Fine Offset, la comunicazione USB fallirà (FineOffset lockup). Anche la comunicazione con le stazioni Acurite o TE923 potrebbe bloccarsi.

Cavi USB

Usare cavi USB di qualità. In presenza di disturbi radio o di sorgenti elettromagnetiche, utilizzare cavi con nucleo in ferrite.

Alimentazione USB

Assicurarsi che vi sia alimentazione sufficiente e stabile per la stazione meteorologica. Alcuni computer non forniscono alimentazione sufficiente tramite USB. Su alcuni sistemi, le tensioni di comunicazione USB possono essere rumorose quando altri dispositivi sono alimentati o addirittura collegati all'USB del computer.

Per scoprire se questo è un problema sul tuo sistema, collega la stazione meteorologica a un hub USB alimentato (non passivo), quindi collega l'hub al computer.

Minimizzare dispositivi USB

Rimuovere ogni altro dispositivo USB dal computer diverso dalla stazione meteorologica.

Si noti che questo può essere complicato con alcuni computer, dal momento che alcuni computer usano l'USB per la loro rete, sia con un dongle USB-Ethernet/WiFi, sia anche internamente (molti computer a scheda singola usano l'USB internamente per Ethernet, anche se hanno un adeguato connettore).

Impostazioni kernel/avvio

Alcuni utenti Raspberry Pi (in particolare il Pi Zero) Hanno riferito di garantire che funzioni come host USB, non come dispositivo USB.

Inserisci questo in /boot/config.txt:

dtoverlay=dwc2
dr_mode=host
Prova un computer diverso

Alcuni utenti hanno segnalato problemi durante l'utilizzo di una stazione meteorologica con un Raspberry Pi, ma nessun problema utilizzando la stessa stazione su un computer x64 (o anche un orangePC). Prova a utilizzare un computer diverso per verificare rapidamente se esiste un problema hardware fondamentale.

Prova diverse versioni kernel

Alcuni utenti hanno segnalato problemi con una versione del kernel, solo per scoprire che il ripristino a una versione precedente (o l'aggiornamento a una nuova versione) risolve i problemi.

Ci sono anche casi in cui una stazione meteorologica funziona bene con un'architettura (es. x86 o x64) ma non funziona con un'altra (es. mips). Ciò è in genere dovuto a bug/comportamenti in kernel specifici o driver hardware, non all'architettura. Ma l'esecuzione della stazione meteorologica su piattaforme diverse può aiutare a rintracciare la causa principale.

Autore: Matthew Wall