QFW SDK

XCP knihovna do firmwaru vaší řídicí jednotky

Knihovna, která do firmwaru vašeho zařízení přidá protokol XCP. QInsight pak z běžícího firmwaru měří hodnoty s časovými značkami, kalibruje parametry a stimuluje signály — po Ethernetu nebo CAN, bez vlastního komunikačního protokolu.

Dvě desky NUCLEO připojené k notebooku s QInsight

Funkce

Měření, kalibrace a stimulace v běžícím firmwaru

Měření z běžícího firmwaru

Hodnoty vzorkuje zařízení ve vlastním cyklu s časovými značkami s rozlišením 1 µs. QInsight je zobrazuje, loguje a přehrává — bez debug sondy a bez zastavování procesoru.

Kalibrace a stimulace za běhu

Parametry měníte z QInsight přímo v paměti jednotky. Signály z PC můžete do firmwaru plynule vnucovat (STIM) synchronně s cyklem vaší aplikace.

Standardní protokol ASAM XCP

Engine implementuje ASAM MCD-1 XCP 1.4. Vlastní protokol ani parser nepíšete; knihovnu přilinkujete a napojíte na transport.

Struktura SDK

Engine, glue vrstva a ukázkový projekt

Binární engine, zdrojová glue vrstva a kompletní ukázkový projekt.

1

Engine bez OS

Statická knihovna s jedinou veřejnou hlavičkou. Nemá vlákna, sockety, heap ani blokující volání: dostává data z transportu, vrací data k odeslání a čas, zámky i logování dostane callbacky. Proto běží bare-metal i nad libovolným RTOS.

2

Zdrojová glue

Referenční napojení enginu na konkrétní prostředí, dodávané jako zdrojový kód: FreeRTOS + lwIP pro Ethernet, superloop pro CAN (STM32H7 FDCAN). Upravíte si ho podle svého projektu.

3

Ukázkový projekt

Kompletní projekt pro NUCLEO-H723ZG (CubeMX/CMake), který se přeloží bez úprav: od inicializace po živé měření v QInsight.

Transporty

XCP on TCP a XCP on CAN se společným API

Balíček obsahuje engine ve dvou variantách; jeden image linkuje právě jednu z nich. Liší se jen vstup pro příjem.

XCP on TCP (Ethernet)XCP on CAN
Kdyzařízení s Ethernetem, velké objemy datzařízení na sběrnici CAN, PC s adaptérem PEAK CAN
Rámceaž 1024 B na DAQ paketklasický CAN, 8B rámce (CAN FD připravujeme)
GlueFreeRTOS + lwIP, TCP server taskbare-metal superloop, STM32H7 FDCAN
Knihovnalibqfw_xcp_eth.alibqfw_xcp_can.a

Integrace

Napojení enginu na vaši aplikaci

Inicializace s callbacky, vytvoření eventu a jeho trigger v cyklu vaší úlohy. Adresy proměnných se berou z map nebo ELF souboru; A2L není potřeba.

qfw_xcp_config_t cfg = QFW_XCP_CONFIG_DEFAULT;
cfg.project_name = "MyEcu";
cfg.epk          = "V1.0.0";
cfg.transmit     = my_transmit;      // TCP stream or CAN frame
cfg.get_clock    = my_clock_us;      // monotonic time in us
cfg.crit_enter   = my_lock;
cfg.crit_leave   = my_unlock;
cfg.queue_mem    = queue_memory;     // static memory, no allocations
cfg.queue_mem_size = sizeof(queue_memory);

qfw_xcp_init(&cfg);

uint16_t ev10ms = qfw_xcp_create_event("task10ms", 10000);

// in the 10 ms task / timer:
qfw_xcp_trigger_event(ev10ms);   // samples DAQ lists, applies STIM
Celá integrace XCP enginu na straně aplikace.

Kompatibilita a požadavky

Podporované platformy a požadavky

  • Knihovna pro Cortex-M7 s FPU (GCC); další jádra a toolchainy (Cortex-M4F, M33, IAR, Arm Compiler) na vyžádání.
  • QInsight 1.0.0 nebo novější (XCP on CAN: build ze září 2026 a novější).
  • Standardní XCP 1.4 — pro základní sadu funkcí funguje i jiný XCP master po TCP.
  • Engine staví na Vector XCPlite (licence MIT), upraveném pro běh bez OS a pro STIM.

Vyzkoušení a licence

Evaluation build zdarma, licencovaný build s licencí QInsight

Evaluation zdarma

Balíček bez aktivačního klíče běží s plnou funkčností; engine se 30 minut po startu zařízení zastaví (do restartu). QInsight dostane srozumitelnou hlášku, ne mlčení.

Součást licence QInsight

QFW SDK nemá samostatnou cenu. K Commercial licenci QInsight patří aktivační klíč, který časové omezení odstraní; knihovna se pak sestaví pro vaši firmu.

Distribuce

Knihovnu smíte šířit jen jako součást firmwaru vlastního produktu. Podrobnosti v Licenční smlouvě QENEX.

Stažení

Balíček QFW SDK (evaluation i licencovaný build) si stáhnete po přihlášení na account.qenex.net — stejně jako instalátor QInsight a licenci.

Další protokoly

XCP jako první protokol SDK

Stejný model — binární engine, zdrojová glue vrstva, ukázkový projekt — je připravený pro další protokoly, kterými QInsight komunikuje.