Микросхема W25Q128JVSIQ — это SPI Flash память объёмом 128 Мбит (16 Мбайт) производства Winbond, и чаще всего её прошивают при восстановлении роутеров, материнских плат, видеокарт, ресиверов и телевизоров, где устройство перестало загружаться из-за повреждённой прошивки. Чип работает по интерфейсу SPI с напряжением питания 2,7–3,6 В, поэтому для записи понадобится программатор, поддерживающий 3,3-вольтовую логику.

Задача «прошить W25Q128JVSIQ» обычно возникает в двух сценариях: либо нужно восстановить заводскую прошивку после неудачного обновления, либо перенести содержимое со старого чипа на новый при замене. В обоих случаях порядок действий схож, и ниже разберём его подробно — от выбора программатора до проверки записанного дампа.

Что представляет собой W25Q128JVSIQ

Маркировка расшифровывается так: W25Q128 — серия и объём (128 Мбит), JV — версия с питанием 3 В, S — корпус SOIC-8 (208 mil), IQ — температурный диапазон и тип упаковки. Чип поддерживает стандартный, Dual и Quad SPI режимы, но для прошивки через программатор достаточно базового SPI.

Именно корпус SOIC-8 делает эту микросхему удобной для ремонта: её можно прошить прямо на плате через прищепку-клипсу без выпаивания, либо выпаять и установить в адаптер программатора. Выбор способа зависит от того, мешают ли соседние компоненты и подано ли на плату постороннее питание.

⚠️ Внимание: W25Q128JVSIQ питается от 3,3 В. Подача 5 В на вывод VCC с высокой вероятностью выведет чип из строя. Перед подключением убедитесь, что программатор выдаёт именно 3,3 В, а не 5 В.

Какой программатор подойдёт

Самый доступный вариант — CH341A («чёрный» USB-программатор), который работает с большинством SPI Flash серии 25. Однако у распространённых версий CH341A есть известная особенность: на линиях данных может присутствовать напряжение 5 В, что небезопасно для 3,3-вольтовых чипов. Перед использованием проверьте конкретный экземпляр мультиметром или изучите его ревизию.

Более корректные альтернативы:

  • 🔧 CH341A с доработкой или версией, где логика переведена на 3,3 В;
  • 🔧 RT809F / RT809H — универсальные программаторы с автоопределением чипа;
  • 🔧 TL866II Plus — популярный программатор с поддержкой SPI Flash через адаптер;
  • 🔧 FlashcatUSB и самодельные решения на базе Raspberry Pi или Arduino с flashrom.

Для разовой задачи подойдёт CH341A с проверенным напряжением, для регулярного ремонта имеет смысл рассмотреть RT809H или TL866II — они стабильнее определяют чипы и реже дают ошибки верификации.

📊 Каким программатором вы планируете прошивать W25Q128JVSIQ?
CH341A
RT809F/RT809H
TL866II Plus
Flashrom + Raspberry Pi/Arduino

Подключение: распиновка и клипса

Распиновка SOIC-8 у чипов серии 25 стандартная. Ключ на корпусе (точка или выемка) указывает на первый вывод. Для подключения через клипсу красный провод жгута обычно совмещают с первым выводом, но обязательно сверьтесь с маркировкой вашей клипсы.

ВыводНазваниеНазначение
1CS#Выбор чипа (Chip Select)
2DO (IO1)Данные из чипа (MISO)
3WP# (IO2)Защита от записи
4GNDОбщий провод
5DI (IO0)Данные в чип (MOSI)
6CLKТактовый сигнал
8VCCПитание 3,3 В

