Moltiplicare Arduino

Ave,
vorrei sperimentare la comunicazione tra due "arduini" collegati a due computer separati, ma non voglio comprarmene altri oltre a quello che ho gia' :sweat_smile: (non sono mica come una certa persona che si aggira da queste parti :grin: $) :grin:). Pensavo di poter utilizzare una cosa del genere oppure qualche bootloader di questo tipo. Non voglio usare chip FDTD e simili (il perche' non e' importante) e non mi interessa l'eventuale perdita di velocita'.
Secondo voi cosa mi conviene provare? Bisogna anche considerare che non ho un programmatore avr e non intendo comprarli/realizzarli. Riuscirei a fare tutto con il succitato Arduino? Opinioni?
TIA!

se devi collegare 2 arduini, in base alla distanza ci son varie soluzioni. Il modo più facile è usando la newSoftSerial, in pratica crei una seriale virtuale con cui i 2 arduini comunicheranno, e quella hardware la usi per la comunicazione pc.

Per brevi distanze puoi usare ance l'interfaccia I2C.
Ciao Uwe

Non era quello il punto... Come indicato nel titolo (forse in effetti dovrei cambiarlo XD), mi interessa capire quele delle opzioni linkate puo' rivelarsi migliore/piu' economica per creare piu' arduino senza chip FDTI. Al protocollo di comunicazione tra i due ci penso io, pero' volevo dei consigli sull'implementazione della conversione USB-seriale senza FDTI.

Ma hai comunque bisogno di collegare il simil-Arduino al computer. Come pensi di farlo?
Usando l'USB? Allora devi costruirti qualcosa di simile al progetto del 2° link. Ma a questo punto ti conviene? Tra l'acquisto dei componenti e lo sbattimento vario, alla fine hai comprato un clone di Arduino tipo la Luigino, che con qualche euro tipo la Luigino, che in kit senza Atmega costa 7,50 da Robot-Italy (12,50 con Atmega).

Con la luigino hai comunque bisogno dell'interfaccia usb-seriale... Ci avevo pensato, ma volevo fare qualcosa io, volevo solo sapere se con quello che ho a disposizione e' fattibile e non esageratamente complicato. Comunque qualcosa si risparmia, alla fine (10€ non sono pochi).

Beh, allora devi fare una considerazione: vuoi la max potenza o no?
Nel primo caso, devi scegliere il progetto del 1° link, perché il secondo sfrutta il micro per emulare un convertitore USB/seriale. Con il 2° link secondo me risparmi di più perché alla fine fa tutto l'Atmega, mentre nel progetto del 1° link usi uno schedino aggiuntivo.

superkulak:
Ave,
vorrei sperimentare la comunicazione tra due "arduini" collegati a due computer separati, ma non voglio comprarmene altri oltre a quello che ho gia' :sweat_smile: (non sono mica come una certa persona che si aggira da queste parti :grin: $) :grin:). Pensavo di poter utilizzare una cosa del genere oppure qualche bootloader di questo tipo. Non voglio usare chip FDTD e simili (il perche' non e' importante) e non mi interessa l'eventuale perdita di velocita'.
Secondo voi cosa mi conviene provare? Bisogna anche considerare che non ho un programmatore avr e non intendo comprarli/realizzarli. Riuscirei a fare tutto con il succitato Arduino? Opinioni?
TIA!

E chi sarebbe questo felice possessore di Arduini? fai i nomi che lo esponiamo al pubblico ludibrio :grin: :grin:; ma fatemi capire, dato che io ho realizzato una pcb favolosa con tutti i comfort e c'ho messo pure l'USB (oltre a ISP, seriale, connettori ecc. :D), che però uso solo come una fonte di alimentazione, mi basterebbe collegare i due pin al micro e mettere due zener di protezione e 4 resistenze per poter inviare sketch al micro tramite l'IDE? qualcuno pronunci il fatidico sì $) $) $)

Eheh, con tutte le dritte che ti sto dando ti tocchera' darmi una percentuale sull'eventuale commercializzazione della board! :grin: $) :grin:
Da quello che ho capito si', ma sto appunto cercando conferme. Il fatto e' che essendo entrato praticamente ora nel mondo di arduino, non mi e' ancora capitato di dover usare bootloader diversi, ne' di programmare tramite arduino un attiny; vorrei che qualcuno mi dicesse esplicitamente che ci e' riuscito con esiti positivi, senza fare salti mortali. Non avendo a disposizione programmatori avanzati (ma neanche cinesi, thailandesi o siciliani), non posso mettermi a programmare a piacimento i micro che mi pare e dunque chiedo a voi, che avete certamente piu' esperienza di me in questo senso, se e' fattibile quello che ho in mente con la sola scheda Arduino UNO.
In definitiva, e' possibile programmare un altro avr con un file .hex tramite arduino? Se si', come?

