jmf616 SSD firmware recovery

Поскольку и-нет глух, у меня есть ответ на ваш вопрос.

Если SSD на jmicron jm616 начинает прикидываться FCR SATA Loader 1000,01, то есть два способа.
1.1 Если это комбо устройство SATA+USB, то качаем JMicron 61X M.P. Tool
usbdev.ru/?wpfb_dl=3853 Прикрепленный файл. В нем явно больше типов флеша и более новая ПО.


Смело подключаем к USB и ... дальше все интуитивно понятно.
1.2 Если у вас в загашнике завалялся переходник SATA-USB jmf20329 - аналогично, как и описано в инструкции к MPtool.
Если контроллер переходника не jmf20329, то поздравляю. Притом, если это jmf20339, то утилита найдет именно его, но не стоящий за ним SSD.
Проверенно лично, не тратьте время.

2. Если ничего этого нет, то велкам.

Качаем обновлялку до версии 110322 JMicron JMF616 SATA ISP Tool v110322
usbdev.ru/?wpfb_dl=2858
Разбираем SSDешку и смотрим тип флеши.
Смотрим как она называется в файле Flash.ini, т.е. ее "псевдоним".
Подключаем SATA шлейф "на горячую", ибо дивайс толком не инициализируется и подвешивает определение устройств в BIOSе.
Грузимся во FreeDOS с VC.
SATA ISP Tool v110322 радостно вам заявит, что не может определить версию фирмвари в устройстве.
Выбираем редактирование файла jmisp616.exe, переходим в HEX, меняем
//определение Current firmware version. Первая правка возможно не нужна. Зачем делал -уже не вспомню.
Offset: 0 1 2 3 4 5 6 7
00008EE0: FC 80 7D FC 00 74 06 80
на
Offset:
00008EE0: FC 80 7D FC 00 75 06 80
и
Offset: 0 1 2 3 4 5 6 7
0000BF90: 7E 44 00 00 00 74 64 B8
на
Offset:
0000BF90: 7E 44 00 00 00 75 64 B8
с этим изменением версия определится как у FCR SATA Loader т.е. 1000,01

//Прошивальщик считает, что версия SATA LOADER старше 110322
Offset: 0 1 2 3 4 5 6 7
0000BFE0: 00 00 00 74 02 EB 12 B8
на
Offset:
0000BFE0: 00 00 00 75 02 EB 12 B8

// Update fail, до свиданья
Offset: 0 ... 7 8 9 A B C D E F
0000C0E0: FC 00 75 05 E9 03 03 00
на
Offset:
0000C0E0: FC 00 74 05 E9 03 03 00

Сохраняем изменения в файле.
Правим isp.ini
Значения ключей прописаны в мануале от виндового USB MP tool по первой ссылке.
Некоторые комментарии на примере:
[TestItems]
CheckFlashMask=31
EnSataTest=1
EnFlashTest=1
EnDramTest=1
EnPreFormat=1
EnDownload=1
DownloadType=1
EnRWTest=1
EnCheckTables=1
EnSetMaxLBA=0
SetMaxLBAValue=0
EnFormat=0
DiskFormat=0
DiskLabel=SSD Disk

[DeviceSetting]
ModelNum=SPCC Solid State Disk
FirmwareVer=110322
SerialNum=000012121971-032GT10
SNAutoInc=1
SNDecimal=0
SNMinLength=20
SNErrReuse=0
VID=152D
PID=0616
VendorName=SP
ProductName=T10G32
ManufString=Silicon Power
ProductString=616 SSD
OUI=000000
UID=000000000
UIDAutoInc=0
UIDDecimal=0

[FlashSetting]
FlashUniName=AAMDB18
Channel=8
Bank=1
DrvCurrent=1

[FwSetting]
DefPercentage=48
ResPercentage=68
Bch16ReadErrorThreshold=13
Bch24ReadErrorThreshold=20
Bch16EccErrorCopyThreshold=4
Bch24EccErrorCopyThreshold=15
ScrambleEnable=1
RemapEnable=1
UsbRemovable=0
UsbLedP14=0
SecurityCounter=5
DirtyDepth=40
EnTrimCmd=1
EnSizeAlignment=0
EnThermalSensor=1
Обратить внимание на
[DeviceSetting]
FirmwareVer=110322 //отображение версии в свойствах устройства. Если не указывать, будет 123456. Возможны проблемы с обновлением ПО
[FlashSetting]
FlashUniName=AAMDB18 // "псевдоним" флеша из FLASH.ini. Указывать обязательно
Channel=8 // количество каналов
Bank=1 // количество банков

