.: robotitaly.NET :. - la community italiana sulla robotica  

Vai indietro   .: robotitaly.NET :. - la community italiana sulla robotica > Prodotti DROIDS > 990.005 MuIn - Multi Inteface Board

Rispondi
 
Strumenti della discussione Modalità di visualizzazione
  #1  
Vecchio 03-15-2012, 08:51 AM
T2G T2G non è collegato
Roboter
 
Registrato dal: May 2011
Messaggi: 10
predefinito Sostituzione FirmWare con ICD2 e XBee ..Info

Carissimi ciao, porgo alcune domande anche banali x molti su come sostituire il Firmware della MuIN.

1) Il Bootloader precaricato a cosa serve?
2) Viene cancellato se carico il nuovo Firmware?
3) Una volta compilato il firmware x caricarlo sulla MuIn collego l'ICD2 al PC con MPLAB e poi alla MuIN, ma la MuIN deve essere Alimentata?
4) Mi basta dare il comando di upload o devo anche specificare in che parte e a che indirizzo ecc. deve essere caricato?
5) l'XBee se sostituisco con i passi sopra il Firmware avendo lasciato la programmazione della seriale originale può avere problemi?

grazie a tutti T2G

Ultima modifica di T2G; 03-15-2012 a 10:20 PM
Rispondi quotando
  #2  
Vecchio 03-15-2012, 10:09 AM
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Moderator
 
Registrato dal: Mar 2006
residenza: Roma
Messaggi: 2,133
Blog Entries: 1
predefinito

Quote:
Originariamente inviata da T2G Visualizza il messaggio
1) Il Bootloader precaricato a cosa serve?
Per aggiornare/modificare il firmware senza dover necessariamente disporre di un programmatore hardware.

Quote:
2) Viene cancellato se carico il nuovo Firmware?
Si se lo fai tramite un programmatore hardware, ma in questo caso il bootloader non ti serve.

Quote:
3) Una volta compilato il firmware x caricarlo sulla MuIn collego l'ICD2 al PC con MPLAB e poi alla MuIN, ma la MuIN deve essere Alimentata?
L'icd2 non prevede l'alimentazione diretta della scheda pertanto la MuIn deve essere alimentata per poterla programmare.

Quote:
4) Mi basta dare il comando di upload o devo anche specificare in che parte e a che indirizzo ecc. deve essere caricato?
Premendo il tasto di upload il firmware viene automaticamente caricato sul processore, non devi specificare nulla.

[quote]
5) l'XBee se sostituisco con i passi sopra il Firmware avendo lasciato la programmazione della seriale originale può avere problemi?
[quote]

Se sostituisci il firmware l'Xbee funziona lo stesso a patto che lo gestisci tramite la UART del micro.
Rispondi quotando
  #3  
Vecchio 03-15-2012, 12:23 PM
T2G T2G non è collegato
Roboter
 
Registrato dal: May 2011
Messaggi: 10
predefinito ma allora se ho XBee sulla MuIN posso modificare Firmware senza usare ICD2

T2G: a cosa serve il Bootloader??

astrobeed: Per aggiornare/modificare il firmware senza dover necessariamente disporre di un programmatore hardware.

-----------------------------
T2G: Inanzitutto grazie astrobeed, se mai ti incontrerò di devo da bere...minimo.

Tornando a noi, vuoi dire che col Bootloader è possibile cambiare il Firmware senza ricorrere al programmatore hardware (ICD2 o altro) mi basta avere una comunicazione Seriale tramite XBee sulla scheda o collegamento tramite RX,TX,5V e GND o altro che non so??

grazie astrobeed, sei anche meglio di Messi-Barsa, ciao T2G

Ultima modifica di T2G; 03-15-2012 a 09:50 PM
Rispondi quotando
  #4  
Vecchio 03-15-2012, 10:16 PM
T2G T2G non è collegato
Roboter
 
Registrato dal: May 2011
Messaggi: 10
predefinito Con XBee propri NON VA !!!