EDIT:
Credo che questo possa essere utile, giusto? Qualcuno l'ha provato?

Quel programmino dev'essere un semplice frontend per avrdude (non l'ho provato, non ho Windows). E quel tipo non ha scoperto nulla di nuovo dato che anche senza quel software ma collegando l'Arduino ed usando avrdude da terminale gli si può inviare lo sketch senza usare l'IDE. Basta solo compilarlo a mano, preparare il file Hex e spedirlo con avrdude indicando l'Arduino come programmatore (tutti passaggi che fa l'IDE in automatico).

Ah, ma la questione era capire se questo è riuscito ad inviare sketch da IDE (quindi roba standard, senza precompilazione) interfacciando direttamente l'USB al micro; quindi tu dici che non è possibile? E d'altra parte a che servirebbe sennò l'atmega8u2 e l'ft del 2009? =(
Riguardo l'invio di file hex per ora non mi serve, nel senso che mi sto muovendo per la semplicità e la semplificazione, qui si entra nel "tecnico" e allora ha ragione leo, tanto vale prendere un'altro Arduino....

No, non hai letto bene: io dico che è possibile. :slight_smile:
Spiegavo infatti che è il metodo usato dall'IDE: interfacciarsi con l'Arduino (ovviamente attraverso l'Atmega8U2 che funge da convertitore USB/seriale) tramite avrdude.

Buongiorno XD XD
Ma poiché parliamo di più link, pongo la specifica domanda: il "secondo" mostra uno shema in cui i due segnali USB sono collegati direttamente al micro per tramite di due R, ci sono poi altre due R di pull e due zener di protezione. Quindi non c'è nessun convertitore. Con questo schema è possibile caricare sketch dall'IDE come sempre, solo cambiando la board (visto che ha pubbliicato anche le righe)? E allora quale sarebbe la funzione del chip sugli Arduino?
Vado in "riunione", più tardi leggo la risposta.
Ciao.

Le spiegazioni del 2° link le ho lette giorni fa: se non mi ricordo male, il bootloader USBaspLoader è un bootloader specificatamente scritto per emulare un convertitore USB/seriale. Fa in pratica le veci del firmware precaricato nell'Atmega8U2. Ovviamente con le dovute proporzioni per quanto concerne la velocità di trasmissione, dato che non so a quanto andrà. Richiede però 2 kB di spazio per il bootloader, quindi lo puoi usare su un Atmega328, che ha 32 kB di Flash, altrimenti su altri micro ti "mangia" troppa memoria.

si però l'ATmega 8u2 ha l'USB hardware...emulata sarà sicuramente meno efficiente, ma se volete far fare tutto all'atmega328 allora scavate bene nel playground perchè un sacco di tempo fa mi ricordo che avevo trovato l'articolo di un tizio che aveva implementato la USB tutta in Assembler e mi pare che si potesse aggiungere agli sketch...alla stregua della NewSoftSerial.

@superkulak: non ho ancora capito qual'è il tuo scopo

Sono ancora qui :blush: , scappo, ma la notizia è buona, mi permette nella stragrande maggioranza dei casi di aggiornare lo sketch di prova sulla mia pcb senza scomodare Arduino che, ergo, non mi devo portare appresso, farò prove nei prx giorni e vedremo come va a finire, la velocità non penso sia un problema grave. STICK!Grazie, scappo...

Sì, è stato detto.

@superkulak: non ho ancora capito qual'è il tuo scopo

Il suo scopo è quello di interfacciare un Atmega standalone al PC usando pochi componenti, sicuramente non spendendo i 26€ di un'altra scheda Arduino. Ha detto infatti che anche risparmiare 10€ erano per lui un bel risparmio. $)

ma havete preso in considerazione metaboard e simili?
http://metalab.at/wiki/Metaboard
o altri sistemi appoggiati su vusb
o lufa ecc...

Mi sa che hai dato troppo boost al tuo brain.... :grin:
Guarda che è proprio di questo aggeggio che si sta parlando :smiley:

Sì, la metaboard è basata proprio sull'USBaspLoader :smiley: