Calcolo checksum
Moderatori: tripix, vince Amministratore, tuning evolution
Calcolo checksum
Sera a tutti io ho una piccola utility per calcolo checksum ma non e tamto aggiornato mi pare si chiama ultimo.chiedo se qualcuno ha qualcosa da condividere grazie
- Serialchip
- Amministratore
- Messaggi: 2489
- Iscritto il: 10/01/2015, 13:25
Re: Calcolo checksum
Prova questo
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Re: Calcolo checksum
grazieSerialchip ha scritto:Prova questo
Re: Calcolo checksum
piccola nota e uguale al mio non ce altro? grazie
- mirko maestroni
- Utente Junior
- Messaggi: 39
- Iscritto il: 30/12/2015, 9:16
- Località: bergamo
Re: Calcolo checksum
ormai tutti i tool calcolano il cks in scrittura ed in giro non si trova gran tanto
Re: Calcolo checksum
potreste dire quando si deve calcolare il cks? non lo dovrebbe fare la strumentazione che si utilizza?
- Serialchip
- Amministratore
- Messaggi: 2489
- Iscritto il: 10/01/2015, 13:25
Re: Calcolo checksum
Alcuni tool non riescono a calcolare il checksum, oppure ad esempio quando ti capita qualche ecu con memoria da dissaldare. O lo fa il software di modifica tipo ecm, o devi usare software per calcolo checksum.
Re: Calcolo checksum
Buongiorno a tutti,
Mi sono iscritto a questo forum oggi stesso e avevo un quesito da sottoporre alla vostra attenzione.
Ho un sistema Tx - Rx radio a 868 Mhz. Le periferiche montano a bordo micro della "microcip".
Il sistema Rx è stato programmato da un dipendente che ora non lavora più qui che ha fornito delle specifiche sul calcolo della checksum affermando si tratti di somma di byte MOD 256 ma così non è. Non dispongo del codice sorgente per verificare come avviene il calcolo della checksum.
Mettendomi in debug su una ricevente nuova sono in grado di ricevere la stringa di dati che adesso sottoporrò con i relativi checksum calcolati.
Il mio quesito è questo: E' possibile dalla checksum risalire al tipo di algoritmo che c'è dietro al calcolo?
Il pacchetto esadecimale è composto in questo modo:
Byte0 => Parte bassa ID
Byte1 => Parte alta ID
Byte2 => Codice cliente che per default è fisso al valore 0xAA
Byte3 => Tipologia di sensore e chiave di crittografia
Byte4 => Stato del dispositivo: Indica lo stato del sensore (allarme, batteria scarica, ecc) ES. 08 = Accensione sensore.
Byte5 => Contatrasmissioni: Numero che si incrementa di 1 ad ogni trasmissione effettuata
Byte6 => Checksum
Ora vi elenco quello che invio e il checksum calcolato:
00 00 AA 1E 08 01 ------> 3B
02 00 AA 1e 08 01 ------> 39
00 01 AA 1E 08 01 ------> 3A
10 00 AA 1e 08 01 ------> 2B
20 01 AA 1E 08 01 ------> 75
02 00 AA 1e 08 01 ------> 4A
----------------------------------------- In un giorno diverso ho ricevuto quanto segue (cambiando il sensore che inviava e quindi L'ID)
68 12 AA 17 00 E3 ------> 60
68 12 AA 1C 20 E4 ------> 44
68 12 AA 17 00 E5 ------> 5E
68 12 AA 1B 20 E6 ------> 41
68 12 AA 16 00 E7 ------> 5B
Se si riesce a fare qualcosa vi ringrazio anticipatamente della disponibilità.
Matteo
Mi sono iscritto a questo forum oggi stesso e avevo un quesito da sottoporre alla vostra attenzione.
Ho un sistema Tx - Rx radio a 868 Mhz. Le periferiche montano a bordo micro della "microcip".
Il sistema Rx è stato programmato da un dipendente che ora non lavora più qui che ha fornito delle specifiche sul calcolo della checksum affermando si tratti di somma di byte MOD 256 ma così non è. Non dispongo del codice sorgente per verificare come avviene il calcolo della checksum.
Mettendomi in debug su una ricevente nuova sono in grado di ricevere la stringa di dati che adesso sottoporrò con i relativi checksum calcolati.
Il mio quesito è questo: E' possibile dalla checksum risalire al tipo di algoritmo che c'è dietro al calcolo?
Il pacchetto esadecimale è composto in questo modo:
Byte0 => Parte bassa ID
Byte1 => Parte alta ID
Byte2 => Codice cliente che per default è fisso al valore 0xAA
Byte3 => Tipologia di sensore e chiave di crittografia
Byte4 => Stato del dispositivo: Indica lo stato del sensore (allarme, batteria scarica, ecc) ES. 08 = Accensione sensore.
Byte5 => Contatrasmissioni: Numero che si incrementa di 1 ad ogni trasmissione effettuata
Byte6 => Checksum
Ora vi elenco quello che invio e il checksum calcolato:
00 00 AA 1E 08 01 ------> 3B
02 00 AA 1e 08 01 ------> 39
00 01 AA 1E 08 01 ------> 3A
10 00 AA 1e 08 01 ------> 2B
20 01 AA 1E 08 01 ------> 75
02 00 AA 1e 08 01 ------> 4A
----------------------------------------- In un giorno diverso ho ricevuto quanto segue (cambiando il sensore che inviava e quindi L'ID)
68 12 AA 17 00 E3 ------> 60
68 12 AA 1C 20 E4 ------> 44
68 12 AA 17 00 E5 ------> 5E
68 12 AA 1B 20 E6 ------> 41
68 12 AA 16 00 E7 ------> 5B
Se si riesce a fare qualcosa vi ringrazio anticipatamente della disponibilità.
Matteo
-
- Nuovo arrivato
- Messaggi: 16
- Iscritto il: 04/01/2017, 19:55
Re: Calcolo checksum
Io ci sto sbattendo un pò la testa sul calcolo cks, ma quello che hai scritto sopra per me è incomprensibile.
So solo che facendo delle prove su dei file flash delle ecu mi risulta mettendo a confronto file ori e file mod che nella zona cks dei file (e questa è un'altra cosa da sapere) il sw somma gli incrementi e decrementi fatti e parifica il totale (cioè se levo 10 dal file ori trovo nel cks del file mod un +10)
So solo che facendo delle prove su dei file flash delle ecu mi risulta mettendo a confronto file ori e file mod che nella zona cks dei file (e questa è un'altra cosa da sapere) il sw somma gli incrementi e decrementi fatti e parifica il totale (cioè se levo 10 dal file ori trovo nel cks del file mod un +10)
Re: Calcolo checksum
Ciao Errecinque,
Grazie della risposta se vuoi provo a darti qualche spiegazione in più.
Io so solo (da specifiche che penso errate) che il checksum secondo lui viene calcolato con somma dei primi 5 Byte MOD 256. ma non mi tornano i conti.
Quindi se prendiamo ad esempio la prima riga tra le trasmissioni che ho scritto si ha:
(00 + 00 + AA + 1E + 08 + 01) MOD 256 = 3B ma non mi sembra proprio.
Sbaglio?
Grazie della risposta se vuoi provo a darti qualche spiegazione in più.
Io so solo (da specifiche che penso errate) che il checksum secondo lui viene calcolato con somma dei primi 5 Byte MOD 256. ma non mi tornano i conti.
Quindi se prendiamo ad esempio la prima riga tra le trasmissioni che ho scritto si ha:
(00 + 00 + AA + 1E + 08 + 01) MOD 256 = 3B ma non mi sembra proprio.
Sbaglio?
Chi c’è in linea
Visitano il forum: Nessuno e 1 ospite