Discussione Password SLE 4442

Ultima modifica:
ok ok, anche se son certo di aver scommentato bene.
Purtroppo non mastico bene il C, ma quando avrò del tempo libero darò un occhio al sorcio, voglio capire al meglio delle mie possibilità cosa combina.
Messaggio unito automaticamente:

Le ho provate tutte ma nulla ... del psc nessuna traccia
Messaggio unito automaticamente:

I collegamenti sono fatti così (vedi immagine allegata)?
Messaggio unito automaticamente:

Giusto per sicurezza, esegui questo comando
Codice:
avrdude -p atmega8 -c usbasp -U lfuse:r:-:i -v
e posta l'output.

Invia pure l'hex che hai generato che provo a caricarlo sul mio Atmega8
 

Allegati

  • Schermata 2020-03-07 alle 18.04.52.png
    Schermata 2020-03-07 alle 18.04.52.png
    385.7 KB · Visualizzazioni: 90
  • Schermata 2020-03-07 alle 18.04.44.png
    Schermata 2020-03-07 alle 18.04.44.png
    406.6 KB · Visualizzazioni: 89
diciamo che se si riesce ad emulare si può intervenire nel main e modificare i dati utili, ma si ha l'handicap di dover sempre usare il wafer e non la scheda originale.

Più che altro se la scrittura sulla EEPROM non funziona perchè il sistema interrompe improvvisamente l'alimentazione (di fatto è l'unica ipotesi che mi sento di fare, altrimenti la scrittura andrebbe a buon fine), si potrebbe fare in modo di eseguire la scrittura sulla EEPROM solo quando la carta non riceve più comandi da tot secondi, oppure utilizzare una EEPROM esterna.
Se l'emulazione funziona almeno sappiamo che i comandi li trasmette e li riceve correttamente, se non funziona significa che il problema sta proprio nella ricezione/trasmissione dei dati e a quel punto mi sentirei di riscrivere il codice da capo.
 
Più che altro se la scrittura sulla EEPROM non funziona perchè il sistema interrompe improvvisamente l'alimentazione (di fatto è l'unica ipotesi che mi sento di fare, altrimenti la scrittura andrebbe a buon fine), si potrebbe fare in modo di eseguire la scrittura sulla EEPROM solo quando la carta non riceve più comandi da tot secondi, oppure utilizzare una EEPROM esterna.
Se l'emulazione funziona almeno sappiamo che i comandi li trasmette e li riceve correttamente, se non funziona significa che il problema sta proprio nella ricezione/trasmissione dei dati e a quel punto mi sentirei di riscrivere il codice da capo.
Mi sorgono delle domande a questo punto.
Dici che probabilmente l'alimentazione viene tolta ... probabilmente il sistema si difende dal lag di scrittura come dicevi, ma anche li non può essere in quanto a quel punto il psc già ce l'avremmo in memoria ... e se fosse proprio un problema di alimentazione, escludendo i contatti dei 5v e del ground, se quelli li mettessimo esterni collegati ad una batteria?
Certo, oggi proverò se l'emulazione funziona, e lo spero, perchè sarà quasi sicuro riuscire ad individuare dove si inceppa il sistema, o meglio, a calire il motivo di questo ipotetico taglio di tensione.
Sto sparando a zero calcolando che quel che so riguardo queste memorie l'ho imparato in questo thread, ma a volte tra una sparata e l'altra salta fuori la soluzione.
 
Mi sorgono delle domande a questo punto.
Dici che probabilmente l'alimentazione viene tolta ... probabilmente il sistema si difende dal lag di scrittura come dicevi, ma anche li non può essere in quanto a quel punto il psc già ce l'avremmo in memoria ... e se fosse proprio un problema di alimentazione, escludendo i contatti dei 5v e del ground, se quelli li mettessimo esterni collegati ad una batteria?
Certo, oggi proverò se l'emulazione funziona, e lo spero, perchè sarà quasi sicuro riuscire ad individuare dove si inceppa il sistema, o meglio, a calire il motivo di questo ipotetico taglio di tensione.
Sto sparando a zero calcolando che quel che so riguardo queste memorie l'ho imparato in questo thread, ma a volte tra una sparata e l'altra salta fuori la soluzione.

