avatar_nicomunet123

Программная модификация контроллеров KU63 и прочих контроллеров на базе X8M06-x

Автор nicomunet123, 08 Июль 2016 в 19:13

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

nicomunet123

Оказывается, контроллер KU63 можно спокойно программировать вот таким вот программатором:

И даже есть ПО, которое позволяет менять некоторые параметры (режим работы регена, плавность пуска...)


И некоторые продавцы на алиэкспрессе могут это все активировать, но сволочи секретом не делятся  :-D.

У меня даже есть некоторые даташиты по NECу upd79f9211 (с которого вроде и скопирован мк) на английском
https://drive.google.com/open?id=0BwLYzaYJowBLaUMybW5PWE9iaGM (спасибо: [user]tpc[/user])

Так же сайт, на котором я нашел контроллер KU63 (он же контроллер в самокате E-TWOW) (но он там не так называется, и описание не на главной странице, а где-то в поддержке, ну в у меня где-то есть)
http://xcmmcu.com  (основной сайт, есть ПО для прошивки)

Я не знаю, где купить такое чудо, и чем вообще шить... Давайте вместе искать схему программатора (или готовый дешевый, а не NEC QB-MINI2, который стоит огого), так же еще надо как-то добыть прошивку (а еще лучше исходник). Я ее не нашел в ПО для прошивки
Кстати, ПО запустить у меня не удалось.
Вот его здесь можно скачать: http://xcmmcu.com/salea.asp
И у меня есть подозрение, что только X8M06-k шьется...
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Если ничего не получится, то можно поставить атмегу и писать прошивку самому
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

Лучше сразу Пентиум поставить. Я умею делать программы для Пентиума.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

electriq

Программаторы бывают разные, некоторые работают просто через RX/TX, некоторые через свой интерфейс, типа STM, надо смотреть документацию на микроконтроллер.


nicomunet123

[user]electriq[/user]
https://drive.google.com/file/d/0BwLYzaYJowBLTUkwcW9oaGdoWWtuYUVFdGszSXJrMUNCbDZN/view?usp=sharing
Документация (664 стр). Программатор цепляется на TOOL0 (TX, RX), RESET (RESET), FLMD0 (FLMD0).
TOOL0 - single line UART.
FLMD0 - Mode signal.

CLK, SCK не используются, вместо них FLMD0.
TX, RX (оба) подключаются к TOOL0.

Из программаторов у меня есть только USBAVR, скорее всего не подойдет.

Китайский программатор подключается как раз к TOOL0, RESET, и вроде бы к FLMD0

То есть если у меня удасться запустить китайское ПО (Win 10 не дружит с этим), и удастся найти программатор NEC - то мы в шоколаде, прошиваем BIN (который я не нашел)...
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

Программатор в пдфках по виду похож на дешёвый программатор с тао.
Надо там поискать, думаю, их там полно.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

Агапит

Интересно, а можно ли в домашних условиях перепрограммировать KU-93 ?
У меня целых 4 штуки проблемных https://electrotransport.ru/index.php?msg=612098
Тогда народ предположил, что прошивка процессора кривая и с этим ничего не поделать...  :-(

nicomunet123

[user]Агапит[/user], можно попробовать, но я еще не пробовал даже KU63 прошить. Пока я думаю как прошить (и не знаю как, и скорее всего не получится) ... Ну и где купить контроллер для издеваний (а то единственный уродовать как-то не хочется)...

Кстати, а какой у вас там микроконтроллер стоит? X8M06 или что-то нормальное?

Ну и было бы хорошо кого-нибудь, кто в Мск (не хочу иметь лишний раз дело с почтой...) готов пожертвовать на это контроллер (отдать мне?).
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

electriq

Цитата: nicomunet123 от 09 Июль 2016 в 17:14
[user]electriq[/user]
https://drive.google.com/file/d/0BwLYzaYJowBLTUkwcW9oaGdoWWtuYUVFdGszSXJrMUNCbDZN/view?usp=sharing
Документация (664 стр). Программатор цепляется на TOOL0 (TX, RX), RESET (RESET), FLMD0 (FLMD0).
TOOL0 - single line UART.
FLMD0 - Mode signal.

CLK, SCK не используются, вместо них FLMD0.
TX, RX (оба) подключаются к TOOL0.

Из программаторов у меня есть только USBAVR, скорее всего не подойдет.

Китайский программатор подключается как раз к TOOL0, RESET, и вроде бы к FLMD0

То есть если у меня удасться запустить китайское ПО (Win 10 не дружит с этим), и удастся найти программатор NEC - то мы в шоколаде, прошиваем BIN (который я не нашел)...


В теории можно попробовать обычным USB-TTL адаптером подцепиться.
RX, TX вместе с подтяжкой к питанию (single line UART) через резистор подцепляем к TOOL0, FLMD0 тоже подтягивается к питанию для переключения в режим прошивки -
FLMD0 Operation Mode
0 -  Normal operation mode
VDD - Flash memory programming mode

Перед стартом прошивки передернуть RESET (или сделать автоматический сброс прямо с USB-TTL адаптера).


nicomunet123

Получилось у меня скачать ПО для прошивки...
Поганый хром и IE ломали архивы и я ничего не понимал...

Все, что скачал - скину в гугл-драйв (тот, что в шапке)...
И да, X8M06 - это NEC. Здесь сомнений теперь нет  B-) (так говорит одна из программ).
А контроллера для экспериментов на X8M06-c у меня пока нет...
Так что есть шансы это прошить... Тем более есть в продаже программаторы для NEC. (или их можно сделать своими руками на базе USB-TTL преобразователя или ардуины)
Может теперь плавный реген, как на E-TWOW будет доступен всем? Ну я на это надеюсь, потому что контроллер на e-twow  очень дорогой
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Удалось наконец-то запустить программу, которая генерирует BIN файл с прошивкой! :-O :dance:
Осталось как-нибудь это все перевести. (естественно, с помощью гугл-транслейта...), но я не знаю как запакавали китайцы Jar файл в EXE. (И еще надеюсь, что китайцы не захардкодили строки)
Так же при запуске может потребоваться Visual C++ redist. 2010
Скачать эту программу можно здесь.

