Come risolvere l'errore TEMPerGold_V3.5 Error: Unknown firmware TEMPerGold_V3.5: b'80800b4d4e200000'.
Come dice il testo dell'errore il problema è causato dal firmware troppo recente del termometro USB TEMPerGold prodotto dalla Cinese PCsensor ( https://pcsensor.com/product/pcsensor-temperature-logger-temper-with-gold-usb-probe/ ).
Risolverlo il problema dello script Python ``temper`` ( https://github.com/urwen/temper ) è semplice e volece!
Premessa
Alcune note prima di passare al fizing:
- lo script
temper(https://github.com/urwen/temper) è ottimo e semplice. La PCsensor offre dei buoni software per i suoi sensori, ma nulla per il mondo Linux; tempervede lo stik USB TEMPerGold:
sudo ./temper.py -l[ ... ]Bus 004 Dev 005 3553:a001 TEMPerGold ['hidraw0', 'hidraw1'][ ... ]
ma non riesce a leggerlo in automatico
sudo ./temper.py
e forzando l'uso del device si ottiene l'errore e la versione del firmware
# ./temper.py --force 3553:a001Bus 004 Dev 005 3553:a001 TEMPerGold_V3.5 Error: Unknown firmware TEMPerGold_V3.5: b'80800b4d4e200000'
- dopo alcune verifiche il cambio di versione del firmware del sensore non richiede veri cambi nello script
- per procedere al fixing ci servono: la versione e l'ID del prodotto, dati visti sopra:
- ID del prodotto: 3553:a001
- versione del firmware: TEMPerGold_V3.5
Fixing
Per risolvere possiamo fare una piccola modifica a Temper o usare uno script sostitutivo Temper-python
Modifica a Temper
Iniziamo il nostro fixin di https://github.com/urwen/temper .
- Editare
temper.py - aggiornate la riga 208 aggiungendo ``EMPerGold_V3.5``
if info['firmware'][:15] in [ 'TEMPerGold_V3.1', 'TEMPerGold_V3.3', 'TEMPerGold_V3.4', 'TEMPerGold_V3.5' ]:
- aggiungere sotto la riga 344 le due righe come segue
if vendorid == 0x1a86 and productid == 0xe025:return Trueif vendorid == 0x3553 and productid == 0xa001:return True
E... il gioco è fatto.
La prima modifica aggiunge il riconoscimento del nome del firmware.
La seconda riga aggiunge il riconoscimento dell'ID del device USB.
Script sostitutivo Temper-python
Se si vuole uno script uguale, stessa syntassi d'uso, che funziona subito senza dover modificare nualla si può usare Temper-python scaricabile da https://github.com/Suraku/temper-python/tree/master .