Odczyt zabezpieczonego DS2431

Pytania techniczne oraz porady dotyczące programowania pamięci oraz funkcjonalności programatora.
Marcin
Posts: 4
Joined: Sun Feb 24, 2019 10:02 pm

Odczyt zabezpieczonego DS2431

Postby Marcin » Sun Feb 24, 2019 10:21 pm

Cześć wszystkim,
na wstępie napiszę, że są to moje pierwsze kroki z programowaniem dlatego będę wdzięczny za wyrozumiałość.
Zakupiłem programator celem skopiowania zawartości DS2431, niby zawartość odczytałem, ale po wgraniu na inny układ nie działa, zacząłem drążyć temat i z tego co widzę układ jest zabezpieczony przed kopiowaniem0084h1)R/(W)Copy Protection Byte55h or AAh: Copy Protect 0080:008Fh, andany write-protected Pages(wycinek wsadu na zdjęciu), moje pytanie brzmi czy ktoś ma jakieś rozwiązanie problemu? Idzie jakoś ominąć to zabezpieczenie?
Będę wdzięczny za sugestie bądź gotowe rozwiązanie.
Attachments
IMG_5233.jpg
IMG_5233.jpg (665.69 KiB) Viewed 8237 times

ArT
Posts: 1538
Joined: Wed Mar 25, 2015 8:54 am
Location: Warsaw, Poland
Has thanked: 56 times
Been thanked: 166 times

Re: Odczyt zabezpieczonego DS2431

Postby ArT » Mon Feb 25, 2019 10:28 am

Programator wszystkie 4 strony (4*256bit = 1024bit = 128 bajtów) zapisuje bez problemu. Przy zapisie powinien przejść weryfikacje - jeżeli przeszedł weryfikacje to zapisał poprawnie. Więc pierwsze pytanie - czy podczas zapisu przechodzi weryfikacje?

Jeżeli tak, to moim zdaniem przyczyna leży zupełnie gdzie indziej. Każdy DS ma unikalny 64-bitowy ID (wypalany laserem na etapie produkcji - nie da się go zmienić) i urządzenie z którym działa Twój układ widocznie ma wpisany ID poprzedniej kości, a nie tej nowej i dlatego nie działa. Trzeba by odnaleźć teraz w drugim układzie (tym który komunikuje się z DS2431) obszar w którym jest zapisane ID i spróbować je zmienić. W REVELPROG-IS odczytasz 8 bajtów ID dla obu układów (menu narzędzia - odczyt ID).

W dokumentacji faktycznie jest wzmianka że zapisanie 0xAA lub 0x55 pod addresy 0x80 - 0x84 nie może zostać już cofnięte (jest read-only) więc jeżeli masz tak ustawione te bajty w odczytanym wsadzie to możesz je zmienić na 0xFF przed zapisaniem do drugiej pamięci. Na stronach 7-8 więcej info https://datasheets.maximintegrated.com/en/ds/DS2431.pdf

Marcin
Posts: 4
Joined: Sun Feb 24, 2019 10:02 pm

Re: Odczyt zabezpieczonego DS2431

Postby Marcin » Mon Feb 25, 2019 2:38 pm

Dzięki za odpowiedź, weryfikację przechodzi pomyślnie, ale może rozjaśnię temat, układ pracuje jako licznik w części wymiennej, zawartość wsadu zmienia się w zależności jaki ma przebieg, wartość jest sczytana z nowej części i wgrana na używaną, suma CRC się zgadza. Wydaje mi się, że nie jestem w stanie odczytać całości zawartości, muszę odnaleźć nową kość i ją spróbować zaprogramować.

ArT
Posts: 1538
Joined: Wed Mar 25, 2015 8:54 am
Location: Warsaw, Poland
Has thanked: 56 times
Been thanked: 166 times

Re: Odczyt zabezpieczonego DS2431

Postby ArT » Tue Feb 26, 2019 1:10 pm

Z tego co widzę w datasheet to tej pamięci nie da sie zabezpieczyć przed odczytem, więc musi ją poprawnie całą odczytywać. Moim zdaniem to jest kwestia ID pamięci - w innym miejscu/w innej pamięci jest wpisane ID tej starej pamięci i dlatego nie działa z nową pamięcią która ma inne ID. Trzeba by poszukać gdzie to ID jest przechowywane i tam zmienić (bo samego ID pamięci nie zmienisz).

Marcin
Posts: 4
Joined: Sun Feb 24, 2019 10:02 pm

Re: Odczyt zabezpieczonego DS2431

Postby Marcin » Tue Jul 20, 2021 3:28 pm

Dziękuję za wcześniejsze odpowiedzi, musiałem odpuścić projekt, ale właśnie do niego wracam, proszę o informacje jak zmienić abym mógł odczytać 9 linijkę kodu, bo czyta mi tylko do 00000070 a dopiero jak zmienię na inny układ pojawia się 00000080 i tam muszę wprowadzić zmiany

ArT
Posts: 1538
Joined: Wed Mar 25, 2015 8:54 am
Location: Warsaw, Poland
Has thanked: 56 times
Been thanked: 166 times

Re: Odczyt zabezpieczonego DS2431

Postby ArT » Tue Jul 20, 2021 4:25 pm

Rzuć proszę okiem na notę katalogową strona 7
https://datasheets.maximintegrated.com/en/ds/DS2431.pdf

0x80h są rejestry a nie sama pamięć - które dane musisz zmienić? Postaram Ci się przygotować odpowiednie skrypty.

Marcin
Posts: 4
Joined: Sun Feb 24, 2019 10:02 pm

Re: Odczyt zabezpieczonego DS2431

Postby Marcin » Thu Jul 22, 2021 5:27 pm

Muszę zmienić wartości jak w załączonym zdjęciu, tam gdzie jest wpisane 55, bo gdy odczytuje kość i zapiszę ją nawet tą samą wartością, urządzenie tak jakby nie czyta zawartości i domniemuję że to wina właśnie tego

ArT
Posts: 1538
Joined: Wed Mar 25, 2015 8:54 am
Location: Warsaw, Poland
Has thanked: 56 times
Been thanked: 166 times

Re: Odczyt zabezpieczonego DS2431

Postby ArT » Fri Jul 23, 2021 11:19 am

Na pierwszym zdjęciu masz 0x55 pod adresem 0x85 oraz 0x8F
Wg datasheeta pod adresem 0x85 jest "Factory Byte. Set at Factory." jako read only - niestety jego nie zmienisz, 55h oznacza włączony write protect. Tutaj masz skrypty na obsługę tych rejestrów w DS2431: viewtopic.php?f=32&t=699 Podsumowując: odczytać możesz, zostaje tylko opcja skopiowania do nowej pamięci, ale ona już będzie miała inne ID.


Return to “Wsparcie Techniczne”

Who is online

Users browsing this forum: No registered users and 7 guests