Nuovi sviluppi IDE 1.8.x

comunque, giusto per la cronaca, ho aggiornato il bootloader della mia 2560, a fine processo di uploading mi da errori.

però compila e carica senza problemi sketch... boh

con usbasp:

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: verification error, first mismatch at byte 0x1e000
         0xff != 0x0d
avrdude: verification error; content mismatch

AnTrea:

lesto:
perchè nessuno lo mantiene, evidentemente :slight_smile:

bellissimo...

Sono pacchetti di secondaria importanza e per essi generalmente nei repo Ubuntu mettono una versione stabile e poi la lasciano lì. Scaricati l'IDE dal sito e risolvi.
Oppure compila dai sorgenti.
Oppure ancora passa ad una distro che aggiorna molto più velocemente i pacchetti (come ad esempio Arch Linux).

AnTrea:
comunque, giusto per la cronaca, ho aggiornato il bootloader della mia 2560, a fine processo di uploading mi da errori.

però compila e carica senza problemi sketch... boh

con usbasp:

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

avrdude: verification error, first mismatch at byte 0x1e000
        0xff != 0x0d
avrdude: verification error; content mismatch

Secondo me non hai aggiornato un bel nulla. apri il file boards.txt e sostituisci nella board che hai usato il valore efuse (attuale ff) con "0d", quindi riprova a fare l'upload, che ovviamente stai facendo mediante collegamento ISP, spero....

lesto:
uhmm in teoria la begin la dovresti chiamare una volta, e poi il resto sono server.available()..

In teoria si ma se si configura tramite DHCP nella pratica no.
Il primo begin all'avvio è ok, ma se poi durante l'esecuzione la rete va giù (per qualsiasi problema, anche semplicemente se riavviano il router) Arduino deve effettuare un nuovo begin per ottenere un nuovo indirizzo. Il suddetto problema (ora risolto!) a lungo andare portava Arduino ad un crash perchè saturava la RAM.

leo72:

AnTrea:

lesto:
perchè nessuno lo mantiene, evidentemente :slight_smile:

bellissimo...

Sono pacchetti di secondaria importanza e per essi generalmente nei repo Ubuntu mettono una versione stabile e poi la lasciano lì. Scaricati l'IDE dal sito e risolvi.
Oppure compila dai sorgenti.
Oppure ancora passa ad una distro che aggiorna molto più velocemente i pacchetti (come ad esempio Arch Linux).

Sto imparando (in modo serio) ad usare linux "solo" adesso...
Avrei pure scaricato la versione dal sito, però vorrei quelle cose a tipo bimbominkia: l'iconcina e la cartella di arduino nella cartella di sistema giusta (che non so dove dovrei mettere)
Se magari mi dai un suggerimento.... :wink:

Prof, ho scritto che ho usato la usbasp, quindi.... :slight_smile:
Ora provo a fare l'upload modificando il fuse. Grazie

No. Basta fare ogni tanto il maintain(). :wink:
Non c'è bisogno di un nuovo begin.

int EthernetClass::maintain(){
  int rc = DHCP_CHECK_NONE;
  if(_dhcp != NULL){
    //we have a pointer to dhcp, use it
    rc = _dhcp->checkLease();
    switch ( rc ){
      case DHCP_CHECK_NONE:
        //nothing done
        break;
      case DHCP_CHECK_RENEW_OK:
      case DHCP_CHECK_REBIND_OK:
        //we might have got a new IP.
        W5100.setIPAddress(_dhcp->getLocalIp().raw_address());
        W5100.setGatewayIp(_dhcp->getGatewayIp().raw_address());
        W5100.setSubnetMask(_dhcp->getSubnetMask().raw_address());
        _dnsServerAddress = _dhcp->getDnsServerIp();
        break;
      default:
        //this is actually a error, it will retry though
        break;
    }
  }
  return rc;
}

AnTrea:

[quote author=Michele Menniti link=topic=153592.msg1153481#msg1153481 date=1363105438]
Secondo me non hai aggiornato un bel nulla. apri il file boards.txt e sostituisci nella board che hai usato il valore efuse (attuale ff) con "0d", quindi riprova a fare l'upload, che ovviamente stai facendo mediante collegamento ISP, spero....

Prof, ho scritto che ho usato la usbasp, quindi.... :slight_smile:
Ora provo a fare l'upload modificando il fuse. Grazie
[/quote]

Quant'è brutto quando non trovo le cose al posto loro:

l'estended fuse è settato a 0xFD, siamo sicuri che settandolo a 0d risolvo la questione? XD

mega2560.name=Arduino Mega 2560 or Mega ADK

mega2560.upload.protocol=wiring
mega2560.upload.maximum_size=258048
mega2560.upload.speed=115200

mega2560.bootloader.low_fuses=0xFF
mega2560.bootloader.high_fuses=0xD8
mega2560.bootloader.extended_fuses=0xFD
mega2560.bootloader.path=stk500v2
mega2560.bootloader.file=stk500boot_v2_mega2560.hex
mega2560.bootloader.unlock_bits=0x3F
mega2560.bootloader.lock_bits=0x0F

mega2560.build.mcu=atmega2560
mega2560.build.f_cpu=16000000L
mega2560.build.core=arduino
mega2560.build.variant=mega

PaoloP:
No. Basta fare ogni tanto il maintain(). :wink:
Non c'è bisogno di un nuovo begin.

Accidenti, mi accorgo di ciò che sistemano e non delle novità... :sleeping:
GRAZIE!

@ Antrea: di solito quel messaggio esce quando la board ha l'EFUSE a FF ed invece lo vuole a 07, cosa che non cambia la sostanza visto che sono usati solo i primi tre bit in quesl fuse. Ma nel tuo caso specifico, a ben rileggere, credo che stia lamentando il fatto che si aspettava di trovare 0d in una data locazione di memoria ed invece la trova vuota (ff), quindi tempo che non sia questo il problema. Non hai una UNO/2009 per ritentare l'operazione usandola al posto del tuo accrocchio?

com'è bello parlare tra nerd.

si prof, ho appena eseguito il flashing icsp tramite bitbang da duemilanove a 2560: stesso errore :frowning:

così ne ho approfittato anche per aggiornare la usbasp (tramite bitbang)

ho eseguito nuovamente l'aggiornamento del bootloader della 2560 con la usbasp appena aggiornata: non mi da errore :slight_smile:

NOTA: con questo bootloader, dopo il flashing, il led 13 blinka un pò strano (2 blink veloci - off lungo)... con e senza errore (di cui sopra), c'è sempre questo blinking strano; ERGO, seppur nel terminale mi compare quell'errore, il bootloader viene flashato ugualmente (credo).

C'è un modo per verificare che bootloader vi è flashato?

Sono bravo? :slight_smile:

sei bravo sì :stuck_out_tongue: praticamente un genio. Può essere che l'errore si riferisse all'accrocchio, in questo caso avevi comunque caricato il bl prima. Non so dirti se sono normali quei flashing, ma se gli sketch si caricano e funziona tutto, non vedo che problemi dovresti avere.
ebbbbbravo guagliò XD

in teoria puoi rileggare il contenuto della lash e controllare che sia corretto... qullo che fa il cjeck con il byte mismark.

L'errore da 3 informazioni: l'inidirizzo della cella, il valore atteso e l'errore trovato.

Potrebbe essere che una cella della flash è fritta (ma mi pare strano, se non erro si frigge una porzione più grossa alla volta)

alla prima googleata:Arduino Forum

in pratica:

  1. hai disattivato l'autoreset sul'arduino ISP?

0x1e000 is exactly 120KB... so, I suppose that the problem should be related to the STK500 V2 protocol and the larger memory size.

lesto:
in pratica:

  1. hai disattivato l'autoreset sul'arduino ISP?

0x1e000 is exactly 120KB... so, I suppose that the problem should be related to the STK500 V2 protocol and the larger memory size.

Ci stiamo avvicinando.
Cosa intendi per autoreset sull'arduino isp?
Sto usando usbasp (USBasp - USB programmer for Atmel AVR controllers - fischl.de) e ho notato che la mia versione, non ha il reset dell'atmega8a collegato a +5v. Mentre lo schema elettrico ufficiale si.
Può essere questo il problema? :slight_smile:

qui dicono addirittura di ignorare tale problema: Bootloader for Arduino Mega2560

Ma il tuo è un USBasp o un "clone"?
Hai messo l'ultimo firmware? Solo questo supporta la programmazione su micro con più di 128 kB.

leo72:
Ma il tuo è un USBasp o un "clone"?
Hai messo l'ultimo firmware? Solo questo supporta la programmazione su micro con più di 128 kB.

ultimo firmware ma usbasp clone... devo debuggare l'hw? :slight_smile:

AnTrea:
ultimo firmware ma usbasp clone... devo debuggare l'hw? :slight_smile:

Odio i cloni, non sai mai con che livello di replica sono fatti. :wink:
Potrebbe anche essere qualcosa sull'HW, a questo punto.

A proposito di malloc()
Vi segnalo la nuova libreria SDfat --> http://arduino.cc/forum/index.php/topic,154033.0.html
E' uscita 40 minuti fa. :grin:

PaoloP:
A proposito di malloc()
Vi segnalo la nuova libreria SDfat --> http://arduino.cc/forum/index.php/topic,154033.0.html
E' uscita 40 minuti fa. :grin:

azz, ma tu ci abiti da quelle parti? :grin:

Perché non c'è lo "scrollable menu" ???????????
L'hanno messo nella 1.5.2 e non in questa :~

Novità in cantiere per la 1.0.5

ARDUINO 1.0.5 - 2013.04.08

[core]

  • [avr] malloc bug: backported avr-libc 1.8.0 implementation
  • [avr] removed deprecated interrupt handlers causing compiler issues
    with newer avr-gcc.

[libraries]

  • Upgrades to WiFi library

[firmwares]

  • Upgrades to WiFi firmwares

[ide]

* Backport from 1.5: install Library from file

Interessante la possibilità di installare le librerie con un click.
Non so come funzioni ma credo si possa indicare il file zip (con i file interni strutturati in una certa maniera) che estrae i contenuti nella apposita directory, una manna per i newbies.

il file (Arduino/revisions.txt at master · arduino/Arduino · GitHub) porta la data dell'8 ma la versione è ancora in cantiere.

P.S. Lo sviluppo della 1.5.3 è al 60%.