CENTRODIGRAVITA.it
Ripristino TP-LINK 941 OPEN-WRT tramite seriale e ARDUINO
|
|
Con un errata configurazione della ETH0 da interfaccia WEB luci OPEN-WR si blocca l'accesso alla configurazione (web, telnet, ssh) da tutte le porte di rete del TP-LINK e quindi se non si hanno attive reti wireless (di default sono disattive) praticamente l'access point/router è da buttare.
L'unico modo per ripristinarlo è utilizzare il collegamento seriale attivo sulla scheda dell'AP come descritto nella WIKI del OPEN WRT:
http://wiki.openwrt.org/toh/tp-link/tl-wr941nd
resettando le impostazioni e riaccedendo in telnet.
Per accedera allla scheda si deve come prima cosa disassemblare l'access point togliendo la cover esterna:
La scheda si presenta così :
La parte cerchiata in nero individua la serie di contatti che servono per il collegamento in seriale:
TX = trasmissione
RX= ricezione
GND= massa
VCC= + 3v
nell'immagine abbiamo già saldato i piedini di collegamento sulla scheda.
Come prima cosa si deve saldare dove c'è il cerchietto rosso per ablitare il pin di trasmissione.
Per avere la certezza di aver saldato bene, visto che la cosa è millimetrica, basta verificare con un tester, dopo qualche secondo dall'avvio dell'apparato, che ci sia una tensione di 3,5-3,6 volt tra TX e GND mentre tra RX e GND ci sono senpre 0 volt.
A questo punto non è possibile collegare direttamente i piedini alla seriale di un pc perchè lavora sui 3,3 volt mentre i pc su 5v ed è quindi necessario utilizzare un ARDUINO MEGA come interfaccia. Questo microprocessore programmabile ha disponibili 3 seriali e una connessione USB per l'upload del codice/console seriale.
I collegamenti sono semplici si collega la massa, il TX sul tp-link all'RX serial1 del MEGA e il RX sul tp-link al TX serial1 sul MEGA.
A questo punto manca solo un po' di codice da Uploadare sull'arduino:
void setup() {
// initialize serial:
Serial.begin(115200);
Serial1.begin(115200);
}
void loop() {
}
void serialEvent() {
while (Serial.available()) {
// get the new byte:
char inChar = (char)Serial.read();
Serial1.print(inChar);
}
}
void serialEvent1() {
while (Serial1.available()) {
// get the new byte:
char inChar = (char)Serial1.read();
Serial.print(inChar);
}
}
Semplicemente tutto quello che arriva dal Tp-link viene girato sulla seriale del pc (collegamento USB dell'arduino) e tutto quello che digitiamo nell'HYPER TERMINAL viena inviato dall'arduino al Tp-Link.
Come sessione dell'HYPER TERMINAL ci colleghiamo alla SERIALE creata dalla connessione USB dell'Arduino ...Serial 7 ... 18 ...21
con velocità 155200 e nesun controllo di flusso.
Questo è quanto appare al boot dell'apparato:
a cui segue la richiesta di premere "f" e poi invio per entrare in FAIL SAFE dove possiamo cancellare la configurazione e . . .
riportare alla vita il TP-LINK WR941ND !!!
Tutto il materiale (testo, grafica e immagini) presente in questo sito è di proprietà di CENTRODIGRAVITA.it, pubblicato su concessione degli autori. Ne è vietata la riproduzione, anche parziale, senza il consenso scritto da parte dello staff CENTRODIGRAVITA.it. Eventuale materiale erroneamente pubblicato e soggetto a copyright verrà immediatamente rimosso su segnalazione del titolare dei diritti. CENTRODIGRAVITA.it non si assume nessuna responsabilità per danni che derivino dall'utilizzo delle informazioni, consigli e file scaricati dal sito. Per info o problemi cliccate qui per contattarci. o qui per accedere all'informativa sui cookie