В данной статье расскажу как модифицировать DSLogic U2Basic до DSLogic Plus.
Данная статья является обновлением статьи — Превращаем DSLogic Basic в DSLogic Plus
Кому интересно — прошу под кат.
Предисловие
DreamSourceLab — решили прикрыть дыру (мод до Plus).
DSLogic Basic — сняты с производства.
DSLogic U2Basic — внесены взамен, с незначительными изменениями схемы и прошивки.
Благо различия в плате не существенны.
Штука очень интересная, описывать почему именно DSL а не Saleae не буду. На вкус и цвет — как говорится…
На всем известном китайском рынке DSLogic U2Basic стоит (>55$).
Тогда как DSLogic Plus на офф сайте стоит (>149$).
А для мода достаточно лишь заменить ОЗУ, припаять проводок и сменить один байт в прошивке eeprom на плате анализатора.
Приступаем к работе
Автор не несет ответственность за ваши неудачи, и не призывает к действию!
Все что вы делаете — вы делаете на свой страх и риск!
Понадобится:
- Паяльник;
- Тонкий пинцет (или игла);
- Программатор с поддержкой прошивки I2C EEPROM 24**** (
теоретическиможно прошить и без программатора, но мне было лень разбираться); - * На всякий случай архив с прошивками (PASS: 8S]7P#cGaB/X7p-N).
- ОЗУ AS4C16M16SA или аналог (4 страница — аналоги);
- Тонкий проводок в изоляции (или лакированая проволока).
- Сам девайс.
Вскрываем
Осторожно выполняем следующие действия:
- Выкручиваем еще 4 болтика крепящие плату к корпусу.
- Двигаем плату в сторону разъема входов каналов.
- Слегка отгибаем плату.
- Вынимаем плату давя пальцами на разъем входов каналов.
Меняем ОЗУ, паяем проводок, подготавливаем к прошивке
Хорошенько пропаиваем контакты паяльником, не оставляем сопли!
В U2Basic отсутствует дорожка озу A12.
А также, пин(ножка) чипа U3 (к которому должна идти дорожка) — замкнут на землю под чипом.
Plus
Потому греем паяльником площадку 138 пина чипа U3, и аккуратно поддеваем пин иглой.
Нужно поднять пин над платой.
Делаем максимально осторожно — да бы не отломить пин.
Берем тонкий провод/лакированную проволоку — отрезаем длиной ~38.5мм (+-1мм).
Подпаиваем к поднятому 138 пину чипа U3 и к 31 пину чипа ОЗУ.
Укладываем так чтобы проводок не касался ничего лишнего.
После этого желательно прихватить клеем (да бы снизить последствия вибраций).
Подложить термоскотч (каптон) под отогнутый пин, либо надеть наиболее тонкую термоусадку на проводок, либо наиболее надежный вариант — закрыть все паяльной маской.
Видим чип в 8ми ногом корпусе — это I2C EEPROM, ее нужно прошить.
Программатор EZP2010 прошивку не осилил (ошибка при сравнении, каждый раз на разном адресе).
Потому беру программатор на основе CH341A.
Чтобы не выпаивать чип — использую скрепку SOIC8 SOP8.
Так как первый пин EEPROM на плате подключен к питанию, а на программаторе к земле — грею паяльником и слегка поднимаю первый пин пинцетом:
Потом осторожно(чтоб не придавить первый пин обратно), цепляю прищепку соблюдая ключ.
И только потом подключаю программатор к ПК.
Прошивка
1) Считываем EEPROM.
2) Делаем поиск по HEX запросу 0E 2A, и меняем следующий за ними байт 29 на 20 (адрес может отличаться):
3) Прошиваем, проверяем.
После удачной прошивки:
- Отключаю программатор.
- Запаиваю первый пин EEPROM чипа обратно.
- Подключаю к ПК.
В софте определяется так:
Проверяем работу на каком нибудь железе, на пример UART.
Если все ОК — отключаем, отмываем спиртом, собираем.
Если же данные битые — еще раз хорошенько пропаиваем озу или меняем ее.
Профит!
Итог — получаем логический анализатор стоимостью 150-200$(+таможка), по цене ~65$(с учетом доставки).
Спасибо за внимание!
Так же хочу выразить отдельную благодарность юзеру Oleg10011001, который не побоялся рискнуть своим девайсом — благодаря чему и появилось данное обновление статьи.
При копировании попрошу оставлять ссылочку на первоисточник.
С вопросами обращайтесь в комментарии, чем смогу — помогу.
Комментарии (9)
Goron_Dekar
11.01.2020 21:53А зачем запароленный архив в 20 году?
drWhy
10.01.2020 22:37А что, разве эра квантовых вычислений уже наступила официально?
Goron_Dekar
14.01.2020 09:54Я вижу: запароленный архив и пароль, выложенный в сеть. Я спрашиваю: зачем это.
При чём тут квантовые вычисления?
dab0g
10.01.2020 23:02Спасибо за нужную статью! Тоже на днях получил обновлённую версию DSLogic U2Basic. На плате надпись — DSLogic-U2B-V111-P0808. Так вот у меня байты в EEPROM немного совсем другие. :/
Начало дампа:
0000000000: C2 0E 2A 29 00 00 00 04 ¦ 00 04 00 00 02 01 B9 32
0000000010: 00 01 00 0B 32 00 01 00 ¦ 13 32 00 01 00 1B 32 00
0000000020: 01 00 20 02 00 01 00 23 ¦ 32 00 01 00 2B 32 00 01
0000000030: 00 33 32 00 01 00 3B 32 ¦ 00 03 00 43 02 1F 00 00
Искомые числа:
0000001980: 00 00 00 00 00 03 19 AD ¦ 00 00 3F 00 F2 1E 00 12
0000001990: 01 00 02 FF FF FF 40 0E ¦ 2A 29 00 01 00 01 02 00
00000019A0: 01 0A 06 00 02 FF FF FF ¦ 40 01 00 09 02 20 00 01
00000019B0: 01 00 80 32 09 04 00 00 ¦ 02 FF FF FF 00 07 05 02
Что это может быть? Другая версия или что-то неправильно считывается?
Считываю ch341a и результаты стабильные.
dab0g
10.01.2020 23:43Залил ваш файл — dsl_plus.bin плюс появился, но данных не было. Затем ещё разок прозвонил и пропаял память и вроде всё заработало :)
Или надо обязательно идущий в комплекте файл менять?
PS Адрес байта всё еще не поправлен, он вроде — 0x001999.
User420 Автор
11.01.2020 00:07Свою прошивку оставил на случай если случайно удалите заводскую.
Адрес может отличаться в разных устройствах, потому значения не имеет.
Скрины не менял, так как не имею сейчас того же сфота под рукой.
Grey4ip
Спасибо за лайфхак.
Необходимую длину провода (для согласования) определили (измерив ломаную линию с минимальным числом звеньев) после отпаивания ОЗУ?
User420 Автор
Примерно так )
Может быть некое отклонение…