Если неизвстно, то скорее всего - мс на одной стороне платы - 8/1, на двух - 8/2. Подбирать экспериментально, что бы емкость соответствовала предыдущей.

DrvCurrent=x // Это ток неизвестно чего (настраивается под тип флеша), 0=2мА, 1=4мА и т.д. "x"- авто/без изменений.
EnThermalSensor=1 // Включает показание температуры.Если не включенно или команда написана с ошибкой, как біло:) , то в современных версиях застрянет на 40 градусах.
EnTrimCmd=1 // Включает TRIM
EnSizeAlignment=0 // Отключает какое-то выравнивание. Если включить, то у 32ГБ диска 5 ГБ уходит под нужды контролера для замены битых ячеек.

ЕСли SSD уходит в отказ из-за неправильной фирмвари, то паяем джампер. Его замыкание отключает выполнение фирмвари и диск ждет ее скачивания с компа. В случае когда активировался SATA LOADER, устанавливать не нужно.

Теперь о фирмвари, прошивальщике, жизни и вообще.
- JMicron JMF616 SATA ISP Tool v110322 льет только v110322. С другими - затыкается на разных этапах.
- isp.dat - закодированный разными битовыми сдвигами файл, содержащий 3 фразы (2 каких-то предупреждения и имя компании), версию фирмвари, битовую маску каких-то операций, производящую оверрайд isp.ini - 12 байт, в каждом байте толи 0, толи 1 + символ Y/N кажется соглашения соглашения с EULA.
- У ISP Tool v110322 эта самая v110322 прописана в .ехе, маски нет, имени компании нет и вообще красота.
- Фирмварь состоит из init.bin(Х/З что), GDP.bin(фирмварь?), SATATEST.bin (???). SYS_xxxx (настройка контроллера под тип и конфигурацию флеша) - нужный файл смотрится в виндовом ISP Tool.

Update

Для тех кто хочет обновить фирмваре до последней 120703 130805.
1. Исправляем бинарный файл jmisp616.exe из набора JMicron JMF616 SATA ISP Tool v110322
usbdev.ru/?wpfb_dl=2858
как описанно выше по всем шагам.
1,1 вносим дополнительные изменения
Offset: 0 1 2 3 4 5 6 7
26ff8: 31 31 30 33 32 32 00 4E
на
Offset:
26ff8: 31 33 30 38 30 35 00 4E
и
Offset: 0 1 2 3 4 5 6 7
27018: 0A 00 31 31 30 33 32 32
на
Offset:
27018: 0A 00 31 33 30 38 30 35
т.е. текстовое "110322" меняем на "130805"
Сам номер фирмваре находится в файлах SYS_xxxx по смещению где-то 0300h и имеют вид
JMSSD_130805_S,Aug 5 2013,18:57:29,61XA.
Если строка в SYS_xxxx не совпадет со значением в JMISP616.exe, то будет "error code 060 - download firmware fail!"
В ISp.ini версия фирмваре носит описательный характер отображается при инициализации диска, может быть любая. Но лучше указывать настоящую, во избежание проблем в дальнейшем.

1.2 В файле isp.ini меняем строку
FirmwareVer=110322 на
FirmwareVer=130805
Для обновления фирмваре в принципе достаточно, что бы файл isp.ini имел вид
[DeviceSetting]
FirmwareVer=130805
[FlashSetting]
FlashUniName=AAMDB18
Channel=8
Bank=1
DrvCurrent=X
[FwSetting]
DefPercentage=48
ResPercentage=68
Bch16ReadErrorThreshold=13
Bch24ReadErrorThreshold=20
Bch16EccErrorCopyThreshold=4
Bch24EccErrorCopyThreshold=15
ScrambleEnable=1
RemapEnable=1
UsbRemovable=0
UsbLedP14=0
SecurityCounter=5
DirtyDepth=40
EnTrimCmd=1
EnSizeAlignment=0
EnScrambleRandomSeed=1
EnThermalSensor=1
3. Из архива по адресу (спасибо фирме Трансенд и ее ФТП ).
217.166.158.90/Products/SSD25S-M_JMF616/
версия 130411. По факту 130805.
извлекаем файлы:
init.bin, satatest.bin, GDP.bin, SYS_ХХХХ.bin(все), Flash.ini
4. Файлы из JMicron JMF616 SATA ISP Tool v110322 usbdev.ru/?wpfb_dl=2858 :
- ISP.dat - оригинальный, размером 69кБ
- jmisp616.exe - исправленный в предыдущих шагах
- isp.ini - исправленный в предыдущих шагах