Se col Bootloader è possibile cambiare il Firmware senza ricorrere al programmatore hardware e mi basta una comunicazione Seriale ... e visto che uso MuIN tramite XBee ho deciso di usare questa ...

Perchè non va!!! ho provato in tutti i modi, aggiungo anche che ho scaricato l'utimo 'tinybldWin' dal sito della Microchip perchè con quello dei link standard non ottenevo che :

Connected to \\.\COM2 at 19200
Searching for PIC ...Not found,
ERROR!

con l'ultimo Tiny Bootloader è anche possibile usare BaudRate diversi. Ho provato quindi oltre che coi 2 XBee programmati a 19200 con i 2 che uso normalmente per comunicare/comandare con la MuIN e quindi funzionantiiiiiii!

ma la risposta qual'è stata!!!

Connected to \\.\COM2 at 115200
Searching for PIC ...Not found,
ERROR!

comincio ad essere un po' spazientito dalla MuIN e sto diventando lo zimbello dei mie colleghi (per le energie che sto letteralmente buttando a.....) che invece anno puntato su LabVIEW con l'Arduinouno e senza tante fatice hanno sempre, in tempi brevi, buoni risultati. Acc........ scusate lo sfogo!!

vostro T2G

Ultima modifica di T2G; 03-16-2012 a 08:08 AM
Rispondi quotando
  #5  
Vecchio 03-16-2012, 09:55 AM
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Moderator
 
Registrato dal: Mar 2006
residenza: Roma
Messaggi: 2,133
Blog Entries: 1
predefinito

Quote:
Originariamente inviata da T2G Visualizza il messaggio
Perchè non va!!! ho provato in tutti i modi, aggiungo anche che ho scaricato l'utimo 'tinybldWin' dal sito della Microchip perchè con quello dei link standard non ottenevo che :
Sul data sheet della MuIn è scritto chiaramente che il funzionamento del bootloader è garantito solo tramite porta seriale (connessione via cavo) e non tramite Xbee, quest'ultimo introduce delle latenze che danno fastidio al bootloader.
Dato che hai a disposizione un ICD2 l'uso del bootloader è assolutamente inutile, non solo ci metti meno tempo a trasferire un programma, ma hai anche la possibilità di utilizzare il debug hardware (ICD) per risolvere eventuali problemi software.

p.s.
Dato che la MuIn si programma in C Ansi nativo è molto più performante di Arduino programmato tramite Wiring, tanto per dare un esempio, la MuIn può leggere/scrivere un pin in solo 100ns, Arduino ci mette come minimo 2.5 us, la MuIn può utilizzare il PWM con frequenze di qualche decina di kHz con risoluzione a 1024 step (10 bit), Arduino a 490 Hz fissi e con solo 255 step (8 bit), e la lista dei vantaggi offerti dalla MuIn è molto lunga
Anche la MuIn è utlizzabile con Labview, ovviamente tocca scriversi il proprio software di controllo.

Ultima modifica di astrobeed; 03-16-2012 a 10:01 AM
Rispondi quotando
  #6  
Vecchio 03-16-2012, 03:14 PM
T2G T2G non è collegato
Roboter
 
Registrato dal: May 2011
Messaggi: 10
predefinito

Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
Sul data sheet della MuIn è scritto chiaramente che il funzionamento del bootloader è garantito solo tramite porta seriale (connessione via cavo) e non tramite Xbee, quest'ultimo introduce delle latenze che danno fastidio al bootloader.
Scusa ma mi sento un po' frustrato ultimamente.. E quello che dici a proposito
di XBee mi è sfuggito.. Non so se l'hai capito ma mi rivolgo a voi solo dopo aver perso ore a ricercare personalmente la soluzione. Dal Tiny Bootloader per ora ho ricevuto solo questo:

Interface to TinyBootLoader, v1.9.8
contact: claudiu.chiculita@ugal.ro
http://www.etc.ugal.ro/cchiculita/so...bootloader.htm
--------------------------------------------------------------------------------------------------

Connected to \\.\COM2 at 19200
Searching for PIC ...
Found:18F 252o/452o

>> e quando eseguo Write Flash ottengo:

Connected to \\.\COM2 at 19200
HEX: 4 min old, INHX32,18Fcode+cfg+eeprom , total=7672 bytes.
Searching for PIC ...Not found,
ERROR!

>> vado a provare poi se per caso il firmware è stato caricato ma PICCHE!!!

Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
Dato che hai a disposizione un ICD2 l'uso del bootloader è assolutamente inutile, non solo ci metti meno tempo a trasferire un programma, ma hai anche la possibilità di utilizzare il debug hardware (ICD) per risolvere eventuali problemi software.
>>si se non avessi ottenuto dei risultati anche peggiori della XBee. In primis il connettore/adattatore del cavetto ICD2->MuIN.ICPS non corrispondono in piedinatura ICD2 6pin MuIN.ICPS 5pin ho provato a collegarli partendo dal 1pin dell'ICD2 e mi vedeva la schedina ma mi avvisa che:

ICDWarn0020: Invalid target device id (expected=0x88, read=0x0)

...Connected
Setting Vdd source to target
ICDWarn0020: Invalid target device id (expected=0x88, read=0x0)
...Reading ICD Product ID
Running ICD Self Test
... Failed Self Test. See ICD2 Settings (Programmer->Settings) (status tab) for details.
MPLAB ICD 2 ready for next operation

>>e qui, non essendo bravo come te, comincio a perdermi!
>>se comunque dopo aver compilato con successo, do' il comando Program
>> ottengo:

CDWarn0021: No Vdd voltage detected at Target. Continue with operation?

>>rispondo OK

ICDWarn0052: MPLAB ICD 2 cannot validate a target device. Please make sure that the target device is connected and properly powered. Select "OK" to continue, or "CANCEL" to abort the operation

>>rispondo OK e ottengo:

Programming Target...
ICDWarn0021: No Vdd voltage detected at Target. Continue with operation?
ICDWarn0052: MPLAB ICD 2 cannot validate a target device. Please make sure that the target device is connected and properly powered. Select "OK" to continue, or "CANCEL" to abort the operation
...Validating configuration fields
...Erasing Part
...Programming EEPROM Memory
...Programming Program Memory (0x0 - 0x1DFF)
Verifying...
ICDWarn0021: No Vdd voltage detected at Target. Continue with operation?
ICDWarn0052: MPLAB ICD 2 cannot validate a target device. Please make sure that the target device is connected and properly powered. Select "OK" to continue, or "CANCEL" to abort the operation
...Program Memory
ICD0161: Verify failed (MemType = Program, Address = 0x0, Expected Val = 0xEFAE, Val Read = 0x0)
ICD0275: Programming failed.
MPLAB ICD 2 ready for next operation

>>e non mi ha caricato niente!!!!

Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
p.s.
Dato che la MuIn si programma in C Ansi nativo è molto più performante di Arduino programmato tramite Wiring, tanto per dare un esempio, la MuIn può leggere/scrivere un pin in solo 100ns, Arduino ci mette come minimo 2.5 us, la MuIn può utilizzare il PWM con frequenze di qualche decina di kHz con risoluzione a 1024 step (10 bit), Arduino a 490 Hz fissi e con solo 255 step (8 bit), e la lista dei vantaggi offerti dalla MuIn è molto lunga
Anche la MuIn è utlizzabile con Labview, ovviamente tocca scriversi il proprio software di controllo.
>>ho ancora fiducia nella MuIN anche se un po' sta scemando. Ammiro chi a fatto il Firmware, non se ne trovano tanti in Italy che sanno programmare così. Alcune astuzie come l'uso di & al posto di && nelle if, l'aver diviso il tempo del frame dei Servo di 20ms in 4 col calcolo della posizione tramite T1,T3 è una furbata che pochi sanno fare (anche se io sto tentando di liberare almeno 1 dei tre Timer usati)...sono tutti sti rallentamenti che i mie colleghi non hanno che mi stanno un po' demotivando...spero col tuo aiuto di risolveli in fretta e di poter alzare ancora con un po' di orgoglio la testa.

