Выберите Ваш город

Введите название вашего города

  • Абакан
  • Анадырь
  • Арзамас
  • Архангельск
  • Астрахань
  • Барнаул
  • Белгород
  • Биробиджан
  • Благовещенск
  • Братск

Ремонт и восстановление SSD Sandisk Ultra II

Artem Makarov aka Robin
22.07.2017
22348 просмотров

Попал в нашу лабораторию SSD диск Sandisk UltraII SDSSDHII с типовой проблемой, — при старте выходит в готовность по регистрам, но на любое обращение взводит бит BUSY и перестаёт принимать\отправлять команды. Требуется выполнить восстановление данных с него и, по возможности, ремонт.

Поломался вышел из строя SSD Sandisk

Обычная проблема, связанная со сбоем в таблицах трансляции, однако на пути её решения встаёт ряд сложностей.

Внутри SDSSDHII собран на микроконтроллере Marwell 88SS1074. В отличии от многих других SSD, для данного накопителя пока не исследованы возможности организации доступа к служебной и пользовательской областям через SATA интерфейс, путём прогрузки специализированногомикрокода (лоадера), и работать придётся через диагностический порт, подключение к которому возможно методом пайки RX\TX контактов.

Подключение к диагностическому порту SSD SanDisk

А вот и первые сюрпризы. Обычные UART переходники не подходят по причине того, что терминал на SSD работает с 1.8 V. Придётся собирать Level Shifter по, к примеру, такой схеме:

TTL 3.3 to 1.8V Serial (USB, UART) Level Shifter

TTL 1.8V Serial (USB, UART) level shifter

Спаяли, подключились на скорости 921600 (дефолтная скорость обмена данными!), опять всё не слава богу! При обычном старте в терминал выдаётся что то типа:

!S1Jp`uu=ee=Lp,1Ep12S;p1m>p/)e 
!S1Jp`uu=L`p,1EpzX;Lpgp;C$\p|CK|&p#$]oC\:pD1-U'->K|oZqKCfqd`:p",|pqKCfpdp`:pR]K0$fd/##
!S1Jp`uu=)=)p,1EpU'p;CK|&p#@|p1K$|pp^|$"Bx2pepSqy^&fCpep(U>>N]K0$fpp/66pU|$qCN]K0$fpp/66
!S1Jp`uu=Ielup,1EpD'~pDm YUp;U^;~p(U>>pNx^S Dp/66pD;Upp>XY> ^ Y ^U2pp(U>>pNx^S Dp/6666
!S1Jp`uu=Lup,1EpD'~pDm YUp;U^;~p(U>>pNx^S Dp/66pDX1^p>XY> ^ Y ^U2pp(U>>pNx^S Dp/666666
!S1Jp`uuel)Lp,1Ep/@|1C"@%\D$|]K&Y@%;C"@QC|$RoC ,S$fpdp[lplplplplplplpl4
!S1Jp`uuel)Ip,1EpJ;X(DpprpUY^U;pD ;x^~gX(^p6X;pD ;x^~p2 ^ 
!S1Jp`uueu`ep,1EpJ;X(DpprpUzx^ppD ;x^~gX(^p6X;pD ;x^~p2 ^ 
!S1Jp`uue=lLup,1Ep/@|Y@%;C"@QC|$RoC ,S$fpdp[lplplplplplplpl4
!S1Jp`uue=Ieep,1EpY@KH]%yp"$%pRCp|C"@QC|C\p#|@0pKH]qpfo$%CZpV,]Kp|C"@QC|&hh
!S1Jp`uueeLep,1Ep/@|Y@%;C"@QC|$RoC ,S$fpdp[lplplplplplplpl4
!S1Jp`uue`=)Ip,1Ep2CR,yz@|D$qq;C"@QC|C\2$K$ ,D@q]K]@%S$fpdp[ppppppp4
!S1Jp`uueLu=Ip,1Epw(>p]%pzX;prppw(>-N]K0$fp/pYC3-(U>>-N]K0$fp/6666666666666666
!S1Jp`uue)=)`p,1Ep;"Q|&p#$]oqp@%pC||pIhhpY@p\$K$pf$qqC\pK@pH@qKp#@|pKH]qpfH&q]"$opfo$%Ch
!S1Jp`uueI=lLp,1EpzX;p|"Q|C\ppC%K|]Cqp@,Kp@#pIhh
!S1Jp`uueII))p,1EpY@pzX;p"@||C"K]@%p0$\Cp$%\p%@p\$K$pf$qqC\pK@p$%&p (p]%p3H@oCp|C$\p0Cqq$yChh
!S1Jp`uu`Lep,1EpD1p\]\%<Kp,f\$KCp(C""p"@,%KC|pgp|CK|&rp(C"">@,%K[4
!S1Jp`uu`)lp,1Ep;CKpqK$KpK|$"Bpep0qy^&fCpp0qyx2pupqKp########
!S1Jp`uu`le)`p,1Ep2@%CpU'pzX;p;C"@QC|&hh
!S1Jp`u=Ie=p,1Ep1^ ;8pU;;X;rp2@,RoCp@Rq@oCKCp\CKC"KC\p@%pm@$\jx%qK$oopM\,|]%yp|$%yCp,f\$KCWp#@|pqK$|KpsN p/6I6`NuNLhpMqCCpC||@|po@yW

