Разбираем процесс UDS-прошивки (Flash Bootloader) на базе TSMaster. Процесс состоит из двух частей: базовая конфигурация параметров и сам процесс прошивки.
1. Базовая конфигурация параметров
1.1. Новый проект
Откройте TSMaster и выберите «Создать проект» → «Диагностика» → «UDS-диагностика». Укажите новый рабочий каталог, создайте папку и перейдите в проект TSMaster.

1.2. Настройка CAN-каналов
Вверху интерфейса выберите «Аппаратное обеспечение» → канал и настройте CAN: «Аппаратура шины» → задайте скорости. В примере: канал 1 — 1000 кбит/с, канал 2 — 500 кбит/с.

1.3. Создание UDS-диагностического модуля
Откройте или создайте UDS-диагностический модуль.

Задайте базовые параметры диагностики: Protocol → Transport Layer, канал — channel 2.

Настройте параметры Diagnostic Layer и импортируйте DLL алгоритма безопасности (Seed&Key).

2. Процесс прошивки
2.1. Вход в расширенную сессию
Перейдите на вкладку «Basic Diagnostic Config» и, следуя конфигурационному файлу, правой кнопкой по сервису 10 добавьте новый сервис.

Дважды кликните по созданному сервису и измените тип сессии на 83 (расширенная).

2.2. Создание действий прошивки (BT)
Перейдите в «Automatic Diagnostic», щёлкните правой кнопкой в пустой области слева и выберите «Add a new UDS flow».

Переключитесь в состояние «unlock», затем правой кнопкой в области шагов выберите «Add new test step» → «Normal». По процессу прошивки вашего предприятия выберите функциональный или физический ID и в поле «Request(0x)» введите 10 83. Далее по конфигурационному файлу последовательно настраивайте сервисы в «Basic Diagnostic Config» и процесс прошивки в «Automatic Diagnostic».

После входа в программную сессию ЭБУ разблокируется через алгоритм безопасности: при добавлении действия выбирайте не «Select Config», а Seed&Key, и по спецификации выберите соответствующий level.

2.3. Загрузка файла прошивки
На вкладке «Basic Diagnostic Config» создайте сервис, задайте имя в «Service Name» и по кнопке «+» выберите записываемый файл. Ниже отобразятся области данных файла и параметры каждой области — TSMaster запишет их полностью автоматически. При этом появляются два важных параметра: адрес записываемых данных и их длина.

2.4. Ручная настройка сервиса стирания и проверки
После записи s19-файла выполняется проверка. В сервисе 31 создайте новый сервис, введите данные, в параметрах ниже выберите «Value Type» → «SystemVar», задайте длину данных 32 и добавьте переменную.

Нажмите «+» справа в списке параметров и найдите среди внутренних переменных параметр контрольной суммы соответствующего файла. Подтвердите.

Затем добавьте это действие в «Automatic Diagnostic» после процесса записи соответствующего файла.

Создайте действие «стирание» — в нём используются два сгенерированных ранее параметра (адрес и длина).

И добавьте его в «Automatic Diagnostic».

2.5. Добавление нового файла прошивки
После стирания добавьте новый файл прошивки, повторите описанные шаги и в конце выполните проверку. Завершающие действия добавьте по конфигурационному файлу. Конфигурация готова: нажмите «Запуск» слева вверху, затем «Run» в диагностике.

Программа прошивается.

По завершении ответы наглядно видны в нижней области.

2.6. Автоматическая настройка стирания
Если не хотите настраивать стирание и checksum вручную, используйте автоматическую конфигурацию сервиса стирания.

Выберите соответствующее ответное сообщение.


Checksum.


См. также двухчастное руководство: часть 1 и часть 2 по CAN UDS-диагностике в TSMaster.