View Full Version : Problemi con controller Teensy 2.0 su Linux Mint
Ok, ciao a tutti.
Problema un po' strano, ma faccio rapido.
Ho una vecchia tastiera Apple con porta ADB che sto convertendo per uso con USB.
Ho preso tutto dalla rete, compilato il codice per il convertitore e ora lo dovrei flashare su un controller Teensy 2.0 (si tratta di un file hex), ma non riesco a far vedere il controller all'app specifica (Teensy loader) sotto Linux Mint.
Ho letto e riletto tutti i troubleshooting presenti in rete, provato vari cavi e varie porte USB, ma niente. La board si anima, ha energia e reagisce alla pressione del tastino per metterla in programming mode, ma il sistema non la vede.
Provato anche con la stessa app sotto Windows, ma per quanto Windows veda una generica periferica HID arduino, non c'è modo di trasferire il file hex sulla board stessa.
Qualcuno ha qualche esperienza a riguardo? O qualche idea?
Grazie in anticipo.
Cheers
Perseverance
15-08-2018, 14:44
Ehh, devi scaricarti il kernel di linux mint, attivare il driver relativo o come modulo [M] o integrarlo , ricompilare il kernel, reinstallarlo ed eventualmente ricreare l'initramfs e vedrai che dopo và. Il driver dovrebbe chiamarsi cdc_acm e forse ci sono anche altre voci relative da attivare.
Puoi provare con una distro live di Ubuntu normale? Xkè ho il sospetto che LinuxMint, come tutte le altre derivate, abbiano un kernel moooolto cannibalizzato.
p.s. Eseguilo anche come root
Sì, ok.. non credo mi metterò a ricompilare il kernel di Mint. :D
Direi che mi conviene prepararmi una live di Ubuntu liscio e vedere se riesco a far funzionare le cose da lì.
Speriamo bene perchè ho appena finito il retr0brite del case della tastiera e sarebbe un vero peccato non riuscire a far funzionare questo dannato microcontroller.
Intanto grazie del suggerimento. :)
Cheers
se e' per il modulo cdc-acm vedo che in ubuntu1804 c'e' gia'
filename: /lib/modules/4.15.0-13-generic/kernel/drivers/usb/class/cdc-acm.ko
alias: char-major-166-*
license: GPL
description: USB Abstract Control Model driver for USB modems and ISDN adapters
author: Armin Fuerst, Pavel Machek, Johannes Erdfelt, Vojtech Pavlik, David Kubicek, Johan Hovold
srcversion: 7559218F5F540BA5481E316
alias: usb:v1519p0452d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip06in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip05in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip04in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip03in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip02in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip01in*
alias: usb:v*p*d*dc*dsc*dp*ic02isc02ip00in*
alias: usb:v04E2p1424d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1422d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1421d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1420d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1414d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1412d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1411d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1410d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1403d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1402d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1401d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E2p1400d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v058Bp0041d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E8p685Dd*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04D8p0083d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04D8p0082d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04D8p000Bd*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v03EBp0030d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v04E7p6651d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p03CDd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0335d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0302d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p01D4d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04CEd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0154d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p026Cd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0275d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0223d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p01D0d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p02D9d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p010Ed*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0178d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p02E3d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p01F5d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0108d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p00E9d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p003Ad*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0094d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p007Bd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p00A0d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p008Fd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0128d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0099d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p00E9d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0070d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04F0d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0071d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0007d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0481d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p00ABd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p00B0d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0042d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p00FCd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0088d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p002Fd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p046Ed*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0134d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04B2d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04E6d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0420d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p048Ed*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p042Fd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0445d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p000Ed*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04DFd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0486d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0425d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0418d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0508d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0475d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0001d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p044Dd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p0419d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04C9d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p04D8d*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v0421p042Dd*dc*dsc*dp*ic02isc02ipFFin*
alias: usb:v2912p0001d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v09D8p0320d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:vFFF0p0100d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v1576p03B1d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v1BBBp0003d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v05F9p4002d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0572p1340d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0572p1329d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D9Ad*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D99d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D97d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D96d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D95d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D93d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D92d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p2D91d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p6425d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v2184p0036d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v2184p001Cd*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v20DFp0001d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0572p1328d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0572p1324d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0572p1321d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0803p3095d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v22B8p7000d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v11CAp0201d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0ACEp1611d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0ACEp1608d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0ACEp1602d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v079Bp000Fd*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0482p0203d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0E8Dp3329d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0E8Dp0003d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0870p0001d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v17EFp7000d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v076Dp0006d*dc*dsc*dp*ic*isc*ip*in*
depends:
retpoline: Y
intree: Y
name: cdc_acm
vermagic: 4.15.0-13-generic SMP mod_unload
signat: PKCS#7
signer:
sig_key:
sig_hashalgo: md4
Ok, non ha funzionato nemmeno su Ubuntu Live... dubito che cambi qualcosa se lo installo direttamente sul disco principale del PC.
http://https://www.pjrc.com/teensy/loader_linux.html
Ho seguito questo schema passo passo... scaricato il file, creato il file rules, messo dove dicono loro.... ma nulla da fare. Il controller si attiva con il led quando lo avvio, se premo il tasto il led si spegne, ma il loader non lo vede..
Ah, facendo dmesg da terminale vedo che il sistema lo vede il controlle perchè me lo segnala come collegato su usb... pare sia solo il loader che non lo voglia vedere.
Boh...
Per stasera chiudo e domani ci penserò a mente fresca.
Grazie di nuovo a tutti.
Cheers
Ok, verificando sul forum del produttore è venuto fuori che ho un controller farlocco... o meglio un clone. Questo, secondo loro, è il motivo per cui l'app Teensy Loader non lo riconosce.
Ok, ci sta, ma è chiaramente un prodotto con lo stesso chip e la stessa architettura, quindi il funzionamento dovrebbe essere analogo.
Sarei curioso di capire come poterlo programmare, perchè dubito li vendano per non essere usati.
Aggiornerò quando avrò notizie.
Cheers
Perseverance
16-08-2018, 20:42
Un clone, come i telecomandi farlocchi degli apricancelli dove ce ne metti 1 solo e se ne vuoi 2 non và. Può essere vero quello che ti han risposto, anzi, spesso in questa roba è assai probabile se non compri da un fornitore ufficiale.
In effetti controllando sul sito ufficiale la disposizione di alcuni pin è diversa (alla fine sono equivalenti ovviamente, ma cmnq in posti diversi).
Sono andato in vari forum di gente che usa questi controller assiduamente ed è un casino assurdo. Prodotti che appaiono e scompaiono come fantasmi, di base lo stesso chip usato su decine e decine di board con differenze minime, ma che vanno considerate quando poi compili o ci carichi programmi.
Praticamente un perenne trial and error anche quando credi di avere il prodotto specifico e corretto... un delirio. :D
Cheers
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.