Salve,
Ho comprato da poco un Usb Host Shield della Sparkfun, e sono intento a farlo funzionare su un Arduino uno.
Dopo essermi informato su internet, ed aver scricato da github le varie librerie, o proceduto er tentativi a far funzionre il tutto, ma purtroppo sono fermo alla fase di compilazione dello sketch.
Lo sketch e questo:
e questo e quello che mi da come errore dopo la compilazione:
In file included from C:\Archivio\arduino-1.0.1\libraries\Usb/Usb.h:43,
from C:\Archivio\arduino-1.0.1\libraries\XBOXUSB/XBOXUSB.h:24,
from XBOXUSB.cpp:7:
C:\Archivio\arduino-1.0.1\libraries\printhex/printhex.h:15: error: stray '@' in program
In file included from C:\Archivio\arduino-1.0.1\libraries\hexdump/hexdump.h:22,
from C:\Archivio\arduino-1.0.1\libraries\Usb/Usb.h:44,
from C:\Archivio\arduino-1.0.1\libraries\XBOXUSB/XBOXUSB.h:24,
from XBOXUSB.cpp:7:
C:\Archivio\arduino-1.0.1\libraries\printhex/printhex.h:15: error: stray '@' in program
In file included from C:\Archivio\arduino-1.0.1\libraries\message/message.h:22,
from C:\Archivio\arduino-1.0.1\libraries\Usb/Usb.h:45,
from C:\Archivio\arduino-1.0.1\libraries\XBOXUSB/XBOXUSB.h:24,
from XBOXUSB.cpp:7:
C:\Archivio\arduino-1.0.1\libraries\printhex/printhex.h:15: error: stray '@' in program
In file included from XBOXUSB.cpp:14:
C:\Archivio\arduino-1.0.1\libraries\printhex/printhex.h:15: error: stray '@' in program
In file included from C:\Archivio\arduino-1.0.1\libraries\Usb/Usb.h:43,
from C:\Archivio\arduino-1.0.1\libraries\XBOXUSB/XBOXUSB.h:24,
from XBOXUSB.cpp:7:
C:\Archivio\arduino-1.0.1\libraries\printhex/printhex.h:1: error: expected constructor, destructor, or type conversion before '(' token
Chiedo aiuto per capire cosa sbaglio, o cosa mi manca per il corretto funzionamento.
Grazie,
Brusertv
Salve,
le librerie le ho scaricate tutte dal primo link indicato da PaoloP, l'ide mia e una 1.0.1, fa tanta differenza per quello che devo fare?
In secondo luogo le librerie indicate sullo scketch le ho scaricate tutte, il fatto e' che all'inizio lo sketch prevedeva solo "#include <XBOXUSB.h>", ho aggiunto io le altre via via che me le indicava nella finestra dell'ide come errore dopo la compilazione.
Grazie,
Brusertv
Salve,
io non mi sono ancora arreso, ma lo sto pensando.
Nessuno che abbia avuto esperienza con Usb host shield della sparkfun?
Nessuno che possa ( o abbia voglia...) darmi una mano a capire dove sbaglio?
Grazie,
Brusertv
Salve,
Ho ricontrollato quello che avevo fatto, e questo e' il risultato.
Questo e' il programma che ho scaricato e che voglio far funzionare per provare USB Host Shield:
E questo e quello che mi dice l'ide di arduino aver fatto verifica/comilazione:
In file included from xboxusb_original.ino:7:
C:\Documents and Settings\Scanta\Documenti\Arduino\libraries\XBOXUSB/XBOXUSB.h:24:17: error: Usb.h: No such file or directory
In file included from xboxusb_original.ino:7:
C:\Documents and Settings\Scanta\Documenti\Arduino\libraries\XBOXUSB/XBOXUSB.h:99: error: expected class-name before '{' token
C:\Documents and Settings\Scanta\Documenti\Arduino\libraries\XBOXUSB/XBOXUSB.h:101: error: expected `)' before '*' token
C:\Documents and Settings\Scanta\Documenti\Arduino\libraries\XBOXUSB/XBOXUSB.h:130: error: ISO C++ forbids declaration of 'USB' with no type
C:\Documents and Settings\Scanta\Documenti\Arduino\libraries\XBOXUSB/XBOXUSB.h:130: error: expected ';' before '*' token
C:\Documents and Settings\Scanta\Documenti\Arduino\libraries\XBOXUSB/XBOXUSB.h:132: error: 'EpInfo' does not name a type
xboxusb_original:8: error: 'USB' does not name a type
xboxusb_original:9: error: 'Usb' was not declared in this scope
xboxusb_original.ino: In function 'void setup()':
xboxusb_original:14: error: 'Usb' was not declared in this scope
xboxusb_original.ino: In function 'void loop()':
xboxusb_original:21: error: 'Usb' was not declared in this scope
Quindi per ricordare un po' di di cose aggiungo:
Ho un arduino uno, l'ide e un 1.0.3, ho scaricato le librerie e messe nei posti giusti(...credo..).
Quindi attendo un vostro suggerimento.
Grazie,
Brusertv
Veramente ci sono. C'è una cartella examples con 4 esempi dentro. Se non li vedi non hai scompattato correttamente la lib.
Da GitHub - felis/USB_Host_Shield_2.0: Revision 2.0 of USB Host Library for Arduino.
clicchi su "Zip" e prelevi l'intero archivio. Scompatti. Rinomini la cartella in qualcosa che non contenga il numero 2.0 (io ho messo "USB_Host_Shield"). Copi la cartella che si è generata dentro a /libraries.
Aprendo l'IDE, se scorri su Esempi/USB_Host_Shield dovresti vedere gli esempi. Se sei su Linux potresti avere il bug che non ti scorre il menu in basso per cui premi su "Apri" e cerca l'esempio in USB_Host_Shield/Examples/Xbox/XBOXUSB e carichi il file .ino.
A me ha compilato senza problemi.
Mi sorge una domanda:
La cartella \libraries quale?
Quella in C:\Archivio\arduino-1.0.3\libraries, o quella in C:\Documents and Settings\Scanta\Documenti\Arduino\libraries?
brusertv:
Mi sorge una domanda:
La cartella \libraries quale?
Quella in C:\Archivio\arduino-1.0.3\libraries, o quella in C:\Documents and Settings\Scanta\Documenti\Arduino\libraries?
Tutte e due (ovvero o l'una o l'altra).
Ma è meglio la seconda perchè, nel caso cambiassi IDE, ti ritroveresti comunque le librerie aggiuntive senza doverle ricopiare.
Inoltre non rischi di mischiare le librerie originali con altre di terze parti.
Ok, capito.
Cosi' effettivamente compila e carica, ma se non erro quando il programma gira dovrebbe darmi dei messaggi in seriale, ogni volta che premo un pulsante del controller giusto?
Mi da solo il messaggio "XBOX USB Library Started", ma nulla piu'.
Cosa sbaglio ancora?
PaoloP:
Ma è meglio la seconda perchè, nel caso cambiassi IDE, ti ritroveresti comunque le librerie aggiuntive senza doverle ricopiare.
Inoltre non rischi di mischiare le librerie originali con altre di terze parti.
Forse ho capito.
Non da segni di vita, in quanto il controller non si accende. Quando collego il controller all'USB host shield, il led lampeggia per un attimo e poi si spegne (teoricamente dovrebbe stare acceso...).
Il controller funziona collegato direttamente al pc, che sia un problema dovuto al connettore dell' USB host shield?
Grazie,
Brusertv
brusertv:
Mi sorge una domanda:
La cartella \libraries quale?
Quella in C:\Archivio\arduino-1.0.3\libraries, o quella in C:\Documents and Settings\Scanta\Documenti\Arduino\libraries?
io consiglio la terza via, che poi e' quella che si sta usando di default sul nuovo ide 1.5, cioe' di tenere "libraries" nella cartella degli sketch, cosi' non solo non la perdi quando cambi ide, ma nemmeno se reinstalli il sistema operativo