Перевести то, что там написано можно с помощью гугл-транслейта на андроид.

(Переводить начну завтра)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Удалось достать java файл.
Но китайцы - еще те быдлокодеры, они в Mainfest'e поставили после основного класса (какой нужно запускать) точку-запятую и нормальным образом оно открываться не хотело. Убрал ";" -заработало.

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

Кстати, появилось предположение, что это вовсе не файл с прошивкой (весит 1 кб), а файл с настройками, который просто по UART передается. (выяснил одну вещь: у x8m06-c ROM - 1K, так что вполне может быть, что это и прошивка...)

И есть еще один казус: не закрываются списки настроек. Я не знаю в чем проблема: либо в JRE8, либо в Windows 10. (проблема - в Windows 10. В виртуалке на семерке все работает как надо.)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

_claw

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

nicomunet123

[user]_claw[/user], хм...Хорошо. Тогда я сейчас просто скопирую все строки в текстовый файл.
(Отправлю потом в тред и Вам в ЛС.)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

Так есть в сети страница какого-то голландца, который КУ63 раздраконил вплоть до резисторов...
Вот, нашёл: http://www.avdweb.nl/solar-bike/electronics/ku63-motor-controller.html
Там и фотки и даже схема есть...
Купить можно, например, на бмсбаттери:
https://bmsbattery.com/ebike-kit/751-s-ku63-250w15a-6mosfets-controller-ebike-kit.html
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

[user]zap[/user], схема есть. Даже контроллер у меня есть (правда для e-twow с плавным регеном, ломать дороговато будет  :-) ).
Хочется купить такой же контроллер (с такой же платой от XCM), чтобы проблем с прошивкой не было точно.
На али не нашел с такой же платой (про процессор продавцы молчат, говорят секрет-иди-на-фиг). А на Batterybms - там вообще на STM'e (ну так [user]tpc[/user] говорил)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

[user]_claw[/user], можете попросить переводчика перевести эти две PDFки, а то я вообще запутался в этой программе...
Спасибо.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Смог запустит версию 3.0.
А проблема была в том, что я папку config (как-то так называется) не извлек.  :facepalm:
И из-за этого программа вылетала в NPE, т.к. файл не найден. И я это понял, только разобрав софтину  :facepalm: :facepalm:

Скачать программу на (пока на) китайском можно здесь: https://drive.google.com/open?id=0BwLYzaYJowBLZWNRenJxcnBtZnM
А строки-то я еще не перевел... И контроллер на X8M06 не заказал...
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Наконец-то заказал контроллер. Купил у greentime, долго с ним трендел по скайпу...
Контроллер от XCM, так что проблем не должно быть (ну по крайней мере с совместимостью ПО)
Он мне его отправит без корпуса.



Так что до испытаний остался месяц... Или меньше, если почта не будет пинать посылку на каждом почтампе.
А с переводом дела обстоят плохо. Я все никак не могу спокойно скопировать строки (все время где-нибудь отвлекаюсь и все заново)...
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

Похоже на какой-то бинарный дамп.
Формат файла где-то такой:

{количество строк заголовка=18},{длина бинарного дампа в 16-байтных блоках плюс один = 8193}
{18 строк} cw {номер строки},{непонятно что}
{16 строк} {номер строки 1-16},0,{номер строки минус один в шестнадцатиричной системе, 0-F}
{куча блоков по 17 строк следующего формата, каждый описывает 16 байт данных}
0,{номер блока, считая от 1},{адрес 16-байтного блока блока}
{номер байта от 1},{номер блока, считая от 1},{шестнадцатиричное значение байта}