Corretto, si potrebbe provare con una batteria ad alimentare il tutto....
Oppure per testare se è un problema di alimentazione, si potrebbe collegare in parallelo alla 5v un led+resistenza. Se viene tolta l'alimentazione quando il sistema dà il messaggio di errore il led dovrebbe spegnersi, altrimenti se il led sta sempre acceso possiamo dire che il problema sta altrove.

Una curiosità: l'errore te lo dà subito, appena inserisci la carta, oppure dopo che hai eseguito un'operazione ?
Se te lo dà subito allora direi che il problema sta proprio nell'emulazione, quando si inserisce la carta difficilmente viene verificato il PSC. Credo che il PSC venga verificato solo quando viene fatta una ricarica/scarica del credito, per cui per fare il grab bisogna fare per forza una qualche operazione.
 
di
Corretto, si potrebbe provare con una batteria ad alimentare il tutto....
Oppure per testare se è un problema di alimentazione, si potrebbe collegare in parallelo alla 5v un led+resistenza. Se viene tolta l'alimentazione quando il sistema dà il messaggio di errore il led dovrebbe spegnersi, altrimenti se il led sta sempre acceso possiamo dire che il problema sta altrove.

Una curiosità: l'errore te lo dà subito, appena inserisci la carta, oppure dopo che hai eseguito un'operazione ?
Se te lo dà subito allora direi che il problema sta proprio nell'emulazione, quando si inserisce la carta difficilmente viene verificato il PSC. Credo che il PSC venga verificato solo quando viene fatta una ricarica/scarica del credito, per cui per fare il grab bisogna fare per forza una qualche operazione.
diamine, collegarci il led è talmente semplice che potevo pensarci subito.
ad ogni modo inserendo la card cè un'attesa di un secondo, poi da errore secco, lo stesso secondo cè anche in quella originale prima di visualizzare il credito.
Messaggio unito automaticamente:

di

diamine, collegarci il led è talmente semplice che potevo pensarci subito.
ad ogni modo inserendo la card cè un'attesa di un secondo, poi da errore secco, lo stesso secondo cè anche in quella originale prima di visualizzare il credito.
ma giustamente non dovrebbe dare errore in quanto il psc lo verifica prima della scrittura e non della lettura.
 
Mmmmhhh, allora credo che il problema sia 100% nell'emulazione.....

Un'ultima curiosità: la protection memory della card originale è tutta a FF FF FF FF ?
 
Ultima modifica:
Mmmmhhh, allora credo che il problema sia 100% nell'emulazione.....

Un'ultima curiosità: la protection memory della card originale è tutta a FF FF FF FF ?
cavolo ora son fuori casa, appena rientro controllo subito, a memoria mi sembra siano tutti 00 ma dopo do conferma.
Messaggio unito automaticamente:

allora, la protection memory è FF FF FF FF.
L'emulazione ha dato pure lei esito negativo.
Figo che in modalità emulazione, dal software del N99 qualsiasi psc me lo da per buono ... un miraggio XD
 
Nulla, come sospettavo....c'è da chiedersi perchè con i lettori funziona tutto ma sul sistema vero fallisce.
Torniamo a studiarci il datasheet....
 
Nulla, come sospettavo....c'è da chiedersi perchè con i lettori funziona tutto ma sul sistema vero fallisce.
Torniamo a studiarci il datasheet....
nel frattempo voglio capire se davvero taglia l'alimentazione ... e qui torna utile il mio capolavoro sempre fatto con il culo ... ma funzionante..
Messaggio unito automaticamente:

15836113456325908729761551057641.jpg
 
nel frattempo voglio capire se davvero taglia l'alimentazione ... e qui torna utile il mio capolavoro sempre fatto con il culo ... ma funzionante..
Messaggio unito automaticamente:

:myeah:Ottimo! Magari prendi uno zoccolo da 28 pin per l'atmega, lo saldi su una millefori e saldi direttamente i fili sulla basetta, almeno lo puoi collegare/scollegare più facilmente per la programmazione.
 
si si, è una di quelle cose da fare, perchè ormai i pin dell'atmega sono spappolati ... poi una volta finito il progetto si va di pcb serio :yo:
 