Или просто скачать прикрепленный файл jmk_616_ver_130805.7z.7zip

Убрать .7zip (ограничение движка форума, .7z не принимает), разархивировать, запустить JMISP616.exe из под FreeDOS или при наличии адаптера - JMMassProd61X.exe из Виндоуз, можно 10, можно х64.
Данные естественно с диска будут удалены, так что перед мероприятием - бекап.
И все будет norma 4 you

ВложениеРазмер
jmk_old_120703.7zip744.65 КБ
jmk_old_130805.7zip1000.52 КБ
jmk_old_110322.7zip970.44 КБ

Хорошая статья, все по полочкам.
У Вас случайно нет информации как обстоят дела с контроллерами SandForce (sf-1222ta3)?
А то валяется диск, в BIOS не определяется, в терминале мусор какой-то выдает.

CLI> PINRST
*** ROM 106 Mar 12 2009 20:29:35 ***
FW_SRC 0 SHA PASS!
*** EEPROM 207 Jan 3 2011 18:36:47 BuildServer:FW_Common_Critical_Fixes:P1_EEPROM_2_0_7_drop-290232 ***
IMFT25 Timing EPch
*** Patch 1.4.1 Aug 22 2011 18:56:42 BuildServer:FW_Common_Build_Release:P1_3_6_4_MP4_Patch4_RC1_Drop-333796 ***
IMFT25 Timing EPch
RCPch SAK0
▒▒▒▒▒4▒ޤ▒
▒▒▒▒▒▒6▒▒▒▒▒▒?6▒▒▒▒6▒▒▒▒6▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒\▒▒▒▒▒▒▒▒&▒T▒▒▒▒4 ▒▒

......... и так далее.

g1obus
У Вас случайно нет информации как обстоят дела с контроллерами SandForce (sf-1222ta3)?

Увы. Я не специалист датарековери, да и давно уже не ремонтник.
Просто была проблема с личным SSD, пришлось разбираться.
Заметка - для того что бы не забыть,

Hi,

Sorry to write in english, but i dont speek russsian, I just have one thing to say to you THANK YOU VERY, VERY, VERY MUCH!!!!
Your article just saved me, I recovered my Kingston SV100S2 (128Gb) using your guide and the "JMicron 61X M.P. Tool", luckily i had an old USB HDD enclosure with "jmf20329" chip... if one day you come to Portugal I offer you a beer or two:)

спасибо большое !!! Привет из Португалии

Подскажите плиз .
Есть SSD Kingston SV100S2/32G , при обновлении не прошел преформат ( mhdd показывает беды ) и сообщил update fail , теперь при старте выдает - FCR SATA Loader 1000,01.
Чисто ради спортивного интереса , пытаюсь поднят как было.
контроллер - JMF 616
четыре микросхемы FD64G08UCT1-0B
Вопросы -
1. по Вашей инструкции надо прописывать "FlashUniName=" , как определить какой у меня ? В Flash.ini не нахожу микросхему.
2. И откуда беруться строки -
"ModelNum=SPCC Solid State Disk
FirmwareVer=110322

?

Gollen
if one day you come to Portugal I offer you a beer or two:)
I am from Ukraine, and chance to drink beer in Portugal may not so illusory.

VC
как определить какой у меня ?
Или по .ini файлу, или просто удалить эту и последующие строки, т.е. всю описательную часть
FlashUniName=AAMDB18


Channel=8
Bank=1
DrvCurrent=1

и надеяться, что прошивальщик автоматом определит флеш и ее структуру подключения.
У меня работает и с явным указанием, и без него.

2. И откуда берутся строки -
"ModelNum=SPCC Solid State Disk

Это название модели, для своего указал по памяти. По умолчанию, вроде пропишет что-то наподобие jmicron generic SSD.

FirmwareVer=110322
Это версия самого ПО, которое отучалось от лишних вопросов, т.е.
JMicron JMF616 SATA ISP Tool v110322

Спасибо , вот что получилось .
В ACHI шить не захотел , в IDE пошло , но не до конца. После перезагрузки как то определился , и даже прошел тест.

К стати было ругнулось на отсутствие SYS_STFF.bin , нашел этот файл - usbdev.ru/post-jmf616-mpt-vb2914-m0603/

