Перейти к содержанию

Рекомендуемые сообщения

Опубликовано

Необычный программатор Spi Flash и i2c Eeprom | Raccoon Flash Explorer

Автор: lapot2

Ra©©oon Flash Explorer
Полное описание на хабре по этой

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

 

Необычный программатор Spi Flash и i2c Eeprom | Микросхема видна как файл на юсб флешке. Необычность заключается в том, что микросхема работает как простой файл на простой юсб флешке. Можно скопировать или заменить прошивку обычным перетаскиванием, или напрямую открыть в hex-редакторе или нужном софте. Работает на любом устройстве с любой ос, которая понимает юсб-флешки. 8мб читает за 12 секунд, пишет за 36 секунд и выше, это везде зависит от самой микросхемы. К тому же сам определяет микросхему и её питание (не нужен 1,8в адаптер), и подбирает частоту для Spi флешек от 1,7 до 22МГц.

Готовится усиленная поддержка прищепки, режим уже проходит тестирование и цепляет намного больше плат чем остальные.

Имеет защиту от дурака, и что-либо сжечь будет довольно трудно.

Новости и обновления: |

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Поддержка пользователей:|

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
 

Руководство пользователя:

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

UPDATE_24-09-27_11-36-00_spi_update_30_10_1_no_ver

Изменения:
+ Внесены серьёзные исправления SPI и I2C

--------------------------------------------------------------------------
Для прошивки нужен порт STC-USB Writer,
он появится сам при подключении в режиме DFU.
Это значит нужно замкнуть контакты DFU в сокете,
и воткнуть юсб провод.
С первого раза подключение может не сработать.
Переподключать usb-провод желательно 
на стороне устройства.

 

  • Отлично! 4
Опубликовано

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

  • Решение
Опубликовано (изменено)

Видео работы

Спойлер

 

Мини-обзор

Спойлер

 

Мануал (дописывается, не готов)

Спойлер

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Фото

Спойлер

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Получить можно написав нам в телеграм(к сожалению пока только такой способ)

Спойлер

Флудилка - 

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

Новости - 

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

 

Программатор представляет собой мультиплатформенный эмулятор стандартного USB-диска(USB-флешки) с виртуальной файловой системой FAT12, на котором лежат файлы: *название_микросхемы*.BIN, и несколько текстовых файлов.
Текстовые файлы являются одновременно и окном лога, и интерфейсом взаимодействия, например редактирование регистров(через правку и сохранение текста).

Бинарный файл дампа представляет собой виртуальный файл, содержимым которого является настоящее содержимое прошиваемой микросхемы.

За счёт такого подхода с микросхемой можно работать как с обычным файлом, тоесть стандартными файловыми инструментами, имеющимися в любой операционной системе. Это же и даёт совместимость с любыми операционными системами.
В том числе и редактирование дампа напрямую в микросхеме, с записью только изменённых данных.
При малом размере изменений - оные записываются очень быстро, например DMI пишется доли секунды.

Есть и побочный режим - тестер инициализации.

Все операции, которые можно выполнить автоматически - выполняются автоматически, без участия юзера.
Ими являются при включении:

1. Проверка контактов и детект типа микросхемы(i2c/spi)

Спойлер

Сначала проверяется состояние контактов для нормального и перевёрнутого подключения.
Если микросхема в правильном положении найдена - проверяется способность программатора подтянуть все линии к лог.1 и лог.0 с замером напряжений в каждом состоянии, и сверяет их по уровням VCC*0.7 и VCC*0.3.
Затем проверяется наличие помех на шине, вроде начавшегося внутрисхемного обмена.

Дальше ничего необычного, просто проверяется ответ.

 2. Детект объёма памяти(i2c/spi)

Спойлер

Максимум сейчас - 512мбит или 64мбайт.
Spi определяется по SFDP, и если SFDP отсутствует то по последнему байту ID.
Базы микросхем отсутствуют, названия микросхем генерируются на ходу.
Теоретически работать будут любые микрухи со стандартным ID.
Для нестандартных пока жёстко в прошивке задаю соответствие стандартным. Будет так-же добавлен ручной ввод размера.

i2c детектится общеизвестными способами.

3. Детект номинального питающего напряжения микросхемы(spi)

Спойлер

Кроме общеизвестных способов определения питающего напряжения - есть ещё несколько методов своей разработки, ошибок в детекте питания пока не находили.

Для i2c пока детекта нет, задаётся принудительно.

4. Детект подходящей скорости обмена с микросхемой(spi)

Спойлер

Полезно при внутрисхемной прошивке(прищепка).
Частота обмена подбирается по отсутствию ошибок в обмене.

Для i2c подбор отсутствует/неактуально

5. Детект поддержки QPI микросхемой(spi)

Спойлер

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

Чтение и запись дампа ничем не отличаются от процесса копирования файла на обычную USB-флешку, и рассказывать тут нечего.

Дамп будет иметь название микросхемы, или ID микросхемы если название не удалось сгенерировать, работать с дампом и микросхемой при этом можно полноценно.

В случае ошибок - название файла станет названием ошибки, такой вот своеобразный индикатор.

Перевёрнутую микросхему тоже видит и сообщает, питание при этом подано не будет.

Прошивка программатора обновляемая и сейчас допиливается.
Для обновления нужен комп с виндой и программа обновления с содержащейся внутри прошивкой, обновляется по USB как HID-устройство, драйвера не нужны.

Список поддерживаемых микросхем дать не могу, так как из-за принципа работы его будет трудно составить.
Могу только составить и выложить список проверенных, сделаю это на днях.

Проверено на следующих ОС:
Windows - чтение и запись.
Linux - чтение и запись
Android - чтение и запись
Apple imac - только чтение
Apple iphone - только чтение
Apple не имеет полной поддержки FAT12, но это исправим переходом на exFAT, и все яблоки тоже будут шить. Сейчас любые яблоки только читают прошивку, писать не могут.

Текст будет дополняться.

Изменено пользователем lapot2
  • Отлично! 2
Опубликовано (изменено)

Немного комментариев от пользователей:

Цитата

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

Если исключить пункт про блевотину пчел - то аналогия в принципе должна быть понятна.

Я бы и не посмотрел в сторону прогера, если бы мне его не вручили практически насильно ;)
И пару дней он просто провалялся на столе, пока не выдалась свободная минута и любопытство не взяло верх.

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

© пользователь

Цитата

От себя скажу что пока прогер - несколько сыроватый прототип, но полностью рабочий и достаточно шустрый. Я первым делом присрал туда кнопку ресета, а также резистор на type-c, что бы он работал через кабели type-c -> type-c. То что автор нацеливается также на работу через прищепку - уникальная фишка. То что можно просто поправить файл, и оно перезапишет только правленный блок, а не всю флешку целиком - уникальная фишка.

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

Для линуксоидов в любом случае альтернатив нет, не позорище же на ch341 брать

© пользователь

 

Изменено пользователем lapot2
  • Отлично! 2
Опубликовано

Список проверенных микросхем в

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.
.

*** - Звёздочками отмечены микросхемы, маркировку которых с корпуса прочитать не удалось, и название взято из автодетекта.

Будет обновляться. 

  • Отлично! 1
  • 1 месяц спустя...
Опубликовано

Появились в доступе

Это скрытый контент, для просмотра сообщения Вы должны быть Участником форума.

  • Отлично! 1

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Это очень просто!

Регистрация

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...