Skip to content

Скрипты и автоматизация ​

Lua 5.4, action buttons в JSON, MCP-сервер и AI-чат работают с одной и той же моделью проекта. Скрипты живут внутри workspace, поэтому переезжают вместе с проектом.

Lua-скрипты ​

Откройте Tools → Lua Scripts. Скрипты хранятся в:

  • <workspace>/scripts/*.lua — общие скрипты;
  • <project>/scripts/*.lua — скрипты проекта, имеющие приоритет.

Run выполняет скрипт в песочнице Lua; print и bm.log пишут в вывод Scripts и лог приложения. Ошибки останавливают скрипт и показываются в обоих местах. Живые операции по-прежнему требуют разрешений и подтверждений автоматизации.

lua
-- Read one DID and print the decoded value
local ecu = 0x100 -- txid; a unit string such as "ENGINE" also works
local p = bm.ecu.read_did(ecu, 0xF190)
print(string.format("%04X", 0xF190), p.value or p.hex)
ГруппаПримеры
Информация о проекте и ECUbm.ecu.list, bm.ecu.list_parameters, bm.ecu.list_dtcs
Параметрыbm.ecu.read_did, bm.ecu.read_all, bm.ecu.write_did
Неисправностиbm.ecu.read_dtcs
Живые операцииbm.ecu.routine_start, bm.ecu.routine_stop, bm.ecu.io_control
Сырой UDSbm.ecu.raw_uds, bm.ecu.uds
Памятьbm.ecu.read_memory, bm.ecu.write_memory
Аутентификацияbm.ecu.auth_levels, bm.ecu.authenticate, bm.ecu.auth_seed, bm.ecu.auth_key
Образы прошивкиbm.firmware.load, bm.firmware.save, bm.firmware.info, bm.firmware.recipe
Прошивкаbm.ecu.flash, bm.ecu.download, bm.ecu.flash_begin, bm.ecu.flash_end

Полный справочник поставляется вместе с документацией приложения.

Редактор и консоль Lua-скриптов

Action buttons ​

Action buttons загружаются из JSON через File → Load Actions:

json
{
  "tab_name": "Actions",
  "action_buttons": [
    { "name": "Session 03", "comment": "Extended session", "group": "Session", "data": "10 03" },
    { "name": "Read VIN", "comment": "Lua action", "group": "Scripts", "script": "read_vin.lua" }
  ]
}
  • data — сырой UDS-запрос в hex; его отправка требует подтверждения.
  • script — файл .lua из папки scripts/ проекта или workspace.
  • group — группа кнопки (по умолчанию Default); comment — всплывающая подсказка.

Скрипты проекта имеют приоритет над скриптами workspace с тем же именем.

AI-ассистент и MCP ​

  • Бэкенд чата — либо HTTP (OpenAI-совместимый endpoint), либо OpenCode ACP.
  • API key хранится в Диспетчере учетных данных Windows; настройки чата — в %LOCALAPPDATA%\BlackMagic\chat.json, история проекта — в chat_history.json.
  • Изменения проекта и живые записи в ECU включаются отдельно в Settings → Automation. Опасные операции запрашивают подтверждение.
  • Чат и MCP-клиенты вызывают одни и те же инструменты: список ECU, чтение DID/DTC, сканирование DID, запись, routines, IO control, память и отчёты.
  • HTTP-раунды и вызовы инструментов записываются в лог; зависший запрос завершается по таймауту.
AI-чат с вызовом инструмента ECU

Связанное ​

Бесплатное ядро. Локальный workspace. Без облака.