Creato da eobd2 il 22/02/2014
Partager rien outil d'analyse OBD2
|
Area personale
Tag
Cerca in questo Blog
Menu
Chi puņ scrivere sul blog
Messaggi del 06/12/2018
Qui ci sono alcuni suggerimenti e guide di GM MDI clone di aggiornamento del numero di serie se è necessario.
Il GM MDI numero di serie è nella 16mb a bordo di memoria flash - il chip Intel sub-board computer.
È possibile ottenere l'accesso u-boot che compongono un cavo seriale. Segnali sono disponibili sul Mini DIN 8 Pin sulla parte esterna del caso MDI. pin 1 va a PC TX (MDI
RX), il pin 2 va a PC RX (MDI TX). Pin 3 va a terra. Poi, quando si avvia:
Citazione: U-Boot 1.1.4 (21 Dicembre 2007 - 12:11:55) ETAS VCI
(r13006)
Codice U-Boot: A3F00000 -> A3F218F0 BSS: -> A3F27524
RAM Configurazione: TRI TON 270 II
Bank # 0: a0000000 64 MB
Bank # 1: a4000000 64 MB
Configurazione HW: (0x207) MDI VCI con SMSC9116
Trovato Flash P30, sbloccando tutti i blocchi: 130
Flash: 16 MB
in: seriale
Out: serial
err: serial
Hit un tasto qualsiasi per fermare autoboot: 0
$ di aiuto
? - alias per 'help'
askenv - ottenere le variabili d'ambiente da stdin
Autoscr - script eseguito dalla memoria
di base - stampa o impostare l'indirizzo di offset
BDInfo - stampare Consiglio Info struttura
di avvio - di default di avvio, vale a dire, eseguire 'bootcmd'
bootd - di default di avvio, vale a dire, eseguire '' bootcmd
bootm - immagine applicazione di avvio dalla memoria
bootp - immagine di boot via rete utilizzando il protocollo BootP / TFTP
cmp - Memoria confrontare
conInfo - dispositivi di console di stampa e informazioni
cp - copia della memoria
crc32 - checksum calcolo
DHCP - richiamare client DHCP per ottenere / boot params IP
eco - eco args alla console
Erase - Per cancellare la memoria FLASH
uscita - uscita sceneggiatura
flinfo - memoria FLASH stampa informazioni
gregge - blocco fisico della StrataFlash
funlock - sblocco fisica di StrataFlash
andare - avviare l'applicazione all'indirizzo 'addr'
aiuto - stampare online aiuto
iminfo - stampa informazioni di intestazione per un'immagine applicazione
IMLS - elenco di tutte le immagini presenti in flash
increnv - le variabili d'ambiente incremento
ITest - return true / false sul confronto integer
loadb - caricare file binario su linea seriale (modalità Kermit)
carichi - file di caricamento S-Record su linea seriale
ciclo - ciclo infinito sul campo di indirizzi
macaddr - visualizzare o memorizzare l'indirizzo MAC in StrataFlash
mapadd - aggiungere una mappa di memoria voce
mapdel - cancellare una memoria elemento della mappa
MapInfo - visualizzare la mappa di memoria informazioni
md - visualizzazione della memoria
mm - memoria modificare (incremento automatico)
mmcinfo - ottenere informazioni su MMC (SD)
mtest - semplice test RAM
mw - memoria di scrittura (riempimento)
nfs - immagine di avvio tramite la rete utilizzando NFS protocollo
nm - memoria modificare (indirizzo costante)
ping - invia ICMP ECHO_REQUEST alla rete ospitante
Pinit - PCMCIA sottosistema
le variabili di ambiente di stampa printenv-
proteggono - attivare o disattivare la protezione da scrittura FLASH
immagine di avvio rarpboot- via rete utilizzando il protocollo RARP / TFTP
ripristino - Eseguire un reset della CPU
run - eseguire comandi in una variabile d'ambiente
saveenv - salva le variabili d'ambiente per lo stoccaggio persistente
serialnum - Display o conservare il numero di serie in StrataFlash
setenv - variabili di ambiente impostate
dormire - esecuzione di ritardo per un certo tempo
di prova - prova di minima / bin / sh come
tftpboot- immagine di boot via rete utilizzando il protocollo TFTP
versione - versione monitor di stampa
Il problema è il numero di serie e partizioni MAC in flash non sono allineate da
fine blocco Flash erase, che li costringe a montare solo lettura. A causa
di questo i comandi di aggiornamento non funzionano
Codice:
$ serialnum
Serial number: 1220-22129579
$ serialnum 1220-12345678
Error: start address not on sector boundary
Failed to read same serial number back from Strataflash
Penso che se abbiamo mappato una partizione di memoria 0x00FE0000 con dimensioni 0x00020000
allora saremmo in grado di cancellare quella partizione e caricare una nuova via ethernet /
TFTP. Questo 128k blocco riguarderebbe sia la porta seriale e paritions mac. Entrambe queste
partizioni hanno checksum, che avrebbe bisogno di essere capito e calcolato.
Che cosa v'è stato modificando è l'equivalente del Registro di sistema MDI. Una volta che la
serie e Mac vengono modificati in Flash allora un re-flash del dispositivo dovrebbe mettere
i nuovi numeri nel Registro di sistema e dovrebbero persistere nel firmware del dispositivo
aggiornamenti. Mi aspetto indirizzi MAC duplicati sono così rilevanti come il numero di serie
duplicati sulla vostra lan.
Citazione: $ MapInfo
Nome Tipo Luogo Dimensioni Guard Source
- --- - - - -
avvio 0x00000000 0x00040000 Flash bootargs Off
bootvars 0x00040000 0x00020000 Flash bootargs Off
linux1 0x00060000 0x00180000 bootargs flash off
initrd1 0x001e0000 0x00600000 Flash bootargs Off
linux2 0x007e0000 0x00180000 bootargs Flash Off
initrd2 0x00960000 0x00600000 Flash bootargs Off
linuxvars1 0x00f60000 0x00020000 Flash bootargs Off
linuxvars2 0x00f80000 0x00020000 Flash bootargs Off
serialnum 0x00ff0000 0x00008000 bootargs flash off
macaddress 0x00ff8000 0x00008000 Flash bootargs Off
zImage 0xa0008000 0x00200000 DRAM iniziale Off
graffiare 0xa2000000 0x00a00000 DRAM iniziale Fuori
copione 0xa2a00000 0x00100000 DRAM iniziale Fuori
Pila 0xa3e9ff80 0x00020000 sistema DRAM Su
GD 0xa3ebff80 0x00000080 DRAM System On
Mucchio 0xa3ec0000 0x00040000 DRAM System On
Text 0xa3f00000 0x000218f0 sistema DRAM
BSS 0xa3f218f0 0x00005c34 DRAM System On
Lo sdcard è solo l'usr / local / parte / del firmware. Il resto è in
Flash 16mb.
Fate attenzione, la sua super facile da mattoni vostro MDI interfaccia con questi strumenti.
Capito.
Montare lo sdcard parition 1 sotto linux, e rinominare telnetd.sh disabile a
telnet.sh in / bin. Mentre ci ho anche curato l'init script e aggiunto questo
vicino all'inizio per rendere il più piacevole messaggio:
Citazione: export PS1 = '[ u @ mdi W] $'
Accesso u-boot (38400 baud, vedi post precedente), e al prompt:
Citazione: askenv setbootargsprimary
Si prega di inserire 'setbootargsprimary': eseguire normalargs addinit addconsole addeth
addprimary; setenv bootargs $ {bootargs}
mtdparts = flash0: 256k (boot), 128k (bootvars), 1536k (linux1), 6144k (initrd1), 1536k (linux2), 6144k ( initrd2), 128k (linuxvars1), 128k (linuxvars2), 32k @ 16320k (serialnum), 32k (macaddress), 128k @ 16256k (id);
avvio
La MDI si avvierà e avviare un server telnet sul suo IP e hanno un nuovo flash
partizione configurata come / dev / mtd10 chiamato 'id'. Ciò si allinea con la cancellazione
blocco così può essere aggiornato. Il check-in / var / log / messages per la presenza di 'id'
senza essere costretti in sola lettura.
Telnet e strappare una copia di mtd10 con dd, e inviarlo a un server FTP È
avete installato sulla vostra LAN.
Citazione: [root @ mdi ~] # cd / tmp [root @ mdi tmp] # dd if = / dev / mtd10 di = mtd10.img 256 + 0 records in 256 + 0 records out [root @ mdi tmp] # ls - l mtd10.img -rw-r-r- 1 root root 131072 1 Gennaio 00:07 mtd10.img [root @ mdi tmp] # ftpput -u <utente> -p <pass> <IP> mtd10.img mtd10.img
Ora caricare mtd10.img sul tuo pc in HxD o Hexworkshop. Il serial è a
0x10000 con un checksum CRC32 di 0x10000-> 0x17FFB a 17FFC (LSB).
MAC è a 18000 con un checksum crc32 0x18000-> 0x1FFFB a 1FFFC.
Aggiornare sia (basta cambiare l'ultimo paio di numeri), e utilizzare il calcolo
funzione checksum del HexEditor per calcolare le somme dei crc32 delle gamme
e di salvare le nuove somme nel bidone (ricordarsi di inserirli in LSB format).
Ora tirare i file di nuovo al mdi, e aggiornare il flash:
Citazione: [root @ mdi ~] # cd / tmp [root @ mdi tmp] # ftpget -u <utente> -p <pass> <IP> mtd10-new.img mtd10-new.img [root @ mdi tmp] # cd / usr / local / MTD / [root @ mdi MTD] # ./flash_unlock / dev / mtd10 [root @ mdi MTD] # ./flash_erase / dev / mtd10 Erase totale 1 disponibilità dello spettacolo Flash Erase di lunghezza 131072 a 0x0 offset di fatto [root @ mdi MTD] # ./flashcp /tmp/mtd10-new.img / dev / mtd10 [root @ mdi MTD] # dd if = / dev / mtd10 of = / tmp / mtd10-readback.img 256 + 0 record in 256 + 0 records out [root @ mdi MTD] # md5sum /tmp/mtd10-new.img /tmp/mtd10-readback.img
1a1f4fb7db878218c558b45c0db50c9f /tmp/mtd10-new.img
1a1f4fb7db878218c558b45c0db50c9f /tmp/mtd10-readback.img
Ora riavviate il MDI ,
e tenere premuto il tasto di accensione così si va a modalità di ripristino. Utilizzare MDI Manager
per ripristinare il dispositivo. Una volta completato si avrà il nuovo Mac di serie e.
Mi aspetto che i clonatori troveranno questa discussione e presto non tutti avranno
più la stessa serie. Ma se ne avete già uno, allora si può fare questo
da soli, fino a quando la vostra attenzione e assicurarsi che tutto sta andando secondo i piani e
ha senso per te, come si va.
(Molte molte molte grazie a gmtools a
https://mhhauto.com/Thread-GM-MDI-serial-number?)
Condividi e segnala - permalink - Segnala abuso |