Там даже фикс есть? Ну патчить можно хоть для прикола?Dron_Gus wrote:Гребанный опенсурс. https://lkml.org/lkml/2012/9/9/192
А там нет возможности проголосовать или как-то ещё их пнуть? Или сказать, что до сих пор проблема?
Там даже фикс есть? Ну патчить можно хоть для прикола?Dron_Gus wrote:Гребанный опенсурс. https://lkml.org/lkml/2012/9/9/192
Code: Select all
static char UNUSED_RAM_SIZE[20100];
static char UNUSED_CCM_SIZE[9500] CCM_OPTIONAL;
Так этот фикс как раз ломает поддержку CDC ACM с отсутствующей Interrupt EP на Control interface. Ну т.е. оно и до этого патча падало (обращение к null-pointer, т.к. не было соответствующей EP), а этим патчем они просто запретили такие устройства (fix такой, блин). Хотя стандартом это не возбраняется:russian wrote:Там даже фикс есть? Ну патчить можно хоть для прикола?Dron_Gus wrote:Гребанный опенсурс. https://lkml.org/lkml/2012/9/9/192
А там нет возможности проголосовать или как-то ещё их пнуть? Или сказать, что до сих пор проблема?
Ну и соответственно:3.4.1 Communication Class Endpoint Requirements
The Communication Class interface requires one endpoint, a management element. It optionally can have an additional endpoint, the notification element. The management element uses the default endpoint for all standard and Communication Class-specific requests. The notification element normally uses an interrupt endpoint.
Code: Select all
[27582.572117] usb 3-3: new full-speed USB device number 14 using xhci_hcd
[27582.702151] usb 3-3: New USB device found, idVendor=0483, idProduct=5740
[27582.702157] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[27582.702160] usb 3-3: Product: ChibiOS/RT Virtual COM Port
[27582.702162] usb 3-3: Manufacturer: STMicroelectronics
[27582.702164] usb 3-3: SerialNumber: 320
[27582.702876] cdc_acm: probe of 3-3:1.0 failed with error -22
[27582.703251] cdc_acm: probe of 3-3:1.2 failed with error -22
puff wrote:о гуру из усб! объясните, а что оно делает? зачем вообще два интерейса на плате? как сейчас в дискавери: один для прошивки, второй для настройки? и вы хотите их в один объединить?
(я везде со своей траблой. терпеливо жду появления кода, который можно будет прошить в дискавери, в надежде на то, что глюк исправится)
Бутлоадер есть штатный через USB. И тула к нему вроде была. Надо только разобраться как этот бутлоадер запустить.andreika wrote:Лично мне нужен и бутлоадер с возможностью обновления прошивки, и мост Консоль-ТюнерСтудио. Если их никто не напишет, это сделаю я.
У кого-то он есть, а у кого-то - нет, как у меня, например. Да и для штатного бутлоадера нужен джампер на Boot0, что неудобно: я не хочу каждый раз вскрывать корпус ЭБУ для обновления прошивки. И вообще, обновлять прошивку хочу по Bluetooth! Кроме того, можно сделать и обновление резервной прошивки с карты памяти. И наконец, свой функционал позволит не только обновлять прошивку, но и управлять конфигурациями (сохранение своего конфига в файл, выбор и загрузка из списка конфигов, сброс дефолтных настроек по выбранному engine_type и т.д.)..Dron_Gus wrote:Бутлоадер есть штатный через USB. И тула к нему вроде была. Надо только разобраться как этот бутлоадер запустить.
В бутлоадер можно попасть и из основной софтины, насколько я помню.andreika wrote:У кого-то он есть, а у кого-то - нет, как у меня, например. Да и для штатного бутлоадера нужен джампер на Boot0, что неудобно: я не хочу каждый раз вскрывать корпус ЭБУ для обновления прошивки. И вообще, обновлять прошивку хочу по Bluetooth! Кроме того, можно сделать и обновление резервной прошивки с карты памяти. И наконец, свой функционал позволит не только обновлять прошивку, но и управлять конфигурациями (сохранение своего конфига в файл, выбор и загрузка из списка конфигов, сброс дефолтных настроек по выбранному engine_type и т.д.)..
afaik, можно разве что плясать с бубном, повесив на одну из ножек внешний транзистор с конденсатором, которые дёрнут ножку BOOT0 вниз, пока проц будет программно резетиться - и тогда, да, включится бутлоадер... Как бы то ни было, штатный бутлоадер доступен не для всех, т.к. конфигурации UART на разных платах разные. Или на плате есть только один USB-порт, который уже используется Консолью, и не хочется каждый раз отключать консоль и запускать DFU-программу для работы со штатным бутлоадером, и потом обратно запускать консоль.Dron_Gus wrote:В бутлоадер можно попасть и из основной софтины, насколько я помню.
Совершенно верно. Но этот функционал тоже нужно написать, т.к. его до сих пор нет - именно об этом я пытался рассказать, основываясь на опыте SECU-3. Для юзера нет разницы, что обновить конфигурацию, или обновить прошивку. Это должны быть, условно говоря, "две соседние кнопки", а о деталях реализации (где сидит код доступа к флеш-памяти) юзер не подозревает.Dron_Gus wrote:А вот работа с конфигурациями это не функционал для загрузчика. Обычно этим занимается основная прошивка.
Еще раз. В бутлоадер можно "прыгнуть" из основной прошивкиandreika wrote:afaik, можно разве что плясать с бубном, повесив на одну из ножек внешний транзистор с конденсатором, которые дёрнут ножку BOOT0 вниз, пока проц будет программно резетиться - и тогда, да, включится бутлоадер...Dron_Gus wrote:В бутлоадер можно попасть и из основной софтины, насколько я помню.Совершенно верно. Но этот функционал тоже нужно написать, т.к. его до сих пор нет - именно об этом я пытался рассказать, основываясь на опыте SECU-3. Для юзера нет разницы, что обновить конфигурацию, или обновить прошивку...Dron_Gus wrote:А вот работа с конфигурациями это не функционал для загрузчика. Обычно этим занимается основная прошивка.
Code: Select all
__ASM volatile ("movs r3, #0\nldr r3, [r3, #0]\nMSR msp, r3\n" : : : "r3", "sp");
((void (*)(void)) *((uint32_t*) 0x00000004))();
Это будет только если используется встроенный в проц USB. А если через единственный UART-драйвер, то для компа USB по-прежнему виден как USB-COM мост. И COM-порт не отвалится, и даже соединение не будет разорвано. И Консоль будет продолжать долбить туда запросы, пока её не срубить (т.е. закрыть приложение). И если ещё и бутлоадер не видит этот UART, то никакие припарки не помогут. Только свой бутлоадер, встроенный в бинарный протокол псевдо-TS.Dron_Gus wrote:Ну да устройство отвалится, появится как DFU, обновиться и снова появится.
Не представляю, откуда взялись подобные домыслы.Dron_Gus wrote:А вот продолжать исполнять прошивку после обновления и без сброса...
В варианте с внешним преобразователе usb-serial - да. Но мне такой вариант не очень нравится. Зачем в проце аж два юсби.andreika wrote:Это будет только если используется встроенный в проц USB. А если через единственный UART-драйвер, то для компа USB по-прежнему виден как USB-COM мост. И COM-порт не отвалится, и даже соединение не будет разорвано. И Консоль будет продолжать долбить туда запросы, пока её не срубить (т.е. закрыть приложение). И если ещё и бутлоадер не видит этот UART, то никакие припарки не помогут. Только свой бутлоадер, встроенный в бинарный протокол псевдо-TS.
Не так интерпретировал фразу про выполнение из рам.andreika wrote: Не представляю, откуда взялись подобные домыслы.
Да, как вариант. Поскольку мы с @darxfame этот вариант уже обсуждали в частной беседе, я кратко напишу здесь некоторые наши соображения - может, кому-то будет интересно...Dron_Gus wrote:По мне самый правильный способ это по любому комункационному интерфейсу получить прошивку, положить ее на какое-то внешнее хранилище (SD, SPI flash), выставить флаг и после перезагрузки обновить бутлоадером прошивку уже в самом проце. Но это опять же требует написания своего кода.
Полностью свами согласин ... но мне кажется russiandarxfame wrote:А может составить хотя бы краткую инструкцию на русском где что в Tuner Studio находится и как настраивается? Потому как некоторые вещи не совсем понятны, то с чем я не сталкивалсяrussian wrote:
Понимаете, если бы я владел английским и еще понимал что там в студии написано))) перевести я конечно могу, но я еще не понимаю логику, что и как работает, а это сможет рассказать только russianAbricos wrote:Полностью свами согласин ... но мне кажется russiandarxfame wrote:А может составить хотя бы краткую инструкцию на русском где что в Tuner Studio находится и как настраивается? Потому как некоторые вещи не совсем понятны, то с чем я не сталкивалсяrussian wrote:
Пргграмист а не настроишик и тока учится и также как и я механик но не программист ...
А может у вас это получится "darxfame" Ну или начните а там уже скопом будем улучшать ???
Это придется спрашивать все что есть в ТС, начиная от тоготкак работает и как настраивать ххrussian wrote:С радостью отвечу на конкретные вопросы
Ну а вот у меня гражданский авто, хочу норм поддержку хх с поддержкой оборотов. Рхх ваз, шаговый, кпп ручная, но если включить потребители в салоне или ехать на первой-второй без газа(а я практикую такое), то надо что бы хх стабильно держался плюс минус 100об максимум, уоз+регулятор добавочного воздухаrussian wrote:Хх работает не круто. Какой у тебя клапан и ручная ли коробка?
Лучше всего соленоид и ручная. Просто угадать скважность и радоваться. Какие цели машины? Нюанс в том, что с моими гонками хх не самое мне важное