В принципе, можно восстановить эту прошивку, только неясно что с ней дальше делать.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

zap

Лови бинарный образ.
Внутри есть какие-то строки.
Цитировать
No Code!
Com
Auto
Error
OK
EEP-Err
ReadCheckSum
AutoCheck
Code Error or
Over!
No Code
Wait>>>REWRITE E:     P:       E:           OKErase:Program:Verify:Option:Custom:CodeJm:Complete:Error_CodeError_Chiplimit_overProgram_On...Remain:
Можно попробовать поискать дизассемблер для этого контроллера... интересно, IDA его поддерживает.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

[user]zap[/user], Судя по строкам - это прошивка программатора. Вот бы узнать на чем он сделан и собрать подобный.
Я точно знаю, что он построен на базе FTDI.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

FTDI232 это не программируемый микроконтроллер, а обыкновенный USB-UART мост, аналогичный PL2303 и CP2101.
Скорее всего, FTDI там стоит только для соединения с компом, а дальше стоит какой-то микроконтроллер, для которого и предназначена прошивка.
В любом случае, проще найти готовый программатор, если он не слишком дорогой.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

[user]zap[/user], кстати: вот драйвер.
Так что FDTI USB-UART принципиален, иначе просто программа работать не будет.
Вот так вот программаторы называются:
XCM-FP1
JYS-W01_NEC Programmer
JYS-W02_NEC Programmer
http://docin.com.cn/p-81189634.html  - мануал от какого-то программатора... И сайт из умер.
Ну и FlashProg для NEC  у меня отказался просто считывать *.bin файл с настройками

UPD: Походу X8M06 это не UPD79, а UPD78F1211GB-GAF-AX. Не знаю точно, надо будет проверять. Пока скачал ПО для прошивки с сайта Renesas, оно поддерживает программирование через COM порт... А нам это и надо!
https://www.renesas.com/en-eu/doc/products/tool/doc/003/r20ut2906ej0203_rfpcmn.pdf
https://www.renesas.com/en-eu/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html

Перевод сделаю, когда все фичи протестирую: так будет проще.
Ну и вероятность того, что все заработает без оригинального XCM программатора очень мала. (Скорее всего придется собирать такой же программатор. Прошивка есть, осталось найти для чего она, а это уже огого как сложно)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

А вот здесь:
https://www.renesas.com/en-eu/search/keyword-search.html#q=r20ut0857ej&genre=document
есть пдфка со схемой простейшего последовательного "программатора".
По сути, никакого "программатора" нет, можно обойтись любым UART-RS232TTL конвертером, например теми, которые используются для прошивки Инфинеонов.
Для прошивки FLMD0 соединяют на землю, и инвертированный RTS на RESET, ну и RX и TX соответственно между собой.
Единственное, что инвертор на RTS портит всю малину, но можно обойтись одним транзистором и резистором.
У Вас есть USB-UART конвертер? Они на ебэе за копейки продаются.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

[user]zap[/user], есть ардуинка (с FTDI). Можно вытащить атмегу и использовать ее как USB-UART.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

Зачем такие сложности, просто вытащить RX/TX наружу.
А вообще, вот.
Правда, непонятно нужен ли RESET. На третьем варианте нарисовано без ресета, но зато какие-то непонятные MD0 и MD1.
Можно взять USB-UART с выведенным RTS/CTS, такие тоже есть, и добавить инвертор.

Можно брать на любом чипе, они все в винде как ком-порт определяются.
Меньше всего геммора с CP2101, PL2303 надо драйвер старой версии искать ибо чип - китайский клон, а производитель с ними борется.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

peat

У FTDI232 есть интересная фитча. У него можно прогать VID PID под себя.
По заранее запрганому VID  программа может отыскать номер СОМ порта через реестр.
Я в своих приложениях не даю выбора порта и прога делает это автоматом только приналичии моего FT232 . Чужие клоны и шнурки от мобильников работать не будут. Если в софте нет выбора СОМ порта, скорее всего так и сделано.



Цитата: zap от 09 Авг. 2016 в 03:19
А вот здесь:
https://www.renesas.com/en-eu/search/keyword-search.html#q=r20ut0857ej&genre=document
есть пдфка со схемой простейшего последовательного "программатора".
По сути, никакого "программатора" нет, можно обойтись любым UART-RS232TTL конвертером, например теми, которые используются для прошивки Инфинеонов.
Для прошивки FLMD0 соединяют на землю, и инвертированный RTS на RESET, ну и RX и TX соответственно между собой.
Единственное, что инвертор на RTS портит всю малину, но можно обойтись одним транзистором и резистором.
У Вас есть USB-UART конвертер? Они на ебэе за копейки продаются.