Ciao e grazie
Rispondi quotando
  #7  
Vecchio 03-16-2012, 03:37 PM
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Moderator
 
Registrato dal: Mar 2006
residenza: Roma
Messaggi: 2,133
Blog Entries: 1
predefinito

Quote:
Originariamente inviata da T2G Visualizza il messaggio
Scusa ma mi sento un po' frustrato ultimamente.. E quello che dici a proposito
di XBee mi è sfuggito.. Non so se l'hai capito ma mi rivolgo a voi solo dopo aver perso ore a ricercare personalmente la soluzione. Dal Tiny Bootloader per ora ho ricevuto solo questo:

>> e quando eseguo Write Flash ottengo:

Connected to \\.\COM2 at 19200
HEX: 4 min old, INHX32,18Fcode+cfg+eeprom , total=7672 bytes.
Searching for PIC ...Not found,
ERROR!

>> vado a provare poi se per caso il firmware è stato caricato ma PICCHE!!!
Tagliamo la testa al toro, parti dal presupposto che è impossibile usare il bootloader con gli Xbee, non è proprio così perché io riesco a programmare le MuIn via bootloader con gli Xbee, però tocca modificare i parametri degli Xbee e tocca perderci tempo, non vale la pena visto che hai un ICD2.

Quote:
>>si se non avessi ottenuto dei risultati anche peggiori della XBee. In primis il connettore/adattatore del cavetto ICD2->MuIN.ICPS non corrispondono in piedinatura ICD2 6pin MuIN.ICPS 5pin ho provato a collegarli partendo dal 1pin dell'ICD2
Il connettore ISCP della Muin è pensato per collegarci direttamente un Pickit 2,o 3, è tra i tool di programmazione più economici in assoluto e funziona benissimo.
In tutti i casi il layout dei pin è quello standard Microchip, che è lo steso usato sul ICD2, o 3, con la differenza che sul ICD c'è un connettore RJ11 invece di una strip.
Sono usati solo sei cinque pin perché il sesto serve per la programmazione LVP che sulla MuIn non è utilizzata, basta che colleghi l'ICD2 al connettore della MuIn pin to pin, cioè 1 con 1, 2 con 2 ... 5 con 5, però fai riferimento al manuale del ICD2 per la disposizione dei pin.
Sulla MuIn il pin 1 (MCLR) del connettore ICSP è quello dal lato opposto rispetto al pulsante di reset, ovvero si trova quasi alla stessa altezza del pin 1 del micro al quale è collegato.

Quote:
>>rispondo OK e ottengo:
Se il micro non viene riconosciuto è inutile che vai avanti, non verrà mai programmato.
Ricordati che la MuIn deve essere alimentata per poterla programmare con l'ICD2.


Quote:
ho ancora fiducia nella MuIN anche se un po' sta scemando. Ammiro chi a fatto il Firmware, non se ne trovano tanti in Italy che sanno programmare così
Per dirla tutta la MuIn è un mio progetto, sia come hardware che come software, forse è per questo motivo che so tutto di questa scheda

Quote:
sono tutti sti rallentamenti che i mie colleghi non hanno che mi stanno un po' demotivando...spero col tuo aiuto di risolveli in fretta e di poter alzare ancora con un po' di orgoglio la testa.
Se spieghi cosa devi fare esattamente magari è più semplice aiutarti, altrimenti va a finire che tra un mese siamo ancora qui a discutere del bootloader
Rispondi quotando
  #8  
Vecchio 03-18-2012, 11:32 PM
T2G T2G non è collegato
Roboter
 
Registrato dal: May 2011
Messaggi: 10
Wink non è impossibile usare il bootloader con gli Xbee

