Sono due giorni che cerco su google per l'errore che mi viene dato quando programmo arduino.
L'errore è il seguente:
avrdude: stk500_recv(): programmer is not responding
In windows 7 non ho questo problema e funziona tutto alla perfezione. Utilizzando ubuntu 10.10 mi appare questo errore. Il driver mi viene riconosciuto perfettamente. Che sia troppo nuovo il driver del mio kernel in quanto utilizzandolo in ubuntu 9.10 tutto funzionava perfettamente.
Escludo il problema della versione del driver. Ho Ubuntu 10.10 su 3 PC diversi ed aggiornati quindi non è quello (per lo meno non degli aggiornamenti "stabili", ovvero "security" e "updates". Se hai "proposed" o "backports" attivi allora la cosa potrebbe essere diversa).
Oppure lo sketch sta impegnando la seriale ed il PC non riesce ad aprire la connessione.
Ho verificato con lsof e la seriale non è impegnata. La scheda è selezionata la 2009 che è quella corretta. il bello è che windows che sto utilizzando gira in virtualbox sotto ubuntu. Da li funziona. Se poi chiudo virtualbox o riavvio la macchina e cerco di programmare arduino da ubuntu direttamente non va.
Ma con dmesg lo vedi che carica e scarica il modulo quando inserisci e disinserisci la 2009. Dovresti vedere qualcosa di simile a:
FTDI USB Serial Device converter now attached to ttyUSB3
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.5.0:USB FTDI Serial Converters Driver
[21706.144243] usb 5-2: reset full speed USB device using uhci_hcd and address 5
[21706.304815] ftdi_sio 5-2:1.0: FTDI USB Serial Device converter detected
[21706.304916] usb 5-2: Detected FT232RL
[21706.304923] usb 5-2: Number of endpoints 2
[21706.304928] usb 5-2: Endpoint 1 MaxPacketSize 64
[21706.304934] usb 5-2: Endpoint 2 MaxPacketSize 64
[21706.304939] usb 5-2: Setting MaxPacketSize 64
[21706.306789] usb 5-2: FTDI USB Serial Device converter now attached to ttyUSB0
Ho provato dopo aver caricato uno sketch in arduino che legge e scrive sulla seriale da windows (virtualizzato), ho provato ad utilizzarlo sotto linux (host) e non funziona.
Ho provato su un kernel 2.6.32 e funziona su un 2.6.35 e 2.6.37 non funziona.
A questo punto potrebbe secondo voi dipendere dal kernel?
Ora non ho il mio PC sottomano però mi pare che la 10.10 abbia il kernel 2.6.35 di serie. Com'è che tu hai il 2.6.37?
Hai per caso abilitato i repo che dicevo di non usare (backport e proposed)?
Ciao. Ho cercato un po' sul forum e mi sono fatto un po' di idee sulle cause.
Leggendo qui: http://www.arduino.cc/playground/Learning/Linux
vedo che necessiti dei diritti per poter accedere al chip FTDI:
"Make sure you are in the tty group. On some distros you might need to create an udev rule for the FTDI USB Serial Device converter."
allora se è un problema di permessi le varie tty non sono selezionabili, rimane grigia nel menù a tendina.
Si risolve "al volo" usando il programma come root (per esempio sudo ./arduino)
la tecnica del reset è complicatina la prime volte: devi tenere premuto reset, mentre clicchi su upload nell'IDE...
poi, appena compare la scritta tipo "binary skecth size blablabla" molli subito il reset (se prendi il tempo meglio qualche attimo prima) e dovrebbe andare.
un altro test veloce è collegare RX e TX, aprire il serial monitor e provare a scrivere qualcosa: se il messaggio torna indietro allora tutto ok
Non ho fatto la prova della connessione rx tx. Ma scusate ma se con windows e con linux con kernel <2.6.35 funziona, io credo che sia un problema di kernel. Oggi voglio provare a ricompilare un nuovo kernel con la versione 2.6.32.
Qualcuno di voi utilizza un kernel maggiore della 2.6.32 e driver ftdi?
Cosa ne pensate?
metti un cavetto che unisce rx e tx, poi colleghi la usb, e dall'ide apri il monito e scrivi qualcosa e preimi send.
Se quello che hai scritto compare sotto allora è tutto ok.
Grazie mille dell'info, non sapevo di questa cosa.
Comunque ponticellando rx con tx ed aprendo il monitor dell'ide arduino, scrivendo poi delle frasi mi appare sotto come quindi funziona questa prova.