Jump to content

Прошивка тестера АКБ KW600 на STM32


BatrakovSV
 Share

Recommended Posts

Здравствуйте.

У меня есть KW600 на STM32 F103 C8 T6 + модуль памяти W25Q64  

Штатное обновление прошивки осуществляется через программу BTLink.

KW600 подключается через USB и в Windows появляется COM-порт, программа сама скачивает 2 файла (KW600_51.rom и KW600_52.fls) и заливает через контакты PA11 и PA12.

https://cloud.mail.ru/public/UHCd/kjaPFKXCS

Вот эти файлы cloud.mail.ru/public/sion/FqVSYK6Ud

Купил программатор ST-LINK V2 и подключился через SWCLK SWDIO, через программу STM32CubeProgrammer и попытался скачать прошивку с тестера.

Не получилось, так как данные залочены.

Далее я снял защиту от чтения (RDP) и программа естественно стерла память.

В итоге KW600 кирпич - не включается и в Windows через USB как COM не определяется.

Через ST-LINK виден и считывается, т.е. что-то заливать можно.

Можно ли как-то залить KW600_51.rom и KW600_52.fls?

Или как-то стратануть KW600 чтобы он определился в Windows через USB как COM?

Если нет, значит будет уроком.

P.S.: Если кто-то живет в ЕКБ, то смогу подарить этот KW600 на опыты или на запчасти.

Будет мне все уроком!!!

361894739_2021-11-1608_48_58.thumb.JPG.038a0d8111bdeccc85e9296e3bfe7414.JPG

 

IMG_20190908_225409.thumb.jpg.ef30ad641999db14cde6d7562c83d94f.jpg

Edited by BatrakovSV
Link to comment
Share on other sites

ну и еще вопрос - а нахрена ты прошу то затер? Штатные средства обновления не устроили чтоли?

Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Link to comment
Share on other sites

  • 3 weeks later...

LIR-20 – модуль резервирования питания от MORNSUN
Компания MORNSUN расширила линейку продукции, монтируемой на DIN-рейку, выпустив модуль резервирования питания LIR-20 с максимальным током до 20 А на канал. Модуль можно использовать на шинах с напряжением 24 или 48 В (полный диапазон напряжения 22…60 В). Данный модуль применяется в системах, где даже выход из строя источника питания (ИП) не должен привести к потере напряжения. К модулю резервирования подключаются два источника питания, причем один из них может быть бесперебойным (ИБП; UPS), и нагрузка.

Читать подробнее >>

LED-драйверы MEAN WELL – выбор больше, стоимость ниже

Компэл расширил и существенно пополнил склад LED-драйверами компании MEAN WELL, одновременно снизив цену на них. В настоящий момент на складе представлена широкая линейка продукции для наружного (семейства HLG, ELG, XLG, LPC, LPV), и для внутреннего (APC, LCM, SLD, APV) освещения.

Имеется большой выбор моделей с различными режимами стабилизации выходных параметров. Кроме того, есть в наличии и линейка DC/DC-драйверов, как понижающих (семейство LDD), так и повышающих (семейство LDH).

Подробнее>>

Популярные модели литиевых батареек FANSO EVE Energy готовы к отправке
На складе КОМПЭЛ уже готовы к поставке одни из самых востребованных литиевых батареек типов ER и CR производства FANSO EVE Energy – одного из мировых лидеров на рынке первичных литиевых элементов питания.
Данные источники тока получили широкое применение в различных областях, будь то системы безопасности, приборы учета или мелкая бытовая техника. 

Подробнее о применениях>>
 

Не стоит записывать KW600_51.rom, это не образ памяти процессора. Загрузить ее может только BTLink.

Если посмотреть файл KW600_51.rom, то в нем в первой строке первые 4 байта - стек, вторые 4 байта адрес сброса. Эти адреса грузятся соответственно в регистры MSP и РС. Оба имеют недопустимые значения. При загрузке недопустимых значений процессор работать не будет.

image.jpg.d0bbbed0b829b83212ce5695a72c0242.jpg

Попробуйте стереть полностью и проверить на чистоту. Ошибка должна исчезнуть. Рекомендуют стирать через загрузчик.

Link to comment
Share on other sites

  • 2 weeks later...

Источники питания MEAN WELL для медицинских устройств на складе Компэл

Компэл расширяет складскую программу по специальным ИП для применения в медицинских приборах и устройствах. Представлены ИП в диапазоне мощности от 5 до 500 Вт, по медицинскому стандарту EN60601-1 с двумя мерами защиты пациента (2хMOPP; тип BF) для устройств, контактирующих с пациентом.  Все эти надежные источники питания могут применяться не только в медицинских устройствах.

Подробнее>>

В 11.12.2021 в 14:55, snn_krs сказал:

Попробуйте стереть полностью и проверить на чистоту. Ошибка должна исчезнуть. Рекомендуют стирать через загрузчик.

Вот это не понял.

Я пробовал заливать прошивку "мигающий" светодиод, процессор запускался.

 

Т.е. мне надо как-то перевести STM32F103C8T6 в DFU-mode чтобы ПК хоть что-то увидел и может быть тогда BTLink зальет прошивку?

 

Edited by BatrakovSV
Link to comment
Share on other sites

В STM32F103C8 штатный загрузчик грузит только через USART1 РА9, РА10. В KW600 похоже зашит свой загрузчик и BTLink грузит программы через него. Восстановить я думаю можно только если найдете старую прошивку (есть спецы скачивают с залоченых чипов), запишите любым загрузчиком, а потом обновите через BTLink.

Link to comment
Share on other sites

8 часов назад, snn_krs сказал:

В STM32F103C8 штатный загрузчик грузит только через USART1 РА9, РА10. В KW600 похоже зашит свой загрузчик и BTLink грузит программы через него. Восстановить я думаю можно только если найдете старую прошивку (есть спецы скачивают с залоченых чипов), запишите любым загрузчиком, а потом обновите через BTLink.

А можно ли написать загрузчик, который будет позволять подключать девайс через USB PA11 и PA12 чтобы ПК видел устройство как COM?

KW600 с BTLink работает так.

При наличии GND на PC13/PC14/PC13/PB2 BTLink может обновлять устройство.

Т.е., то что KW600 при подключении через USB, сигнальны контакты которого приходят именно на PA11 и PA12 и ПК работает с KW600 как COM-портом при отсутствии в KW600 UART-чипа - это и есть уникальный кастомный загрузчик, который и был утерен.

 

Т.е. разработчики смогли программно реализовать UART-протокол?

 

А можно написать загрузчик чтобы начиналась работа программы KW600_51.rom например с 0х08000401?

 

 

Edited by BatrakovSV
Link to comment
Share on other sites

4 hours ago, BatrakovSV said:

А можно ли написать загрузчик, который будет позволять подключать девайс через USB PA11 и PA12 чтобы ПК видел устройство как COM?

Все ST-LINK/V2 сделаны на STM32F103 именно так. ПК видит их как СОМ порт, но загрузить через BTLink KW600_51.rom я думаю не получится. Файл скорее всего закодирован.

Link to comment
Share on other sites

Сейчас при подключении к ПК KW600 никак не определяется.

Залил в KW600 файл generic_boot20_pc13.bin от сюда https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/binaries

Но при подключении к ПК все равно нет никакой реакции.

У Blue Pill на STM32F103C8T6 контакты микро-USB D+ и D-  выходят на PA11/PA12.

Можно залить в KW600 какой-нибудь загрузчик чтобы при подключении к ПК он хоть как-то определялся?

2021-12-22 09.39.43.PNG

Edited by BatrakovSV
Link to comment
Share on other sites

Почему R9 такой большой? Он 1.5к должен быть, иногда 2.2к ставят. Но уж никак не 10к.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Link to comment
Share on other sites

3 часа назад, COKPOWEHEU сказал:

Почему R9 такой большой? Он 1.5к должен быть, иногда 2.2к ставят. Но уж никак не 10к.

Я так понял это типовая схема.

На KW600 - 1,5кОм, а R7/R6 - вообще перемычки стоят.

Link to comment
Share on other sites

Да, схема типовая. Защитных резисторов может не быть, но лучше когда есть. Номинал подтяжки к питанию на вашей плате все же 10к или 1.5к?

10 часов назад, BatrakovSV сказал:

Но при подключении к ПК все равно нет никакой реакции.

А вот это странно. Хоть какая-то реакция будет даже если подключить разъем с резистором от D+ до питания, вообще без контроллера:

Спойлер
# dmesg | tail -n 9
[1426932.074486] usb 1-3: new low-speed USB device number 14 using xhci_hcd
[1426932.074956] usb 1-3: Device not responding to setup address.
[1426932.283055] usb 1-3: Device not responding to setup address.
[1426932.490101] usb 1-3: device not accepting address 14, error -71
[1426932.618605] usb 1-3: new low-speed USB device number 15 using xhci_hcd
[1426932.619028] usb 1-3: Device not responding to setup address.
[1426932.827118] usb 1-3: Device not responding to setup address.
[1426933.034485] usb 1-3: device not accepting address 15, error -71
[1426933.034631] usb usb1-port3: unable to enumerate USB device

В загрузчик-то оно входит? Я не смотрел код того загрузчика, которым вы хотите прошить, но, возможно, у него есть какая-то индикация. А даже если нет, ее несложно прикрутить самостоятельно.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Link to comment
Share on other sites

20 минут назад, COKPOWEHEU сказал:

Да, схема типовая. Защитных резисторов может не быть, но лучше когда есть. Номинал подтяжки к питанию на вашей плате все же 10к или 1.5к?

У меня нет Blue Pill на STM32F103C8T6, у меня только KW600 на STM32F103C8T6.

Резистор 1,5кОм.

20 минут назад, COKPOWEHEU сказал:

В загрузчик-то оно входит? Я не смотрел код того загрузчика, которым вы хотите прошить, но, возможно, у него есть какая-то индикация. А даже если нет, ее несложно прикрутить самостоятельно.

После заливки generic_boot20_pc13.bin, если подключить светодиод к PC13, то он быстро мигает.

20 минут назад, COKPOWEHEU сказал:

А вот это странно. Хоть какая-то реакция будет даже если подключить разъем с резистором от D+ до питания, вообще без контроллера:

Вот это не совсем понял. Я имел ввиду при подключении через микро-USB к USB ПК.

Т.е. в файле generic_boot20_pc13.bin должен быть загрузчик с реализацией виртуального COM-порта для Blue Pill на STM32F103C8T6.

И я надеялся, что ПК хоть что-то покажет...

Edited by BatrakovSV
Link to comment
Share on other sites

1 час назад, BatrakovSV сказал:

Резистор 1,5кОм.

Хорошо.

1 час назад, BatrakovSV сказал:

После заливки generic_boot20_pc13.bin, если подключить светодиод к PC13, то он быстро мигает.

Мне это ни о чем не говорит. Быстро мигает это значит, что в режиме загрузчика?

1 час назад, BatrakovSV сказал:

Вот это не совсем понял. Я имел ввиду при подключении через микро-USB к USB ПК.

Так я же привел именно dmesg при подключении разъема с резистором к ПК.

1 час назад, BatrakovSV сказал:

Т.е. в файле generic_boot20_pc13.bin должен быть загрузчик с реализацией виртуального COM-порта для Blue Pill на STM32F103C8T6.

Если вы залили туда загрузчик, можете попробовать залить прошивку какого-нибудь обычного USB-устройства. Мало ли что могло поломаться в загрузчике. Узнать работает ли USB вообще.

1 час назад, BatrakovSV сказал:

И я надеялся, что ПК хоть что-то покажет...

Это "хоть что-то" вы где смотрите? Я бы начал с dmesg чтобы понять видит ли комп хоть что-то. Потом lsusb - видит ли он устройство как устройство. Либо wireshark - пытается ли устройство хотя бы начать обмен и на каком запросе фейлится.

Если у вас windows, будет сложнее. Хотя wireshark есть и под нее.

Ну и классическая рекомендация: прозвонить все цепи. Мало ли что где могло отвалиться. У меня однажды отвалился контакт внутри smd-резистора.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Link to comment
Share on other sites

1 час назад, COKPOWEHEU сказал:

Мне это ни о чем не говорит. Быстро мигает это значит, что в режиме загрузчика?

В этой прошивке запрограммировано мигание светодиодом на PC13.

 

1 час назад, COKPOWEHEU сказал:

Если вы залили туда загрузчик, можете попробовать залить прошивку какого-нибудь обычного USB-устройства. Мало ли что могло поломаться в загрузчике. Узнать работает ли USB вообще.

А можете выложить какой-нибудь готовый файл для прошивки?

 

1 час назад, COKPOWEHEU сказал:

Это "хоть что-то" вы где смотрите?

В диспетчере устройств.

 

1 час назад, COKPOWEHEU сказал:

Ну и классическая рекомендация: прозвонить все цепи. Мало ли что где могло отвалиться. У меня однажды отвалился контакт внутри smd-резистора.

 

Цепи прозвонил. D+ и D- четко приходят на PA12 и PA11.

976949176_2021-12-2210_18_07.thumb.JPG.9d7c7a54c5fcd297d889dbbe5f68bbb6.JPG

 

Забыл сказать, что экран KW600 перестал включаться после того как прошивка была стерта.

Так и должно быть? Или даже без прошивки экран должен загораться?

Т.е. при подключении к USB экран моргает на 0,01с и гаснет.

 

Edited by BatrakovSV
Link to comment
Share on other sites

2 часа назад, BatrakovSV сказал:

А можете выложить какой-нибудь готовый файл для прошивки?

Выбирайте: https://github.com/COKPOWEHEU/usb

А можно и любой рандомный пример из Куба - лишь бы определялся хоть как-то.

Не помню говорили ли вы, там какой-нибудь UART для отладки выведен? Просто проверять где что сломалось по единственному светодиоду несколько тяжко. И, естественно, есть ли в наличии переходник с UART на комп.

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

2 часа назад, BatrakovSV сказал:

Забыл сказать, что экран KW600 перестал включаться после того как прошивка была стерта.

Так и должно быть? Или даже без прошивки экран должен загораться?

Вполне возможно. Я не знаю что там за экран и как он управляется. Если там была регулировка яркости, она тоже может не включаться без команды. Кстати, что за дисплей? Нет ли на нем маркировки в каком-нибудь труднообъяснимом месте? По скольки проводам управляется?

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Link to comment
Share on other sites

10 часов назад, COKPOWEHEU сказал:

Выбирайте: https://github.com/COKPOWEHEU/usb

А можно и любой рандомный пример из Куба - лишь бы определялся хоть как-то.

Я на macOS не смог установить STM32CubeIDE.

Можете выложить уже готовый файл прошивки в формате bin или hex?

10 часов назад, COKPOWEHEU сказал:

Не помню говорили ли вы, там какой-нибудь UART для отладки выведен? Просто проверять где что сломалось по единственному светодиоду несколько тяжко. И, естественно, есть ли в наличии переходник с UART на комп.

UART USB пока нет.

 

10 часов назад, COKPOWEHEU сказал:

Кстати, что за дисплей? Нет ли на нем маркировки в каком-нибудь труднообъяснимом месте?

Дисплей вот такой jlt24030b-v2.

 

1702568351_2021-12-2219_34_31.png.533892f1db615a5ef56d899fa292f755.png

jlt24030b-v2.gif

Edited by BatrakovSV
Link to comment
Share on other sites

1 час назад, BatrakovSV сказал:

Я на macOS не смог установить STM32CubeIDE.

У меня на виртуалке установлена. Хотя реальной пользы от нее нет: чтобы хоть какой-то код запустился надо едва ли не завязаться узлом. А чтобы разобраться как он работает недостаточно даже этого.

1 час назад, BatrakovSV сказал:

Можете выложить уже готовый файл прошивки в формате bin или hex?

Ну можете попробовать этот. Но если у вас кварц не на 8 МГц, не заработает.

firmware.elf firmware.hex

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Link to comment
Share on other sites

50 минут назад, COKPOWEHEU сказал:

firmware.hex 150 \u043a\u0411 · 0 загрузок

Этот файл загрузил. Кварц на 8МГц.

Микропроцессор запускается, но при подключении к ПК, ноль реакции.

Значит что-то с KW600 не так. Верно?

firmware.hex.jpg

Edited by BatrakovSV
Link to comment
Share on other sites

Ни в системе не отображается, ни диод не мигает?

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Link to comment
Share on other sites

23 минуты назад, COKPOWEHEU сказал:

Ни в системе не отображается, ни диод не мигает?

Светодиод не мигает.

Мигание выведено на ногу PC13?

STM32F103C8T6.png

Edited by BatrakovSV
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...