Ciao innanzitutto, ti avevo risposto con molti dettagli ieri, ma poi mi ha richiesto di riloggarmi mentre tentavo di spedirti il msg e è successo qualcosa che mi ha fatto perdere il tutto. E' la prima volta che mi capita una cosa del genere!!


Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
Tagliamo la testa al toro, parti dal presupposto che è impossibile usare il bootloader con gli Xbee,
Non parto dal presupposto che è impossibile usare il bootloader con gli Xbee, ma come hai visto dal messaggio precedente il Tiny vede il Pic tenti di scrivererci e ti dice che il Pic è sparito... ma!!!
Indubbiamente dipente dalle latenze di XBee che ho potuto poi riscontrare una volta risolti i problemi grossi che avevo con ICD2.


Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
non è proprio così perché io riesco a programmare le MuIn via bootloader con gli Xbee, però tocca modificare i parametri degli Xbee e tocca perderci tempo, non vale la pena visto che hai un ICD2.
Vale si la pena visto che la scelta di MuIN è stata fatta in funzione dell'XBee per non avere altre Shields in aggiunta. Se poi si riesce a programmare la MuIn via bootloader con gli Xbee, tu eviti di doverla smotare dai progetti x attaccarci l'ICD2 o altro!!


Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
Il connettore ISCP della Muin è pensato per collegarci direttamente un Pickit 2,o 3, è tra i tool di programmazione più economici in assoluto e funziona benissimo.
In tutti i casi il layout dei pin è quello standard Microchip, che è lo steso usato sul ICD2, o 3, con la differenza che sul ICD c'è un connettore RJ11 invece di una strip.
Sono usati solo sei cinque pin perché il sesto serve per la programmazione LVP che sulla MuIn non è utilizzata, basta che colleghi l'ICD2 al connettore della MuIn pin to pin, cioè 1 con 1, 2 con 2 ... 5 con 5, però fai riferimento al manuale del ICD2 per la disposizione dei pin.
Sulla MuIn il pin 1 (MCLR) del connettore ICSP è quello dal lato opposto rispetto al pulsante di reset, ovvero si trova quasi alla stessa altezza del pin 1 del micro al quale è collegato.

Come già detto io uso l'adattatore ( RJ11->strip.ISCP ) AC164110 (RJ-11 to ICSP ADAPTER) della Microchip stessa. Come hai potuto vedere dalla discussione precedente il collegamento "pin to pin, cioè 1 con 1, 2 con 2 ... 5 con 5" come dici tu, mi diceva ERROR NON VEDO LA SCHEDINA!!
Però e stato positiva questa tua risposta in quanto mi diceva che "Sulla MuIn il pin 1 (MCLR) del connettore ICSP" il che mi ha stimolato ad andare a vedere sui vari datasheet i collegamenti. Dai documenti ufficiali sembrava tutto a posto e non ci si capiva molto. Poi su un forum di smanettoni, perchè su quelli ufficiali non c'è nulla, ho trovato questo:

I just tried to program (ICSP) my PIC16F627 with my ICD2 and the AC164110 (RJ-11 to ICSP ADAPTER). I cannot do it. (My MPASM code has built successfully)
....In MPLAB i am given messages to go to the status tab on the settings dialog box...
...and it reports that it cannot detect Vdd.

Luce da Luce...il mio stesso errore!!!!!!!!!!!!
ecco la risposta di un tecnico non ufficiale:

Double-check your connections and the nature of the wiring of the ICSP cable supplied with the MPLAB ICD 2 tool.
Remember that the wire at Pin #1 at one end of the ICSP cable's connector is connected to Pin #6 at the opposite ICSP cable's connector:

Pin #1 .... Pin #6
Pin #2 .... Pin #5
Pin #3 .... Pin #4
Pin #4 .... Pin #3
Pin #5 .... Pin #2
Pin #6 .... Pin #1

TENTO! ho preso AC164110 l'ho letteralmente RIBALTATO sotto sopra e ICD2 vede MuIN.
Ora non so' se la piedinatura di MuIn vada invertita o se è Microchip che ha messo sul mercato una cantonata? Resta il fatto che le informazioni vanno fatte girare, in caso contrario girano altre cose!


Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
Se il micro non viene riconosciuto è inutile che vai avanti, non verrà mai programmato.
Ricordati che la MuIn deve essere alimentata per poterla programmare con l'ICD2.
Come hai visto l'errore non era mio e la schedina era alimentata.