Вывод 7 (HOLD#) при прошивке через клипсу обычно подтягивается внутри схемы, но при проблемах с определением чипа его стоит подтянуть к VCC. Если чип прошивается на плате, питание подаётся от программатора, а само устройство должно быть обесточено.

💡

Если программатор не видит чип на плате, возможная причина — соседние компоненты «просаживают» питание или мешают по линиям SPI. В этом случае выпаяйте микросхему и прошейте её в адаптере.

Пошаговая инструкция по прошивке

Ниже — общий порядок действий на примере CH341A с программой AsProgrammer или NeoProgrammer. Интерфейс другого ПО может отличаться, но логика шагов одинаковая.

☑️ Перед началом прошивки

Выполнено: 0 / 5

Шаг 1. Подключите программатор к чипу (клипсой или через адаптер) и запустите ПО. Нажмите «Определить чип» — программа должна показать W25Q128JV или близкий идентификатор. Если чип не определяется, проверьте контакт клипсы и ориентацию.

Шаг 2. Обязательно прочитайте и сохраните текущее содержимое — даже «битый» дамп может содержать калибровки, MAC-адреса или серийные номера, без которых устройство не заработает корректно. Считайте чип дважды и сравните файлы: совпадение означает, что чтение стабильно.

Шаг 3. Откройте файл новой прошивки. Его размер должен составлять ровно 16 Мбайт (16777216 байт) — меньший файл допишется нулями или вызовет ошибку, больший просто не поместится. Далее выполните стирание чипа, запись и обязательную верификацию.

Шаг 4. После успешной верификации отключите программатор, припаяйте чип обратно (если выпаивали) и проверьте запуск устройства. Если устройство не стартовало — вернитесь к сохранённому дампу и проанализируйте, тот ли файл прошивки использовался.

# Пример прошивки через flashrom (Linux):

flashrom -p ch341a_spi -c "W25Q128.V" -r backup.bin # чтение дампа

flashrom -p ch341a_spi -c "W25Q128.V" -w firmware.bin # запись прошивки

⚠️ Внимание: записывайте только прошивку, предназначенную именно для вашей модели и ревизии устройства. Файл от похожей модели может содержать другой загрузчик — тогда устройство перестанет включаться, и восстановить его можно будет только повторной прошивкой чипа.
💡

Золотое правило: сначала читаем и сохраняем дамп, потом стираем и пишем. Без резервной копии восстановить уникальные данные (калибровки, MAC, серийники) будет невозможно.

Типичные ошибки и их решение

На практике прошивка W25Q128JVSIQ чаще всего упирается в несколько повторяющихся проблем. Разберём основные:

  • ⚡ Чип не определяется — плохой контакт клипсы, перепутана ориентация, либо плата «тянет» питание; попробуйте выпаять чип.
  • ⚡ Ошибка верификации — нестабильное питание, длинные провода, помехи; укоротите жгут и снизьте скорость SPI в настройках ПО, если такая опция есть.
  • ⚡ Читаются только нули или FF — возможно, чип физически неисправен или повреждена клипса.
  • ⚡ Устройство прошилось, но не стартует — неверный файл прошивки или утерянные калибровочные данные из старого дампа.

Если ошибки возникают на этапе записи, полезно выполнить полное стирание (Erase), затем проверку чистоты (Blank Check) и только после этого записывать файл. Это исключает влияние остаточных данных.

Почему CH341A может «убить» 3,3-вольтовый чип

В распространённой ревизии CH341A микросхема питается от 5 В, и на линиях MOSI/CLK/CS присутствует 5-вольтовая логика, хотя на разъём питания чипа выведено 3,3 В. Для многих чипов это некритично кратковременно, но риск повреждения существует. Доработка заключается в переводе питания самой CH341A на 3,3 В — схема широко описана в профильных сообществах.

Где взять прошивку для чипа

Прошивка для W25Q128JVSIQ — это не файл «для чипа», а файл для конкретного устройства, в котором чип установлен. Искать её нужно по модели устройства: на сайте производителя, в сервисных мануалах или на профильных форумах по ремонту.

Если официальный файл недоступен, рабочий вариант — считать дамп с заведомо исправного такого же устройства. Учтите, что дампы с чужих аппаратов могут содержать чужие калибровки и сетевые идентификаторы, что иногда требует ручной правки в hex-редакторе.

💡

Перед записью чужого дампа сравните его область калибровок со своим старым дампом — часто достаточно перенести несколько блоков данных, чтобы устройство заработало корректно.

Часто задаваемые вопросы

Можно ли прошить W25Q128JVSIQ без выпаивания из платы?

Да, через прищепку-клипсу SOIC-8 при обесточенном устройстве. Однако если соседние компоненты мешают работе по шине SPI или просаживают питание, чип придётся выпаять и прошить в адаптере.

Подойдёт ли программатор CH341A для этого чипа?

Подойдёт, чип поддерживается. Но проверьте напряжение на линиях данных вашего экземпляра: в некоторых ревизиях там 5 В вместо 3,3 В, что небезопасно для W25Q128JVSIQ.

Какого размера должен быть файл прошивки?

Ровно 16 Мбайт (16777216 байт) — это соответствует объёму 128 Мбит. Файл другого размера либо не соответствует чипу, либо является частью прошивки, а не полным дампом.

Что делать, если после прошивки устройство не включается?

Проверьте правильность файла прошивки и качество пайки чипа. Если есть сохранённый старый дамп — запишите его обратно, чтобы убедиться, что проблема именно в прошивке, а не в монтаже или неисправности самого чипа.

Можно ли восстановить данные, если чип не определяется вообще?

Возможная причина — физическая неисправность памяти или отсутствие контакта. Сначала исключите проблемы подключения (другая клипса, адаптер, выпаивание чипа). Если чип мёртв, данные извлечь программатором не получится.