From 94554ff7b5ae9a058c73e139616cff55c0279efa Mon Sep 17 00:00:00 2001 From: malilaroussi Date: Thu, 26 Feb 2026 14:21:44 +0100 Subject: [PATCH 1/2] support J1939 in fibex as manufacturer extension --- src/canmatrix/formats/fibex.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/canmatrix/formats/fibex.py b/src/canmatrix/formats/fibex.py index 86cd9af6..55600f6b 100644 --- a/src/canmatrix/formats/fibex.py +++ b/src/canmatrix/formats/fibex.py @@ -179,7 +179,10 @@ def create_frame_triggering(parent, frame, prefix=""): # Frame reference frame_ref = create_sub_element_fx(frame_triggering, "FRAME-REF") frame_ref.set("ID-REF", f"{prefix}FRAME_{frame.name}") - + if frame.is_j1939: + manufac_extension = create_sub_element_fx(frame_triggering, "MANUFACTURER-EXTENSION") + create_sub_element_te(manufac_extension,"PROTOCOL-FORMAT","J1939") + # CAN-FD behavior (if applicable) if frame.is_fd: create_sub_element_fx(frame_triggering, "CAN-FRAME-TX-BEHAVIOR", "CAN-FD") From 53383555439ac1cd08ab3b1518ecf3cf3722397b Mon Sep 17 00:00:00 2001 From: malilaroussi Date: Fri, 27 Feb 2026 12:45:03 +0100 Subject: [PATCH 2/2] add frame Type --- src/canmatrix/formats/fibex.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/canmatrix/formats/fibex.py b/src/canmatrix/formats/fibex.py index 55600f6b..cc9f994e 100644 --- a/src/canmatrix/formats/fibex.py +++ b/src/canmatrix/formats/fibex.py @@ -151,6 +151,8 @@ def create_frame_element(parent, frame, prefix=""): create_sub_element_fx(frame_element, "BYTE-LENGTH", str(frame.size)) if frame.attribute("NmAsrMessage") and frame.attribute("NmAsrMessage").lower() == "yes": create_sub_element_fx(frame_element, "FRAME-TYPE", "NM") + elif (frame.is_j1939): + create_sub_element_fx(frame_element, "FRAME-TYPE", "J1939") else: create_sub_element_fx(frame_element, "FRAME-TYPE", "APPLICATION") @@ -179,9 +181,6 @@ def create_frame_triggering(parent, frame, prefix=""): # Frame reference frame_ref = create_sub_element_fx(frame_triggering, "FRAME-REF") frame_ref.set("ID-REF", f"{prefix}FRAME_{frame.name}") - if frame.is_j1939: - manufac_extension = create_sub_element_fx(frame_triggering, "MANUFACTURER-EXTENSION") - create_sub_element_te(manufac_extension,"PROTOCOL-FORMAT","J1939") # CAN-FD behavior (if applicable) if frame.is_fd: