Перейти к публикации

Alterpalm

Пользователи
  • Публикации

    11
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    2

Последний раз Alterpalm выиграл 13 июня 2020

Публикации Alterpalm были самыми популярными!

Репутация

7 ....

О Alterpalm

  • Звание
    Постоялец
  • День рождения 02.03.1989

Контактная информация

  • Website URL
    https://vk.com/alterpalm

Дополнительная информация

  • Пол
    Мужской
  • Город
    Санкт-Петербург
  • Деятельность
    Ремонт электроники, 3D печать, 3D моделирование
  • Оборудование
    RuiDa RDLC-320, Creality Ender 3

Посетители профиля

1 588 просмотров профиля
  1. Благодарю за инфу, будем посмотреть) Просто хочу развиваться, больше знать и уметь. На прикладных задачах получается лучше, чем на примерах что-то изучать. Потом уже идет желание выдать результат по итогам ремонта. Если не удастся реанимировать панель, так может хоть заменитель получится сделать
  2. Пользую RDWorksV8. Есть еще LaserWorkV5, он же RDCAM5.0.27, но он, по ходу, с Win10 не в ладах: пока не отключишь панель с цветами, не видно большей части кнопок управления + нет отображения количества выполненных циклов В коде я по-прежнему лох. Не понимаю, откуда взять int o, вроде явно значение здесь нигде не присвоено. Я так понимаю, речь идет о третьей строке в выводе инфы о каждом файле. Теперь вроде дошло, почему не сошлось количество запусков в первом файле. Теперь вижу единичку во втором с конца байте, типа как следующий разряд получается. За пятибайтные числовые представления спасибо, картина стала однозначно яснее. Осталось разобраться с переводом) Вообще смотрю на Ваш код и понимаю, что догадаться самостоятельно у меня не получилось бы, наверное, никогда. Перебором, в лоб получить алгоритм дешифровки просто нереально. Ведь когда его нет, хз, сколько в нем операций преобразования и использованных вспомогательных переменных, может, 4-5, а может и штук 20. Моё почтение, однозначно. А мне, по ходу, пора садиться и учить OllyDbg
  3. Нашелся непропай? У меня похожая ситуация, после разряда статики мать не цеплялась к компу, однако чип FT остался цел(возможно, пробило через панель управления). А у Вас, по ходу, стрельнуло по USB шнурку, убило FT, и, по ходу, циклон тоже зацепило. Ну тогда под замену. Я брал в ЧипДипе. Посмотрел сейчас цены и оглох, я брал за 1360 месяц назад, а сейчас 1990 уже(( Pioneer Кстаати, раз у Вас такой же контроллер, может, сумеете мне помочь файлом прошивки от панели управления? Здесь я подробно описал, что требуется сделать для извлечения прошивки. Буду весьма благодарен)
  4. Поработал с алгоритмом, действительно работает, есть некоторые результаты. Но вопросов и непонятностей только прибавилось) Для начала я взял хорошо распознаваемую строчку и в лоб пересчитал на калькуляторе все байты. Но быстро надоело, преодолел лень и немного автоматизировал пересчет. В коде я полностью лох. Самым быстрым для меня способом оказалось набросать скрипт на Пайтоне и запустить его в VS Code. И то, я еще с часик разбирался с синтаксисом. Ввожу один байт, получаю дешифровку в трех представлениях, repeat. Вообще, по-хорошему стоило написать так, чтоб всю строчку сразу пихать на ввод и получать отформатированное представление. Но я б тогда залип на весь день с синтаксисом и плюнул бы в итоге)) while True: s=int(input("enter s: ")) a=(s+0xFF)&0xFF b=a^0x88 p=b&0x7E p|=b>>7&0x01 p|=b<<7&0x80 print "HEX:", hex(p)[2:] print "CHAR:", chr(p) print "DEC:", p Решил поиздеваться с ответами материнки по запросу Read. Для моей платы список файлов выглядит так: А это дамп ответов. Так как файлов много, я опущу часть кода, чтоб не засорять эфир, оставлю только важное. Вывод инфы о файлах оставил только для двух, первого и четвертого: Первые две строки одинаковые – похоже на проверку связи. А дальше хз, только вот в последнем байте до вывода инфы о файлах увидел количество файлов. Удалось обнаружить номер файла, его имя, количество запусков. Также хорошо видно что-то типа позывного (первые два байта), причем для строк с названиями первый байт другой(E2). Из непоняток: - для первого файла количество запусков является трехзначным числом, и дешифровка не бьётся с этим значением. Для двухзначных значение совпадает. - не удалось распознать время выполнения файла - третья строка в инфе о файле полностью мимо - с третьей по седьмую строки от начала тоже мимо Подскажите, плиз)
  5. Есть, кст, еще пару кейсов с участием меня, станка и статики. Случай номер раз произошел тоже на прошлом месте работы, но с другим станком. Китайский фрезер 2х3м, мозги RichAuto. Кидаю на стол лист акрила 3мм и кладу сверху на него пульт(мудак тупой). Иду к другому краю листа и начинаю весело отдирать защитную пленку. Разряд, станок ребутится и отказывается куда-либо ехать, ни по одной из осей. Получил я, конечно, по шапке. И по кошельку заодно. Но директор молодец, на следующий уже день нарулил такие же мозги, причем у кого-то с рук на авито. Чел приехал, начали ставить, а мозги немного другие, вроде бы RZNC 0501. Плата интерфейсов синяя (была зеленая), другие разъемы на драйвера моторов и на пульт управления, сам пульт с очень похожей, но другой прошивкой. Воткнули, станок поехал, но чёт концевики не видит. Было поздно уже, я человека отпустил, деньги ему отдали, решил сам с концевиками закончить. А директор начал кипешить, типа оно не работает, не подходит, как вы так отпустили человека с деньгами! Еще раз огреб, но уже незаслуженно ни разу. Разобрался таки, нужно было прокинуть плюс питания на разъемы концевиков (индуктивные). На зеленой плате плюс уже разведен был, а на синей нет. Разряд прошел через пульт по проводу и зашиб на интерфейсной плате две микрухи. Уже сейчас не помню, вроде это были преобразователи сигналов с языка пульта на понятные для драйверов. На выходе у них DIR, STEP, вот это вот. Через некоторое время заказал их на алике, впаял и вернул родные мозги на место. Случай номер два был пару недель назад. Уже другая работа давно, да еще стремительно развивается домашняя 3D печать. Ессно я стал обладателем Ender 3. Тоже ЧПУшка, хоть и маленькая. Заменил сток 8 бит плату с орущими драйверами А4988 на SKR E3 mini с распаянными драйверами(надо было брать версию со съемными, меньше гемора). Она уже 32 бит, и драйвера распаяны TMC2209, мощные, но оч тихие. Первые запуски, конечно, бомбические по сравнению со стоком. Принтер печатает практически бесшумно, теперь слышно только кулеры. Спокойно можно спать в одной комнате со станком, космос). А дальше пошли аццкие глюки, слетела прошивка вместе с бутлоадером, китайцы бутлоадер не дают, неделю рыл гитхаб, и таки нашел подходящий. Постоянные пляски с бубном над прошивкой Marlin, передул контроллер STM32 на такой же, но с большим количеством флеша. А можно было и не менять, потому в что в некоторых STMках есть недокументированный объем памяти, вполне юзабельный. Но вроде устаканилось, подобрал рабочий сетап, всё супер, кило пластика ушло за пару недель. Очередной запуск, принтер прогревается, и приспичило мне снять хвостик пластика, свисающий с сопла. Разряд, принтер виснет, прогрев прерывается. Перезапускаю, и ниче не вижу. Опять прошивка вместе с бутом пошли гулять (нет). Начал копать плату, вижу, что на ногу reset не приходит столько, сколько надо. Странная хрень, но выпаиваю резистор, ставлю перемычку, на ресет пришел нужный плюс питания, и станок ожил. Но по X не ехает. Анализ показал на мертвый драйвер. Заказал микруху, жду доставку. Почитал даташник на TMC2209, выяснилось, что Bigtreetech не соблюдают рекомендации Trinamic по защитной обвязке чипа по выходу на мотор, хотя в даташнике этому посвящен раздел с описанием и парой схем. Да даже на съемных исполнениях драйвера нигде такой обвязки нету, ни у одного производителя, даже у Lerdge. Скорее всего, сам буду собирать платку-переходник с антистатик обвязом. Ну вот нету у меня дома контура заземления. Был бы, ессно принтер тоже был бы заземлен. Как-то так)
  6. Вот очень на это похоже, да. Поначалу флэшмэджик всё время зависал при попытке чтения памяти, я списывал это на косяки конвертера(пробовал разные) и на особенности Windows 10. Даже после нескольких erase висло. Та же операция на ноуте с седьмой системой зашла с первой попытки. И после этого и на 10 чип стал читаться до конца. Очень очень надеюсь, что найдёте. Жду, кусаю локти) Тема с парсингом пакетов от RDWorks до материнки безусловно интересная, буду потихоньку ковырять в этом направлении. Но жрёт колоссальное количество времени, которого не особо-то в наличии есть - куча всяких других задач тоже требуют внимания. Поэтому больше хочется восстановить панель, чем писать кастом. Разноземельные чипы вообще встречал, но не столь многоногие, и вообще не ПЛИС. Что-то типа атмеги вроде видел. А вот плюсов питания у циклона целый ворох, и все по разному именованы. И в Квартусе обозначены кучей разных значков. А GND все одинаковые. От этого и плясал. При этом никаких лютых коротышей других ног на GND не встретил
  7. Ооо, как сладенько, сколько пищи для размышлений. Благодарю, буду думать
  8. Блин, закусила меня эта мысль. И так её размышлял и эдак и вроде сам допёр, как можно сделать. Хотя получается костыль, конечно, и весь функционал панели таким образом не выйдет восстановить. Однако... Подключил плату к компу, открыл RDWorks, и также запустил сниффер COM-порта. Посмотрел, какие данные идут при проверке связи в программе, посмотрел пакеты, бегущие при нажатии Read на вкладке Doc, и еще что идёт при управлении головой из вкладки Test. Записал запросы и ответы, закрыл RDWorks, открыл терминал и послал запрос из него. Ответ совпадает, супер! Дальше, в принципе, ясно, рисуем в каком-нибудь конструкторе морду android-приложения, привязываем на кнопки запросы, подключаемся в USB-разъем на материнке, рулим головой с планшета, профит! Но, повторюсь, эт костыль. Ресет, например, так реализовать не выйдет. Вот была бы рабочая панелька, тогда возможен вариант перехватить пакеты, которые с неё идут и приходят, и тогда на планшет можно вывести прямо всё, что может сток-панель, и сверху еще навернуть чего-нибудь) Еще вот прямо сейчас подумалось, что можно попробовать записать пакеты с панели RDLC6442. Кнопочный функционал у неё такой же, поэтому наверняка китайцы не стали заморачиваться и переписывать код. Было бы интересно, да)
  9. Доброго времени суток. А вот мне весьма интересна эта Ваша разработка. Я сегодня сделал публикацию на тему ремонта RDLC320, материнку удалось восстановить, а вот прошивку к панели управления найти пока что возможным не представляется. Очень мне любопытно, каким образом Вы реализовали обмен инфой между материнкой и планшетом. Это же надо знать заранее, какие именно команды бегают в пакетах между материнкой и панелью. Допустим, если есть живой экземпляр, тогда вполне можно каким-нибудь логическим анализатором спарсить все возможные команды. А вот если есть только мать, как тогда? Ну еще, как вариант, можно попробовать разреверсить прошивку от материнки. Я пробовал запихивать последнее (и вроде единственное) обновление от RDLC320 в дизассемблер, и в IDA, и в Ghidra, но что-то там плоховато с анализом прошивок для ПЛИС.
  10. Благодарю, но пока что мимо, нужный мне файл найти не удаётся. Предложил владельцу станка (он всё-таки владелец уже не самого маленького производства, бизнесмен с опытом и связями) поспрашивать у его коллег-производственников, может, есть у кого станок с таким контроллером, я б приехал. Пока тоже мимо. Дал только телефон человека из службы поддержки той конторы, которая продала ему станок. Саппорт сказал, что таких контроллеров у них уже давно нет, прошивки есть только на материнки, ну и предложил обратиться в Руиду.
  11. RuiDa RDLC320-A, делюсь опытом ремонта + помогите файлом прошивки от панели управления Попала ко мне на ремонт система управления ЧПУ CO2 лазером RuiDa RDLC320-A с жалобой, что дисплей ничего не показывает и материнку комп не видит. Забавно, что владелец станка – бывший директор, и сам я за именно этим станком три года проработал. Зная условия, в которых эксплуатируется станок, однозначно предположил, что виной всему статика. В общем-то и сам успел убить две трубки, все линейные подшипники, упороть и заколхозить кнопку и устроить с десяток пожаров =) Как бы хорошо ни были защищены эти контроллеры от таких напастей, время и ураганная эксплуатация без оглядки на какую-либо защиту/заземление и т.п. своё дело сделали. Тем более тут связь только по USB через никакой шнурок без экрана. Подал питание: Ну да, ничего не происходит. Вскрываю: Даа, тут много всего прикольного и интересного, особенно сточенная маркировка на одной из микрух) В общем-то под подозрение сразу попала Альтера, но вдруг нет, надо ж всё проверить. Две недели проверял… Всё перекопал, перепроверил, и таки да, сдохла Альтера и только она. Причем сдохла как-то частично, как будто в ПЛИСине выгорело несколько функциональных блоков. Нащупал у неё jtag (который никуда на плате не выведен, хотя штырьков разных навалом), кое-как припаялся к ножкам – отвечает, зараза, Quartus её видит. Значит, сдуваю её и замеряю сопротивление всех ножек на GND, для начала (или середины уже). Занятие не для нервных, однозначно =) Ну и назамерял кое-чего. У таких замороченных микрух выводы питания и GND есть со всех сторон по несколько штук. Логично предположить, что все земляные ножки должны между собой звониться накоротко. А у этой подлянки несколько земляных ножек имели по паре килоОм по отношению к остальным. Я-то хз, нормально это для ПЛИСин, или нет, первый раз дело имею. Как нельзя кстати у меня завалялся аналогичный чип, только Cyclone III. Думал его впихнуть, но вторая и третья серия циклонов по распину не совпадают, от слова «совсем». Ну хоть как пример взял и промерил всё то же самое и на нём: И да, у заведомо рабочего чипа все ножки GND звонятся накоротко. Чип на кладбище. Заказал новый, припаял, плата ожила, отзывается на подключение к компу, все файлы и настройки остались, плата без проблем дала обновить себе прошивку через RDworks. С этим разобрался, супер. Такие дела) Но это только полремонта. Панель управления как не показывала ничего, так и не показывает. Я-то думал, что дисплей и управление кнопками рулится с материнки, но нет. Панель управления – самостоятельное устройство со своим контроллером и прошивкой на нем, обмен с материнкой идёт по UART. Если на заведомо рабочую панель подать питание 5В, картинка должна появиться и без соединения с материнкой. По идее… Контроллер тут NXP P89V51RD2. С ним тоже можно общаться, еще и проще, чем с Альтерой, нужен только USB-UART переходничок: Тот, что есть у меня, имеет по минимуму выводов, всяких там DTR, RTS, и что там еще в COM портах обычно имеется, не выведено. Конвертер тут CP2102, он умеет во всякие доп. штучки, поэтому я аккуратно вывел наружу еще ножку DTR – она понадобится при общении, но в данном случае с этой панелью можно и без DTR обойтись. Втыкаться можно прямо в шнур от панели до материнки. Втыкаться надо, как того требует интерфейс, крест-накрест, т.е. RX от конвертера идет в TX на шнуре от панели, а у второго провода особо-то выбора и не остается)) Выбор конвертера, полагаю, не критичен, можно взять и FTDI и СH341A, и любой другой. 1 – RX 2 – TX 6 – GND 9 – 5V Скорость порта 19200: Дальше нужна прога Flash Magic версии 11.20. В более новых вроде как нет поддержки целевого чипа: https://flashmagictool.com/download.html Установил, всё соединил, подключил, открываю программу, иду в Advanced Options – Hardware Config, снимаю все галки, жму ОК: Выбираю нужный чип, выставляю порт и скорость: Дальше пробую считать айдишник чипа. И здесь интересно: Просят ввести чип в режим ISP – нужно подать плюс питания на ногу reset контроллера. Именно для этого я добавлял контакт DTR на своем конвертере, хотя это необязательно, и вот почему: На плате есть переходное отверстие, отмечено желтым кружком, его удобно касаться выведенным проводком DTR. Но если такового нету, то можно просто замкнуть, (например, отвёрточкой или пинцетом) две площадки под отсутствующий резистор R5, они отмечены красным овалом на фото. Нужно коснуться и подержать примерно секунду, тогда чип войдёт в нужный режим. Но это еще не все грабли )) Чип войдёт в режим, но он запаролен. Нужен пароль. И он таки есть, спасибо PavelK, вот ссылка на его пост с паролями от Руидовских контроллеров: Иду в ISP – Serial Number: Во фрейме Unlock Device ввожу 666888, выбираю кодировку Hex, жму Unlock Device. Прога ругается окном с предупреждением. Жму ОК и пробую считать сигнатуру чипа еще раз: Успех, чип разлочен! Теперь надо считать память. Но сдается мне, что там пустота. Оч вероятно, что разряд статики каким-то раком потер прошивку, оставив при этом чип в живых. Но это не точно.. Иду в ISP – Display Memory. Я так и знал, сплошные унылые F-ки. Чип забыл всё, чему его научили на заводе. И не исключено, что какой-нибудь кусок памяти забэдблочился… В интернетах категорически не найти эту прошивку. Полагаю, что в Руиду обращаться бесполезно, поэтому ПАМАГИИИТЕЕЕ!!! хочу попросить помощи у участников форума: если вдруг еще есть у кого этот динозавр в эксплуатации, выручите, пожалуйста, файликом. Я вроде бы достаточно подробно описал, что нужно для этого сделать. А если Вы находитесь в СПб, то я готов приехать. Займу не более получаса Вашего времени, от «Добрый день» до «Благодарю, всего хорошего!» Безусловно, есть такие моменты, что эту панель на Алике можно таки найти тыщи за 4 рублей, да и в общем контроллер этот уже древность. Однако хочется и владельцу помочь, человек достойный, и дело сделать до конца, раз уж взялся. Как-то так) Спасибо за внимание!
×
×
  • Создать...