nicomunet123

[user]peat[/user], А в китайском софте и нет выбора.
CP2102 вроде бы тоже умеет менять VID и PID  (http://we.easyelectronics.ru/electro-and-pc/cp2102-preobrazovatel-usb-uart-za-45-rubley.html)
Но вот что китайская программа отсылает в программатор - не ясно.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

zap

Софтина для прошивки скорее всего позволяет указать COM порт.
Потому что она умеет шить даже через обычный COM порт, только тогда надо схему лепить с преобразованием уровней RS232 -> TTL.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

nicomunet123

[user]zap[/user], в китайской программе (для программатора) выбора нет, она точно ищет COM по VID/PID.
А вот нековский прошивальщик может спокойно прошивать по COM. Только ему нужен не BIN, а HEX и еще ему нужны параметры микроконтроллера, который будут прошивать.
А у китайцев это все сделано либо в программе, либо в программаторе. (прошивка программатора есть, но надо было бы и декомпилировать программу для программатора)

Как получу USB-UART и контроллер - буду сначала пробовать все делать китайскими программами, только потом пытаться это все сделать с помощью нековского ПО.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Пытаюсь понять, что делает вот эта вот программа ( http://pan.baidu.com/s/1qWDvYyC ) и не понимаю:
раньше я думал, что это просто программа для скидывания прошивки в программатор...
А оказалось она может спрашивать логин/пароль. Зачем-то еще есть TClientSocket.... Т.е. она зачем-то в инет выходит. (за апдейтами? за прошивкой МК...)

Существует ли эмулятор FDTI устройства? Просто очень бы тут пригодился!
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

peat

Цитата: nicomunet123 от 12 Авг. 2016 в 14:06
Пытаюсь понять, что делает вот эта вот программа ( http://pan.baidu.com/s/1qWDvYyC ) и не понимаю:
раньше я думал, что это просто программа для скидывания прошивки в программатор...
А оказалось она может спрашивать логин/пароль. Зачем-то еще есть TClientSocket.... Т.е. она зачем-то в инет выходит. (за апдейтами? за прошивкой МК...)

Существует ли эмулятор FDTI устройства? Просто очень бы тут пригодился!

На FTDI можно сварганить самому переходник и зашить его VID/PID. В реестре надо смотреть что прописано в конфиге этого девайза подключив оригинал  и тоже самое запрогать в свой чип. Тогда софт начнет видеть ваш чип как свой. Единственное может быть то что на этих микрухах делают защиту железа и софта. Там есть область памяти для ключа который уникален для каждого чипа FTDI. Если этот ключ прописан в софте , то ничего не выйдет. Но не думаю что китайцы будут прописывать в своих софтах каждый прогоамматор.

nicomunet123

[user]peat[/user], китайцы дали к программе вот такие вот драйвера
Вот ftdibus.inf
; FTDIBUS.INF
; Copyright (c) 2000-2009 FTDI Ltd.
;
; USB serial converter driver installation for Windows 2000, XP, Server 2003, Vista, Server 2008 (x86 and x64).
;
; Modify: Tsinming
; Email: elohimlake@yahoo.com.cn

[Version]
Signature="$Windows NT$"
DriverPackageType=PlugAndPlay
DriverPackageDisplayName=%DESC%
Class=USB
ClassGUID={36fc9e60-c465-11cf-8056-444553540000}
Provider=%FTDI%
CatalogFile=ftdibus.cat
DriverVer=04/01/2010,2.04.16

[SourceDisksNames]
1=%DriversDisk%,,,

[SourceDisksFiles]
ftdibus.sys = 1,i386
ftbusui.dll = 1,i386
ftd2xx.dll = 1,i386
FTLang.Dll = 1,i386

[SourceDisksFiles.amd64]
ftdibus.sys = 1,amd64
ftbusui.dll = 1,amd64
ftd2xx64.dll = 1,amd64
ftd2xx.dll = 1,i386
FTLang.Dll = 1,amd64

[DestinationDirs]
FtdiBus.NT.Copy = 10,system32\drivers
FtdiBus.NT.Copy2 = 10,system32
FtdiBus.NTamd64.Copy = 10,system32\drivers
FtdiBus.NTamd64.Copy2 = 10,system32
FtdiBus.NTamd64.Copy3 = 10,syswow64


[Manufacturer]
%Ftdi%=FtdiHw,NTamd64

[FtdiHw]
%USB\VID_8516&PID_2911.DeviceDesc%=FtdiBus.NT,USB\VID_8516&PID_2911
%USB\VID_1983&PID_0528.DeviceDesc%=FtdiBus.NT,USB\VID_1983&PID_0528
%USB\VID_1983&PID_0416.DeviceDesc%=FtdiBus.NT,USB\VID_1983&PID_0416
%USB\VID_0403&PID_6001.DeviceDesc%=FtdiBus.NT,USB\VID_0403&PID_6001

[FtdiHw.NTamd64]
%USB\VID_8516&PID_2911.DeviceDesc%=FtdiBus.NTamd64,USB\VID_8516&PID_2911
%USB\VID_1983&PID_0528.DeviceDesc%=FtdiBus.NTamd64,USB\VID_1983&PID_0528
%USB\VID_1983&PID_0416.DeviceDesc%=FtdiBus.NTamd64,USB\VID_1983&PID_0416
%USB\VID_0403&PID_6001.DeviceDesc%=FtdiBus.NTamd64,USB\VID_0403&PID_6001

[ControlFlags]
ExcludeFromSelect=*

[FtdiBus.NT]
CopyFiles=FtdiBus.NT.Copy,FtdiBus.NT.Copy2
AddReg=FtdiBus.NT.AddReg

[FtdiBus.NTamd64]
CopyFiles=FtdiBus.NTamd64.Copy,FtdiBus.NTamd64.Copy2,FtdiBus.NTamd64.Copy3
AddReg=FtdiBus.NT.AddReg

[FtdiBus.NT.Services]
AddService = FTDIBUS, 0x00000002, FtdiBus.NT.AddService

[FtdiBus.NTamd64.Services]
AddService = FTDIBUS, 0x00000002, FtdiBus.NT.AddService

[FtdiBus.NT.AddService]
DisplayName = %SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\ftdibus.sys
LoadOrderGroup = Base
AddReg = FtdiBus.NT.AddService.AddReg

[FtdiBus.NT.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,ftdibus.sys
HKR,,EnumPropPages32,,"ftbusui.dll,FTBUSUIPropPageProvider"

[FtdiBus.NT.AddService.AddReg]
;HKR,Parameters,"LocIds",1,31,00,00,00,32,00,00,00,00
;HKR,Parameters,"RetryResetCount",0x10001,50


[FtdiBus.NT.Copy]
ftdibus.sys

[FtdiBus.NT.Copy2]
ftbusui.dll
ftd2xx.dll
FTLang.dll

[FtdiBus.NTamd64.Copy]
ftdibus.sys

[FtdiBus.NTamd64.Copy2]
ftbusui.dll
ftd2xx.dll,ftd2xx64.dll
FTLang.dll

[FtdiBus.NTamd64.Copy3]
ftd2xx.dll

[Strings]
Ftdi="Tsinming"
DESC="CDM Driver Package"
DriversDisk="FTDI USB Drivers Disk"
USB\VID_8516&PID_2911.DeviceDesc="XCM-FP1"
USB\VID_1983&PID_0528.DeviceDesc="JYS-W01_NEC Programmer"
USB\VID_1983&PID_0416.DeviceDesc="JYS-W02_NEC Programmer"
USB\VID_0403&PID_6001.DeviceDesc="USB Serial Converter"
SvcDesc="USB Serial Converter Driver"
ClassName="USB"

Соответственно у программаторов должны быть вот такие вот VID/PID
(VID_8516&PID_2911 или VID_1983&PID_0528 или VID_1983&PID_0416)

Цитата: peat от 12 Авг. 2016 в 21:57
Там есть область памяти для ключа который уникален для каждого чипа FTDI. Если этот ключ прописан в софте , то ничего не выйдет. Но не думаю что китайцы будут прописывать в своих софтах каждый прогоамматор.

Я надеюсь что этого не будет требовать... А пока у Apple есть чему поучиться у этих китайцев. (Я про DRM)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

tehnik


nicomunet123

Худшее предположение подтвердилось: программе нужен серийник чипа. Программа тупо не реагирует на подключенный FTDI (в моем случае это был VAG-COM шнурок  :-) ). При этом VID/PID менял в MProg'e.

Так что декопилировать надо этот делфишкод. И еще я думаю, что оно еще на сайте сверяет серийник (кстати: а что там на наклеичке на контроллере, а?).

Смешно получается:
С английского на китайский слово копирайт не переводится... Однако с китайского на английский очень даже переводится, свое с------ не дадут. Упс, нарушаем правила форума.
Apple точно может поучиться у XCM.  :-D

Завтра буду пробовать с серийником играться и разбирать китайский код.

[user]tehnik[/user],  Огромное Вам спасибо. Я теперь понял, что прошивка МК берется в интернете (так вот зачем там сокет был) и к нему присобачиваются настройки (*.bin файл, который генерирует программа на Java).
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

peat

Китайцы сейчас шибко продвинутые стали в плане защит. Это борьба за внутренний рынок и борьба с клонами. Как результат прошивок у них не выпросить.
Была история с Келли где прямо в бинарнике скомпилированы и вшиты калибровочныеиконстанты для каждого контроллера. Они там уникальны для каждойиплаты. Если прошить чужой прошивкой тотслетает шунт. Выпросить у келли мою персональную прошивку не удалось не смотря на то что все было куплено легально...

---
Потхорошему нужно искать эмулятор ftdi чипа на уровне драйвера чтобы по обрашению к чипу драйвер подставлял ответку с вашим серийником. Или это делать на уровне ответа от сервака. Вот этот вариант более реализуем. Не думаю что в теле программы зашиты все серийники.
Или сломать сам код который обращается к чипу с проверкой серийника. Толкнуть проге левую dll с этой функцией, если там именно так сделано.

Еще я бы не спешилтс выводами на счет запроса серийника. Нужно собрать свой usb 2 com на оригинальном ftdi и зашить ему пид вид...На рынке очень много подделок этих чипов и они не обязаны прошиваться мпрогом.
Далее перепоставить драйвера , заранее убедившись что следов старого драйвера нет.
После того как втыкаем запргонаный свой чип , винда полезет ставить дрова из инета не смотря на то  что vid будет ваш. Винде нужно подсунуть китайские драйвера. После их установки должен появится девайз в списке устройств под именем которое прописано в китайском inf файле с дровами.
Далее лезем в реестр и смотрим какой номер сом порта винда присвоила вашему чипу. Желательно чтобы номер был в пределах 4 порта. А лучше 1.
Бывает что софт написан на какомнить старом дерьме или использовались древние компоненты которые дальше 4 сом порта не видят...


nicomunet123

Занялся дизассемблингом (без знания ассемблера, методом тыка  :-))
Пока только достал пароль от архива с прошивкой программатора (который я как-то извлек без пароля): dycmcu83310926
Зачем он нужен - не знаю, но он подошел к архиву!
Спойлер
А вообще это позор: сами украли у NECа контроллер, так еще теперь ставят какие-то защиты от копирования. Вообще это как-то не по поняниям.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

peat

ЦитироватьА вообще это позор: сами украли у NECа контроллер, так еще теперь ставят какие-то защиты от копирования. Вообще это как-то не по поняниям.

Тут все просто. Чтобы доказать факт воровства прошивки или кода или его части необходимо продемонстрировать собственно оригинальный код и сравнить его с украденным.
Делает это заявитель. Чтобы сравнить , необходимо заполучить ворованное. Чтобы заявитель заполучил ворованный код и доказал факт воровства  , требуется взломать запаролленый софт. Любая декомпиляция чужого кода даже с целью выявления паролей является нарушением авторских прав разработчика. Получается заявитель сам нарушает авторские права чтобы доказать что его код находится в теле запароленной чужой  программы.
Парол в данном случае - некая защита от владельца кода или программы.
Примерно как-то так.

nicomunet123

Справиться с программой, написанной на Delphi - не смог, ассемблер мне еще не по зубам.  (тыц)
Но я нашел другую программу (тыц), написанную на C#, а как мы знаем, C# декомпилируется вплоть до названий переменных...

Так же я заметил, что обе программы должны выходить в интернет sj.xcmmcu.com (судя по конфигам), и они вроде бы должны оттуда качать прошивку контроллера без настроек. Но это пока предположение только.

P.S. Я мог перепутать программы. Та, что с глобусом - на паскале прошивальшик,  та, что с монитором - на сишарпе скачиватель?
Но сегодня сил заниматься этим уже совсем нет
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

horrorlv


nicomunet123

[user]horrorlv[/user], дык отсюда я все программы и скачал.
(Сайт производителя xcmmcu.com пересылает как раз сюда)

А проблема в том, что прошивку без программатора не скачать. (То есть даже прошить нельзя будет).
А программатор для программирования NEC (XCM) вроде не нужен. (там нужен только USB-UART + простой инвертер на транзисторе для ресета)
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

horrorlv

Тогда USB стик-ом пробовать или программатор в Китае может найти.

С Лео я так понял ты уже говорил на Али.
Можешь с Кевином попробовать пообщаться, он клепает свои моторы/контроллеры zlmotor@foxmail.com

nicomunet123

[user]horrorlv[/user], от Лео я хотел получить фотки контроллера, не более. Из-за глюка на али он долго не понимал, что фотки не доходят. Кое-как в скайпе договорились...
Про прошивку я его не спрашивал (на форуме endless-sphere уже половина пользователей его спрашивала, он не отвечал. А мне контроллер нужен был.)

Кстати, а кто такой Кевин?

А так да, прошивать буду USB-UARTом. Но если вдруг найду программатор - проблем уже меньше будет
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

horrorlv


nicomunet123

Как получу контроллер (а он уже в РФ) - начну опыты с прошивкой. И перевод программ.
Просто нет смысла наугад тыкать.

И да, кто-то тут писал, что на Tao видели программатор очень похожий на XCMовский, можете ссылку дать?
(Я понимаю, что NEC можно прошить с помощью USB-TTL, но китайские программы именно требуют программатор. А как эти программы работают - не понял)

И да, контроллер теперь избавился от LM317, теперь там стоит какая-та DC-DC.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Я немного познал дзен...
Все, что я пытался переводить предназначено для плат контроллера с процессором X8M06-K (там еще больше портов).
А у меня-то X8M06-C.

Что делать - не ясно. На endless sphere проскакивала другая программа, попробую с ней что-нибудь сделать.
Ну или снять дамп (если ридонли не стоит). Не знаю...

Но контроллер действительно с импульсным преобразователем! Наконец-то ничего греться не будет!
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

nicomunet123

Исследование остановилось...
Я не могу запустить программу (как мне сказали на Endless-Sphere) для X8M06-C.
https://drive.google.com/open?id=0BwLYzaYJowBLalpSeTl4cTRtWEE

Вообще никак. Попробуйте запустить. Я просто уже нееьу что я делаю не так
Так же я не понимаю, что делать дальше...

Да и в самокат лезть не хочется. Совсем. Уже просто надоело, боюсь еще что-нибудь сломать.
А провода (розетки) для МК у меня нет. (запасная батарея есть)
Пока прогресса никакого нет. Извините.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

tpc

Почитал весь тред, но так и не понял самого главного.

Как вы собираетесь с помощью всех этих телодвижений заполучить E-TWOW-скую прошивку ?
Залить её думаю не особо сложно просто внимательно почитав документацию к контроллеру.
Там двунаправленный последовательный порт на одном выводе TX и RX. Как правильно пишут,
можно, наверное просто подключить адаптер USB-UART. Нужно только знать бодрейт.
Вопрос в другом. Где вы планируете найти прошивку ? Надеетесть, что она чудесным образом
скачается из интернет ? На сайтах ренесанса и xmmcu есть даже документация как писать прошивки
и исходные коды референсной реализации. Из этого они секрет не делают. Ну дык это не
прошивка E-TWOW. E-TWOW, судя по всему, прошивку делают сами, т.к. у них там на плате
подтягивающий резистор нештатный, поведение мотора меняется от версии к версии контроллера
при том же железе.

И таки да, думаю, что к бабке не ходи, security code там установлен.
Хотя, на самых старых контроллерах я бы всё равно проверил.

nicomunet123

Цитата: tpc от 02 Окт. 2016 в 23:01
Как вы собираетесь с помощью всех этих телодвижений заполучить E-TWOW-скую прошивку ?
Пока никак. Надо попробовать прошить подопытный контроллер любой измененной прошивкой
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

tpc

Цитата: nicomunet123 от 03 Окт. 2016 в 08:20
Пока никак. Надо попробовать прошить подопытный контроллер любой измененной прошивкой
Тогда уже, вообще, прошить любой прошивкой. Осталось только найти прошивку под этот процессор.
А модифицировать уже дело не столь сложное, а если есть исходники, то вообще нет проблем.

zap

В программе для прошивки контроллера прошивка уже должна быть. Он её патчит согласно выбранным параметрам и заливает в контроллер.
Ну или генерирует файл для прошивки обычной программой прошивки.
Так, по крайней мере, я понимаю.
С уважением,
Андрей

Поражаю масштабностью некопмпетентность (ц) из лички

peat

Не может прошивка для блдц весить 1кб для  задач электротранспорта.  Там обработчиков только 4 вида. Это и шунт обработать и ручку газа и термодатчик и еще реген.. Пишут ее не на асме точно. Компиллятор раздувает код минимум на 8кб. То что 1кб это скорее всего дамп одной из областей или страниц пзу с настройками из которых реально задействованы несколько десятков байт.
Сейчас уже никто не оптимизирует размер кода.  Современные контроллеры это сотни кб пространства.

nicomunet123

[user]peat[/user], да точно больше 1 кб, ибо тот файл наполовину просто пуст. Это часть EEPROMа.
И у X8M06-C ПЗУ на 16 кб. Это намекает, что это не прошивка.
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

peat

Есть ли достоверная инфа что эти контполлеры шьются вообще ? Слишком специализированный контроллер.  Много вероятно что шьется он на заводе референс прошивкой типа для всех и однократно. ..а все режииы выбираются софтом через uart посредством общения с бут лоадером скажем как у финика ..в течении 1сек после подачи питания
. Надо копать в этом направлении.
Я нашел референс прошивку для финика..точнее исходники на сях но там нет обработки портов и ничего такого что отвечает за саии алгоритмы работы фаз.  Только описание заголовков и как будто это интерфейс для других сред разработок. Только одни хейдеры..

tpc

Цитата: peat от 06 Окт. 2016 в 01:38
Есть ли достоверная инфа что эти контполлеры шьются вообще ? Слишком специализированный контроллер.  Много вероятно что шьется он на заводе референс прошивкой типа для всех и однократно. ..а все режииы выбираются софтом через uart посредством общения с бут лоадером скажем как у финика ..в течении 1сек после подачи питания
Да не, UART я щупал, он не подаёт признаков жизни вообще.
Потом я почитал как программируется этот контроллер и понял, что UART там просто не при делах.
Заливается прошивка сразу с параметрами. Ну или параметры отдельно лежать во флеш-памяти,
но тоже заливаются инциркут-программатором. А чип вполне общего назначения. Это китайцы
сделали клон филипса, от него есть даташит, все ноги совпадают, разводка платы совпадает,
программатор подойдёт.

tpc

Распиновка китайского процессора X8M06-C один в один совпадает с нековским UPD79F9211.




Раскладка памяти:


Программирование Flash:




По поводу защиты:


Корпус:


Расположение элементов на плате:



Дальше, что касается программирования именно этого китайского X8M06-C.

Сначала параметры настраиваются в этой утилите:


Потом вот этой утилью закачиваются в программатор:


В вот этот программатор:


А потом с помощью такого разъема программатор подключается к ISP-точкам на плате
и красной кнопкой прошивка чудесно заливается в готовую плату. Даже комп не нужен.


Steel RAT

Я может чего не понимаю...

Но, не продуктивней ли забить готовую программу из этого документа?
https://www.renesas.com/en-eu/doc/DocumentServer/025/U18774EJ1V0AN00.pdf

Там и алгоритм описан и блок схема нарисована.
Можно будет все константы отрегулировать или дописать код по мере надобности.

Массовая культура - синоним низкого качества.
Люди... они какие-то странные. По одному и тому же поводу каждый думает что-то своё.

tpc

Цитата: Steel RAT от 11 Окт. 2016 в 13:55
Я может чего не понимаю...

Но, не продуктивней ли забить готовую программу из этого документа?
https://www.renesas.com/en-eu/doc/DocumentServer/025/U18774EJ1V0AN00.pdf
Вот-вот. Мне тоже кажется, что это наиболее перспективный путь.
Наладить компилятор и заливку прошивки в процессор, взять референсный код по ссылке выше
(там, кстати, вроде и в других документах попадалось) и дописывать его под свои нужды.
Благо, кроме управления мотором, нам никаких доп функций особо не нужно.

Есть вот ещё интересный документ:
https://www.renesas.com/en-eu/doc/DocumentServer/025/U18913EJ1V0AN00.pdf

Там тоже есть пример реализации.

nicomunet123

Еще раз попытаюсь связаться с китайцами из XCM, авось ответят =)

А вообще они выпустили новый контроллер. Там теперь проц на 120 мгц. А разводка почти такая же, как у LA-1.2
E-TWOW Eco -> Kugoo -> Ninebot ES1 -> Ninebot ES-Trash

Thunder_blade

Тоже попался 12 фет контроллер с данными чипом, так и не появились возможности их переделывать?

Vini007

Приветствую!
тоже прикупил контроллер на 12фет с чипом x8m06-c,мосфеты-80NF70.
Хотел бы поменять параметры програмно,что б не пилять шунт))))
спасибо.
Инфинеоны рулят))))
могу скинуть все фото контактов на плате.
Evel GT1000 48-72v 1000w;Infineon 12Fet IRFB4110(312-CellMan);Li-ion18650 36v10Ah(сам спаял);Speed(120%)-40km/h.

krazy_killer

так и что . к чему пришли? удалось выудить где добыть как прошить (или хотя бы прошитый купить X8M06-C) ?
суть моей беды в том что походу он помер изза корявости подключения контроллера мотора bbs02 к компу (48в вольт видно попало туда куда не должно вырвавшись из заряженного конденсатора)
Методичка: Технические рекомендации по оборудованию велосипеда кареточным мотором:
мои методические рекомендации по оснащению велосипеда кареточным мотором

selevo

пришли к тому  то нех заниматься этой херней, при таких ценах на контроллеры.
Родовые поместья - национальная идея России.

krazy_killer

понятно. жаль. на вело кареточные моторы на базе этого чиппа 7000р ценой и легко убиваемым процом  думаю смысл бы был . но у меня такое асилить  знаний не хватит.
а на е6ае за 300р 5 штук продают.
ток я так и не понял . можно ли слить прошивку с живого или оно залочено. да и чем шить тоже пока не выгуглил
Методичка: Технические рекомендации по оборудованию велосипеда кареточным мотором:
мои методические рекомендации по оснащению велосипеда кареточным мотором

4итатель


igor199814