Ciao posso sapere che progrrmma
Come software usi quello del lettore N99 che ha questa interfaccia ?
Con questo software, se provi a dare il comando "Verify" con un PSC a caso (che ne so, tipo 11 22 33), il software dovrebbe darti un messaggio di errore (perchè il micro rimane impegnato a scrivere nella eeprom). Poi una volta che vai a leggere la memoria del micro dovresti trovarti 112233.

ciao posso sapere come si chiama questo software ?
 
Ultima modifica:
Ciao posso sapere che progrrmma

ciao posso sapere come si chiama questo software ?
Messaggio unito automaticamente:

ieri ho scoperto che ad una certa le porte si bloccano ... quindi l'alimentazione la testo oggi
Messaggio unito automaticamente:

@_Ptr_ ho testato l'alimentazione ed avevi ragione, il lettore alimenta per quel secondo e poi toglie la tensione e spara l'errore al display nello stesso momento.
Che sia da fare un tentativo con alimentazione esterna?
Il modo più semplice ed agile per portargli i 5v?
 
Ciao, finalmente ho avuto anch'io il tempo di fare alcuni test. Innanzitutto grazie a @_Ptr_ per il lavoro svolto! Purtroppo, dopo aver programmato l'Atmega8 mediante Arduino (sorgente aggiornato con le ultime modifiche apportate), ponticellato il tutto su wafer card ed averla inserita in un lettore SCR335 (non ho l'N99) la carta viene vista come SLE4406 e 16 byte di memoria (tutti FF). Sbaglio qualcosa io o questo problema potrebbe essere riconducibile all'incompatibilità verificata da @alepunx con la macchina?
 
Ho aggiornato il codice dell'emulatore, scaricate i nuovi files main.c e sle4442.h https://github.com/Ptr-srix4k/sle4442
Provate con questo, il codice vecchio non faceva la detection della condizione di start/stop, ora è leggermente migliore ma non sono sicuro.

Compilatelo con la riga "define WRITE_PSC" commentata, ora il problema principale è l'emulazione, una volta risolto questo si può passare al grab del PSC.
Per l'alimentazione, l'Atmega ha un range da 2.7 a 5.5, in teoria con due batterie in serie da 1.5V dovrebbe andare (ma bisogna vedere i livelli logici, se con 3V a 8MHz funziona tutto, ecc.). Oppure si potrebbe dare i 5V con un powerbank USB.
Ci penseremo comunque dopo.
 
Ho aggiornato il codice dell'emulatore, scaricate i nuovi files main.c e sle4442.h https://github.com/Ptr-srix4k/sle4442
Provate con questo, il codice vecchio non faceva la detection della condizione di start/stop, ora è leggermente migliore ma non sono sicuro.

Compilatelo con la riga "define WRITE_PSC" commentata, ora il problema principale è l'emulazione, una volta risolto questo si può passare al grab del PSC.
Per l'alimentazione, l'Atmega ha un range da 2.7 a 5.5, in teoria con due batterie in serie da 1.5V dovrebbe andare (ma bisogna vedere i livelli logici, se con 3V a 8MHz funziona tutto, ecc.). Oppure si potrebbe dare i 5V con un powerbank USB.
Ci penseremo comunque dopo.

Testato, ma sembra peggiorativo: ora non viene più riconosciuta.
Come ulteriore prova ho compilato e flashato il codice originario e dà lo stesso risultato di prima (ovvero carta riconosciuta come SLE4406).
 
Ultima modifica:
Ciao, finalmente ho avuto anch'io il tempo di fare alcuni test. Innanzitutto grazie a @_Ptr_ per il lavoro svolto! Purtroppo, dopo aver programmato l'Atmega8 mediante Arduino (sorgente aggiornato con le ultime modifiche apportate), ponticellato il tutto su wafer card ed averla inserita in un lettore SCR335 (non ho l'N99) la carta viene vista come SLE4406 e 16 byte di memoria (tutti FF). Sbaglio qualcosa io o questo problema potrebbe essere riconducibile all'incompatibilità verificata da @alepunx con la macchina?
Potresti passare lo sketch che usi per la programmazione tramite arduino con una tabella minimale dei collegamenti tra atmega e arduino?
A qualcuno potrebbe tornare utile se sprovvisto di usbasp.
Messaggio unito automaticamente:

Ho aggiornato il codice dell'emulatore, scaricate i nuovi files main.c e sle4442.h https://github.com/Ptr-srix4k/sle4442
Provate con questo, il codice vecchio non faceva la detection della condizione di start/stop, ora è leggermente migliore ma non sono sicuro.

Compilatelo con la riga "define WRITE_PSC" commentata, ora il problema principale è l'emulazione, una volta risolto questo si può passare al grab del PSC.
Per l'alimentazione, l'Atmega ha un range da 2.7 a 5.5, in teoria con due batterie in serie da 1.5V dovrebbe andare (ma bisogna vedere i livelli logici, se con 3V a 8MHz funziona tutto, ecc.). Oppure si potrebbe dare i 5V con un powerbank USB.
Ci penseremo comunque dopo.
ok, nel frattempo carico i nuovi file sull'atmega e procedo con il test sulla macchina con il main in modalità emulazione.
Messaggio unito automaticamente:

Ciao, finalmente ho avuto anch'io il tempo di fare alcuni test. Innanzitutto grazie a @_Ptr_ per il lavoro svolto! Purtroppo, dopo aver programmato l'Atmega8 mediante Arduino (sorgente aggiornato con le ultime modifiche apportate), ponticellato il tutto su wafer card ed averla inserita in un lettore SCR335 (non ho l'N99) la carta viene vista come SLE4406 e 16 byte di memoria (tutti FF). Sbaglio qualcosa io o questo problema potrebbe essere riconducibile all'incompatibilità verificata da @alepunx con la macchina?
ah dimenticavo, per la programmazione dell'atmega, hai usato il quarzo tra il gnd e i 5v?
O in alternativa puoi usare un led di quelli soliti inclusi nei bundle con arduino (a me ha funzionato).
Ti basterebbe dargli il comando dei fuse, poi sei aposto.
 
Potresti passare lo sketch che usi per la programmazione tramite arduino con una tabella minimale dei collegamenti tra atmega e arduino?
A qualcuno potrebbe tornare utile se sprovvisto di usbasp.
Messaggio unito automaticamente:


ok, nel frattempo carico i nuovi file sull'atmega e procedo con il test sulla macchina con il main in modalità emulazione.
Messaggio unito automaticamente:


ah dimenticavo, per la programmazione dell'atmega, hai usato il quarzo tra il gnd e i 5v?
O in alternativa puoi usare un led di quelli soliti inclusi nei bundle con arduino (a me ha funzionato).
Ti basterebbe dargli il comando dei fuse, poi sei aposto.

Per la programmazione uso lo sketch "ArduinoISP", incluso negli esempi dell'IDE. Per maggiori informazioni: https://www.arduino.cc/en/tutorial/arduinoISP
Per quanto riguarda i collegamenti ho usato il seguente schema:

F2OBZ3FJ3NR0I2G.LARGE.jpg

Ha funzionato tutto subito, programmazione dei fuse compresa.
Messaggio unito automaticamente:

Hai per caso un oscilloscopio ?

No, ma ho un analizzatore logico: con quello potrei catturare i segnali della carta originale e di quella emulata e capire in cosa differiscono.
 
  • Mi piace
Reazioni: _Ptr_
No, ma ho un analizzatore logico: con quello potrei catturare i segnali della carta originale e di quella emulata e capire in cosa differiscono.

Perfetto! Sarebbe molto utile, anche solo i segnali della carta emulata.
Io l'emulazione l'ho provata su due lettori diversi (N99 e Infinity Usb Unlimited) e funziona, se non funziona su quel lettore evidentemente c'è qualche condizione particolare che mi è sfuggita.
 
da qualche giorno sto lavorando allo stesso progettino... oggi mentre cercavo su google ho trovato questo forum.
vi faccio vedere la mia conf di sniffing

ho sniffato con l'app installata su android e un piccolo analyzer preso su amazon.

Cattura.JPG
Cattura2.JPG



Cattura3.JPG


poi a manina ho fatto la conversione da bin in hex.
tutto torna come da datasheet, anche il blocco PSC sembra corretto, ma ho fatto due tentativi di scrittura senza risultati.
per non bloccare la carta mi sono fermato e volevo fare un po' di prove con delle cards acquistate su amazon.

volevo farvi una domanda... se compro una card con PSC - FFFFFF è possibile in qualche modo cambiarlo ?

Grazie