Quote:
Originariamente inviata da astrobeed Visualizza il messaggio
Per dirla tutta la MuIn è un mio progetto, sia come hardware che come software, forse è per questo motivo che so tutto di questa scheda

Se spieghi cosa devi fare esattamente magari è più semplice aiutarti, altrimenti va a finire che tra un mese siamo ancora qui a discutere del bootloader.
A dirti il vero avevo intuito una cosa del genere, complimenti, sei in gamba.
A questo punto per far quadrare il cerchio ho bisogno di eliminare i tempi di latenza dell' XBee. Se mi puoi far avere le tue configurazioni te ne sarei grato.
Se si riesce a risolvere sto problema credo e renderlo fruibile credo che ne trarrà un grosso vantaggio il tuo progetto. Non tutti hanno tempo da perdere come ho fatto io a risolvere i problemi. Uno sceglie un prodotto per poterlo impegnare spendendoci meno tempo possibile, prendo una scheda che fa questo e mi aspetto che lo faccia senza darmi tanti problemi. Non in pubblico ti potrò dire i pro e i contro attuali ma facilmente eliminabili della MuIN e come renderla un valido rivale di chi tu sai..

Se mi puoi far avere le configurazioni di XBee ed aiutarmi a far si che non cerchi facendo scanni degli end-point ma sia un collegamento diretto tra due eliminado tutte le latenze, te ne sarei molto grato.

Ciao e grazie

P.S. su come ho impostato in crescendo le domande in queste nostre discussioni, tentando di essere pure didattico, credo che ne trarrà vantaggio la MuIN.

Ultima modifica di T2G; 03-18-2012 a 11:35 PM Motivo: dimenticato titolo
Rispondi quotando
  #9  
Vecchio 03-24-2012, 06:32 AM
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Moderator
 
Registrato dal: Mar 2006
residenza: Roma
Messaggi: 2,133
Blog Entries: 1
predefinito

Quote:
Originariamente inviata da T2G Visualizza il messaggio
Non parto dal presupposto che è impossibile usare il bootloader con gli Xbee,
Invece devi proprio partire da questo presupposto perché la programmazione da Xbee è una cosa molto aleatoria, a volte va e molte altre volte non va.

Quote:
Se poi si riesce a programmare la MuIn via bootloader con gli Xbee, tu eviti di doverla smotare dai progetti x attaccarci l'ICD2 o altro!!
Te lo ripeto per la seconda volta, dopo di che per me la questione è chiusa, non puoi programmare la MuIn USB da Xbee perché non rispetta le richieste del bootloader.
Per programmarla tramite ICD2 non devi smontare nulla, basta che ti riporti in esterno un cavetto, corto, con i segnali del connettore ICSP se questo non è agibile facilmente.

Quote:
Dai documenti ufficiali sembrava tutto a posto e non ci si capiva molto. Poi su un forum di smanettoni, perchè su quelli ufficiali non c'è nulla, ho trovato questo:
Io ti ho detto di fare riferimento alla documentazione ufficiale del ICD2 dove si vede chiaramente che il pin 6 del connettore sul ICD2 corrisponde a MCLR perché quando collegato al RJ11 sulla scheda da programmare diventa il pin 1 di questo per via dell'inversione speculare dovuta a come solo collegati i connettori.

Quote:
Come hai visto l'errore non era mio e la schedina era alimentata.
L'errore era tuo perché non hai letto attentamente la documentazione di Microchip.
Rispondi quotando
Rispondi

Segnalibri

Strumenti della discussione
Modalità di visualizzazione

Regole d'invio
Non puoi inserire discussioni
Non puoi inserire repliche
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è attivo
Le smilie sono attive
Il codice IMG è attivo
il codice HTML è disattivato

Salto del forum


Tutti gli orari sono GMT. Attualmente sono le 12:56 AM.


Powered by vBulletin versione 3.8.7
Copyright ©: 2000 - 2018, Jelsoft Enterprises Ltd.