!S1Jp`u=Iullep,1EpU;;X;-' Y2mU;rr1^ ;8p#$,oKC\p#o@3p"$,qCqp\@,RoCp@Rq@oCKC

!S1Jp`u=Iu)l`p,1Ep \\]K]@%$op]%#@r

!S1Jp`u=I=uelp,1Ep1@,|"Cpo]%CrpllLl

!S1Jp`u=Iellp,1EpSC0 \\|Tp/e==ReI`epXNSp]%\C/p/

!S1Jp`u=Ie=uup,1EpXNSp"@%K$]%qp/LI\"L:p0$qBpK@pqCKp/##"

По причине того, что терминальный вывод шифруется по умолчанию. Для выключения шифрования вводим команду расшифровки

\censored\
OK
debug>

И шифрование отключено перманентно! После рестарта уже осмысленное:

SDMR SLC 0x74
XOR06 - Read retry failed, PS_EH_Ctrl.steps=5, cur step = 5, bitmap=0x00000000000000ff
EH Retry for Star 0 TrackID 81 MsgType 4 UECCBitmap 0xFF EraseBitmap 0xFF PHY PLANE RETRY UECC BITMAP 0x00000000000000FF PRE CONCATANATED UECC BITMAP 0x000000000000FFFF
PHY PLANE RETRY UECC BITMAP 0x00000000000000FF POST CONCATANATED UECC BITMAP 0x0000000000FFFFFF
xorSecondParityNonRecoverableAuMap = [1 1 1 1 1 1 1 1]
GROUP 0 : ENTER PARITY-OUT FOR PARITY DATA
GROUP 0 : EXIT PARITY-OUT FOR PARITY DATA
xorNonRecoverableAuMap = [1 1 1 1 1 1 1 1]
Nothing can be recovered from this plane. Quit recovery!!
xorNonRecoverableAuMap = [1 1 1 1 1 1 1 1]
DebugXorPassRecoveredDataAuPositionMap = [0 0 0 0 0 0 0 0]
WUC in XOR : WUC_Bitmap 0x0000000000000000 New_UECC_Bitmap 0xFFFFFFFFFFFFFFFF
Rcvry fails on err 8!! No data passed to host for this physical plane!
XOR rcvred 0 entries out of 8!!
No XOR correction made and no data passed to any AU in whole read message!!
PS didn't update Uecc counter - retry: UeccCount[0]
Ret stat track 81 msgType 0 msgID 200 st ffffffff
Done EH XOR Recovery!!
STAR#0 ERROR: Double obsolete detected on Load&Install (during range update) for start VBA 0xF8F5B2B6! (see error log)

ERROR_HANDLER::STAR#0 faulted flow causes double obsolete

Additional info:

Source line: 1161

MemAddr; 0x433b4854 OBM index 0x0

OBM contains 0x68000dc6, mask to set 0xffc00000

Запрашиваем идентификатор NAND микросхем: 0x453E9AA37ED10B14, сохраняем eEPROM и модули

Прошивка SSD SandDisk

Прошивка SSD SanDisk

Прогружаем транслятор в ОЗУ для того чтобы выполнить восстановление данных с SSD Sandisk, если требуется восстановить файлы с него, а для ремонта выполняем форматирование STAR, после которого диск отдаёт паспорт, SMART чистый

Ремонт SSD Sandisk UltraII

Set Max LBA............................. : Не установлен
S.M.A.R.T. status....................... : GOOD
5....................................... : 0 : Количество переназначенных секторов
S.M.A.R.T............................... : Ok
Кеш записи.............................. : разрешен

Диск полностью исправен и готов к работе.

Важное дополнение — РЕМОНТ SSD SANDISK ПРИВОДИТ К ПОЛНОЙ И БЕЗВОЗВРАТНОЙ ПОТЕРЕ ПОЛЬЗОВАТЕЛЬСКОЙ ИНФОРМАЦИИ! Если надо восстановить информацию с ССД Сандиск, то это надо делать ДО его ремонта!

Читать так же:

Диагностика ремонт и восстановление SSD SanDisk SD6SP1M

Описание восстановления SSD m.2 диска Sandisk семейства X110 модели SD6SP1M

Восстановление Sandisk SDSSDA

Очередная поучительная история о местных мастерах на примере восстановления данных с SSD Sandisk SDSSDA

Оставьте комментарий
igor
18 января 2018, 11:14

Пожалуйста, Вы можете указать распиновку для диска и набор программ, которыми пользовались?

Artem Makarov aka Robin
18 января 2018, 15:07

Без проблем. Распиновка простая — Rx на Rx, Tx на Tx. Программа HyperTerminal for Windows

Алексей
06 мая 2018, 15:39

Здравствуйте! У меня такой же ссд диск, но он не определяется в системе. Причину выяснить не могу, вечером выключил компьютер, а на утро уже ссд не определился. даже в биосе его нет. Подключал его в разные порты. На втором компьютере тоже не определяется. Проработал он 3 года, состояние было 96%. Сбоев ни когда не было, потери информации тоже. В чем может быть причина?

Artem Makarov aka Robin
07 мая 2018, 17:13

Вероятно, поломался.

Вадим
26 июля 2018, 21:08

\censored\ OK debug>>
не помогло отрубить шифрование )) использую Pytty. что я не так делаю?))

Artem Makarov aka Robin
26 июля 2018, 22:03

Для отключения шифрования надо подать команду отключения шифрования. censored — означает «скрыто цензурой».

Вадим
26 июля 2018, 22:39

Пожалуйста, если не сложно, расскажите как запрашивать все эти идентификаторы и тд? и как восстановить данные? очень вас прошу! я некогда восстанавливал убитые роутеры и пару планшетов по средствам UART, но там были загрузчики U-Boot, с ними куда проще было обращаться. а тут (( спасибо большое!

Artem Makarov aka Robin
27 июля 2018, 07:52

Для восстановления данных с неисправного накопителя можете передать устройство в нашу лабораторию. Это можно сделать как лично, так и через офис компании СДЕК, любой другой транспортной компании или отделение почты Росссии.

Вадим
26 июля 2018, 23:20

что я только не вводил. debug, OK debug, OK DEBUG и тд. ничего не помогает ((( зато при вводе знака ? выводит зашифрованную помощь. подозреваю, что автор нарочно не оставил команду для расшифровки (( и это пичально (

Artem Makarov aka Robin
27 июля 2018, 07:51

DEBUG и OK это ответ накопителя на введённую команду. «Автор» и не должен вам ничего оставлять, хотите команд, «раскопайте» их самостоятельно.

Юрий
06 декабря 2018, 21:24

За труд благодарю, но разве так можно? чел купил контролер, спаялся, осталось самое малое ввести команду… укажите хоть в начале статьи: прежде чем нам что то покупать, ПРЕДУПРЕЖДЕНИЕ, что статья не полная и требуются дополнительные знания прежде чем начать ремонт.

Вадим
27 июля 2018, 16:59

раскопал ))) написал скрипт для перевода этих адовых каракулей в нормальный вид ) ну и нашел нужную команду)) )однако данные я всеже утерял ((
ИМХО я бы поделился полностью от и до, как восстанавливать такие вещи.

Андрей
09 августа 2019, 19:04

Тоже ковыряю винт, не подскажете команду на расшифровку.

Вадим
27 июля 2018, 17:02

Для восстановления данных с неисправного накопителя можете передать устройство в нашу лабораторию. Это можно сделать как лично, так и через офис компании СДЕК, любой другой транспортной компании или отделение почты Росссии.
Обидно. на всем заработать люди хотят. на бедах других людей в том числе. И прежде чем вы начнете сыпать словами, что мол это ваши проблемы и мы вам ничего не должны — подумайте о том, на сколько человечно вы поступаете. Комент можете не одобрять — главное прочтите

Юрий
15 декабря 2018, 01:25

форум не дает на прямую общаться, мои координаты ******** icq

Artem Makarov aka Robin
07 декабря 2018, 11:38

Проголодался я тут давеча, иду по улице, глядь, шаверма. Дайте, говорю, покушать. Они мне в ответ — гроши давай! Обидно, на всём люди заработать хотят, на моей беде оголодавшего организма в том числе. Покайтесь, кричу им, ироды бесчеловечные! Всё без толку…

Вы, Вадим, как бы помягче выразиться, дурак, если так рассуждаете.

Вадим
23 апреля 2019, 22:45

ахахахххаа)) переход на личности — это Вы можете) а если я не хочу, что-бы мои данные кто-то увидел? может у меня там фото голой жены? или еще что? я много статей писал в интернете (касаемо электроники). Никогда не жался и все полностью раскрывал. Дело то конечно Ваше, но исключение и могли-бы сделать (написав скажем в личку). Но за дурака спасибо, поржал)))))

Виталий
30 октября 2019, 10:09

Вадим добрый день, без пайки левэл шифтера, можно восстановить marvell 88ss9190-bjm2, путем переходника uart-usb?

Юрий
15 декабря 2018, 01:24

прям не по делу, лишь бы лично!!! Артем

Павел
08 мая 2020, 03:11

Неплохо было бы увидеть видео по выполнению всех работ по пайке и наладке com-порта и самой прошивки диска ssd

Artem Makarov aka Robin
08 мая 2020, 09:28

Не возражаю. Вы можете снять и смонтировать такое видео, и я с радостью размещу его у себя на сайте!

3xy
23 мая 2022, 19:40

В моём случае, когда накопитель тормозил в винде и был доступен на чтение только в Linux, помогла единственная команда: format

A ещё придумал простейший преобразователь TTL-уровней на 2 диодах. На CH341A связь работает стабильно, несмотря на простоту.

Lash_Out
25 августа 2022, 16:26

здравствуйте. я вот прочитал данную статью — я так и не понял как вы узнали распиновку для UART подключения? я знаю что надо rx to rx, tx to tx, но как вы на ссд узнали нужные пины? имею msata SSD sandisk x300 256gb контроллер marvell 88ss9190 две штуки, по описанию было ясно что они запаролены, diskpart clean заканчивается ошибкой форматирования. Я так понимаю, вы распиновку узнали через прозвонку с мозгов марвела до этих пинов и сверкой с даташитом этих мозгов? Снизу был такой же вопрос по поводу распиновки, но ответ был немного по другой части.

Нужна консультация?

Мы одна из немногих лабораторий в России, которая восстанавливает данные самостоятельно.

Для этого у нас есть все необходимое:
Важно – кто будет первым!
восстанавливать
информацию