Мой ISP.ini перед правкой , то что осталось

[DeviceSetting]
FirmwareVer=110322
[FwSetting]
DefPercentage=48
ResPercentage=68
Bch16ReadErrorThreshold=13
Bch24ReadErrorThreshold=20
Bch16EccErrorCopyThreshold=4
Bch24EccErrorCopyThreshold=15
ScrambleEnable=1
RemapEnable=1
UsbRemovable=0
UsbLedP14=0
SecurityCounter=5
DirtyDepth=40
EnTrimCmd=1
EnSizeAlignment=0




Потом подтправил ISP.ini
[DeviceSetting]
ModelNum=SPCC Solid State Disk
FirmwareVer=110322
SerialNum=32GBB0039733 - мой номер
SNAutoInc=1
SNDecimal=0
SNMinLength=20
SNErrReuse=0
VID=152D
PID=0616
VendorName=Kingston - мое
ProductName=SV100S2/32G - мое
ManufString=Kingston - мое
ProductString=616 SSD
OUI=000000
UID=000000000
UIDAutoInc=0
UIDDecimal=0
[FwSetting]
DefPercentage=48
ResPercentage=68
Bch16ReadErrorThreshold=13
Bch24ReadErrorThreshold=20
Bch16EccErrorCopyThreshold=4
Bch24EccErrorCopyThreshold=15
ScrambleEnable=1
RemapEnable=1
UsbRemovable=0
UsbLedP14=0
SecurityCounter=5
DirtyDepth=40
EnTrimCmd=1
EnSizeAlignment=0
И получил такое -

А как подправить название и объем ?

VC
Попытки подсунуть файлы от другой версии прошивки приводили именно к результату "Download Code...Fail!".
Т.е. для восстановления с более новой версией нужно ломать более новый прошивальщик, что более трудно, ибо в других есть больше проверок, которые в указанной версии выключены.

Можно попробовать сверху накатить
Transcend SSD Firmware Update Utility v1.0 HW6071 usbdev.ru/?wpfb_dl=2925
может он сработает, т.к. в ССД уже прошился номер прошивки.
FirmwareVer=110322
Т.е. прошивальщик смотрит и на это значение, вычитанное с ССД.

Имя, так это же
[DeviceSetting]
ModelNum=SPCC Solid State Disk
= Silicon Power Computer & Communications Inc. silicon-power.com/info/info_index.php?includename=company


Пишите свое и никаких проблем.

с именем разобрался - спасибо.
А вот Transcend SSD Firmware Update - не пошло , вообще не захотел шить . Подсунул подправленный jmisp616.exe - в принципе все тоже прошилось как и ранее . При этом выругался на отсутствие файла SYS_STFF.bin
Правильно понимаю SYS_STFF.bin - это и есть файл прошивки , в котором и указан обеъм в 25GB , и он просто подошел под данную SSD , верно ?
И вопрос с объемом SSD не решиться пока не ломанут родную прошивку , верно ?

VC
SYS_STFF.bin - это и есть файл прошивки
Это файл настройки контроллера под флеш-память.
За выравнивание с отрезанием в 30% отвечает строчка
EnSizeAlignment=0
Выравнивание включается значением "1", с "0" - должно оставить полный объем ССД, без резервирования запаса.
Во всяком случае у меня было так.

Попробуй накатиь сверху родную обновлялку от Кингстона
kingston.com/us/support/technical/downloads?product=SV100S2&filename=S...


В ней и содержится SYS_STFF.bin, единственный, т.е. к другим наборам памяти не подойдет.

Попробовал родную прошивку - сообщило что это не Kingstone SSD.
Списал с диска с оригинальной прошивкой все что было .
Оригинальный SYS_STFF.BIN ( тот что Кингстоновский ) подменил в “рабочий каталог” ( катало с файлом, тот что помог восстановить эту SSD) – в результате получил сновал Loader .
После попробовал обновить оригинальной прошивкой – послало , сообщило что SSD не Kingstone.
После подкинул оригинальный ISP.INI в “рабочий каталог” и потом снова накатил оригинальную прошивку – все равно послало.
Поискал описанные строки выше в файле JMISP616.EXE – их там нет , вероятно прошивальщик другой версии .
В общем пока что с обрезанным SSD , ну хоть что то , но не тот результат что хотел получить.

содержимое диска с прошивкой - fayloobmennik.net/4827093 или my-files.ru/lx7sfr

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей