Inchiodare e recuperare La Fonera 2200 in tempi da record

Mercoledì mi è arrivato un access point La Fonera 2200 (ovvero l'ultimo modello attualmente disponibile) dopo averlo recuperato da una persona che ne aveva uno di troppo e non sapeva che farsene. Inutile dire che non sapevo cosa farne delle funzionalità offerte dal firmware originale Fon per cui ho provveduto a sostituirlo subito con DD-WRT. Non intendo soffermarmi su metodi e opzioni per flashare la vostra Fonera con firmware alternativi perché per internet potete trovare tanta documentazione da avere solo l'imbarazzo della scelta (per andare a colpo sicuro vi rimando a un articolo piuttosto recente di WiFi-ita inerente proprio DD-WRT), piuttosto vi racconto cosa mi è successo che può essere una casistica un po' più interessante.

Partirò dalla morale della storia: se avete il modello 2200 con installata una delle ultime release di DD-WRT (v24 RC6 nel mio caso), prima di effettuare le operazioni di abilitazione e pulizia della partizione JFFS pensateci due volte perché parrebbero esserci problemi, una circostanza che posso confermarvi personalmente dal momento che si tratta dell'operazione che mi ha "consentito" di inchiodare La Fonera nel giro di 2 ore dal primo boot. Ciò che rende particolarmente noiosa questa condizione è che il vostro access point risulterà totalmente irraggiungibile via rete (non emette nemmeno pacchetti ARP verso la rete, per intenderci), per cui il ripristino è fattibile solamente attraverso il collegamento seriale per avere accesso diretto a RedBoot e quindi alle fasi iniziali di avvio del device. Vi è una quantità altrettanto nutrita di documentazione per poter accedere alla vostra Fonera via seriale, anche in questo caso vi indirizzo a un articolo completo e in italiano.

Riassumendo: mercoledì sera ho ricevuto La Fonera ma è stata inesorabilmente brickata dopo solamente 2 ore, giovedì ho studiato il problema con mio padre dal momento che è lui l'elettronico di famiglia (io non ci capisco molto e ogni tanto me ne pento), venerdì sono stati recuperati i pezzi necessari per la realizzazione dell'adattatore seriale (sono tutti componenti facilmente reperibili e il materiale necessario non dovrebbe costare più di 10€) e sempre in giornata è stata realizzata e infine sabato mattina è avvenuto il ripristino di quello che era diventato semplicemente un bel mattoncino bianco e grigio.

Una volta collegato il computer all'access point tramite l'interfaccia custom fresca di realizzazione e poi avviato ho capito subito il motivo per cui risultava del tutto irraggiungibile via rete anche nelle prime fasi di avvio di RedBoot: all'accensione, un avvertimento comunicava un errore di checksum dell'immagine sulla flash e subito dopo partiva alla ricerca di un server BOOTP che, dopo qualche secondo, falliva con il messaggio Can’t get BOOTP info for device interrompendo del tutto l'avvio di RedBoot a meno di non interagire in questa fase con la pressione di un tasto. In questo caso ricaricare l'immagine del firmware originale, come inizialmente ho tentato di fare, non serve a nulla perché in realtà bisogna inizializzare nuovamente la configurazione della flash attraverso il comando fconfig -i impostando i parametri che vi verranno richiesti. Riporto come esempio la mia configurazione:

  1. Run script at boot: true     (deve essere true, altrimenti RedBoot non avvierà boot script)
  2. Boot script:
  3. Boot script timeout (1000ms resolution): 10     (ritardo prima dell'esecuzione di boot script)
  4. Use BOOTP for network configuration: false    (impostiamo parametri statici per la rete, no BOOTP!)
  5. Gateway IP address: 192.168.1.100
  6. Local IP address: 192.168.1.206
  7. Local IP address mask: 255.255.255.0
  8. Default server IP address: 192.168.1.166
  9. Console baud rate: 9600         (velocità per collegamento seriale, lasciate questo valore)
  10. GDB connection port: 9000      (porta TCP per l'accesso telnet a RedBoot, lasciate questo valore)
  11. Force console for special debug messages: false
  12. Network debug at boot time: false

Il parametro boot script può essere lasciato vuoto perché a noi interessa semplicemente che si avvii normalmente RedBoot in modo da poter procedere con il flash di DD-WRT via ethernet tramite Ap51 (in questa fase il parametro verrà impostato automaticamente), opzionalmente potreste provare prima a lanciare manualmente il comando fis load -l vmlinux.bin.l7 seguito da exec per vedere se l'installazione di DD-WRT è ancora viva, io ho preferito ripartire da zero. Una volta salvate le impostazioni e riavviata La Fonera tramite il comando reset per verificare il normale funzionamento dell'avvio di RedBoot, potete spegnere e collegare access point e computer con il cavo ethernet e procedere alle normali operazioni di flashing tramite Ap51. Ecco un piccolo report fotografico dell'evento, tanto per documentare il tutto:

Il tavolo di lavoro allestito Inquadratura de La Fonera con l'interfaccia seriale collegata La nostra Prova iniziale per ripristinare il firmware originale: non serve a niente Configurazione di RedBoot sistemata, stiamo flashando DD-WRT con Ap51  ... ed ecco nuovamente il nostro AP funzionante, con DD-WRT

Ne approfitto per ringraziare mio padre (tanto so che mi legge) per la realizzazione della parte di interfacciamento seriale, costruita tra l'altro pensando alla compatibilità con l'NSLU2 il cui collegamento seriale, rispetto a La Fonera 2200, ha semplicemente TX e RX invertiti, ecco spiegati i due jumper visibili sulla schedina nella seconda foto.


Puoi scrivere un commento oppure inviare un trackback dal tuo sito.

9 commenti a “Inchiodare e recuperare La Fonera 2200 in tempi da record”

  1. Gravatar
    Samuele Bianchi ha detto:

    VOlevo semplicemente ringraziarti per la mini guida e farti sapere che pure io mi sono imbattuto nella tua stessa problematica non dopo 2 ore ma dopo 4 ore e mezzo...
    O siamo due sfigati o siamo degli spippoloni clamorosi!
    Pure io sono in possesso inoltre di uno NSLU2 e devo ammettere che mi sta dando delle notevoli soddisfazioni.
    Domani mi organizzerò per riciclare l'adattatore seriale per il linksys al FON 2200.

    Grazie ancora!

  2. @Samuele Bianchi: ahahah, sfigati non credo semplicemente abbiamo osato troppo 😀 In effetti avrei già dovuto insospettirmi quando ho abilitato la partizione JFFS notando che riportava 0 come spazio disponibile, però ho voluto provare lo stesso a pulirla e... brick! Comunque sono contento che ti sia tornato utile questo post.

    Per l'NSLU2... è un apparecchio semplicemente fantastico. Ho provato già due firmware alternativi (Unslung e SlugOS/BE) e prossimamente mi appresterò a flashare Debian/NSLU2, poi ne scriverò un post riassuntivo con considerazioni e pro/contro dei vari firmware e del perché di alcune mie scelte.

  3. salve, io ho collegato la 2200 tramite il circuito seriale della 2100 e nn mi fa scrivere nessun comando tramite putty..qualsiasi tasto prema nn da alcun effetto..x caso la seriale x la 2200 è diversa da quella della 2100?..o è un problema del router?

  4. @willi: non ho mai avuto una Fonera modello 2100 quindi non ho informazioni di prima mano, ma già il connettore mi pare sia differente da quello della 2200. Ad ogni modo prova a vedere se questo articolo può tornarti utile.

  5. io ho provato sia con la 2100 che con la 2200 a installare dd-wrt e tutte e due quando abilito jffs sono morte e le ho recuperate con il cavo seriale.
    Sono molto interessato ad avere dd-wrt con jffs abilitato per caricare altri programmi che mi servono, qualcuno ha scoperto come aggirare questo bug?

  6. @hidaba: purtroppo non ho ancora avuto altro tempo per giocare con la fonera e con altre versioni di DD-WRT (mi pare che almeno una nuova nel frattempo sia già uscita), ma non mi pare ci siano novità su questo fronte. Sinceramente non ho voglia di sfruttare l'SD-hack per "espandere" la capacità dello scatolotto, però chissà...

  7. Gravatar
    doom5 ha detto:

    Salve.
    Anch'io per lo stesso problema ho brikkato la Fonera 2100 la prima volta, ma grazie al blog di hidaba (che vedo presente anche qui) ho utilizzato un cavetto di un siemens come cavo seriale.
    Ciao

  8. Gravatar
    Davide ha detto:

    Ciao,
    anch'io ho avuto lo stesso problema e infatti seguendo questa guida sono riuscito ad accedere via seriale al redboot. Il mio problema è abbastanza stupido... io ho inserito il comando fconfig -i..e sullo schermo mi ritrovo :

    Initialize non-volatile configuration - continue (y/n)?

    io digito "y" e do invio

    la seconda riga :

    Run script at boot : false

    ma inserendo "true" e premo invio e mi dice :

    ** invalid entry

    non riesco a capire eppure io inserisco giusto il valore..cosaposso fare?

    ciao

  9. Gravatar
    corion ha detto:

    Ciao ragazzi stesso problema con dd-wrt rc6 (ora si sa che era difettoso) appena ho abilitato il clean di jffs2 il fonera si è piantato (e subito dopo averlo comprato propio come te). Con il cavo seriale redboot mi dice le stesse cose ma non mi fa scirvere niente. Cosa intendi con "terrompendo del tutto l’avvio di RedBoot a meno di non interagire in questa fase con la pressione di un tasto" non riesco a fermarlo. con nessun programma, putty, hyper terminal, minicom su linux...ignora sempre i miei comandi.
    avete qualche suggerimento.
    grazie tante

Lascia un commento

Puoi utilizzare i seguenti tag XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>