Project

General

Profile

Actions

Bug #28

closed

Same signal values aren't rettransmitted by canbus-binding even though parameter `send_same` is set to `true`

Added by Emmanuel Jubera [SAFT] almost 2 years ago. Updated over 1 year ago.

Status:
Closed
Priority:
High
Assignee:
Target version:
Start date:
08/16/2022
Due date:
% Done:

0%

Estimated time:
Hardware platform:
Desktop SDK (openSUSE Leap 15.3)
OS Affects Version/s:
arz-1.0
OS Fix Version/s:
arz-1.0.1
Labels:

Description

Canplayer was used to send message 0x601 to canbus-binding as follows:

can0 601 [3] 01 02 03
can0 601 [3] 00 02 03

Here's the definition of message 0x601 (3 bytes in total, 1 uint8 followed by a uint16):

    "0x601": {
        "name": "EMOJY.SysInfo.ConvertersDC",
        "bus": "hs",
        "length": 3,
        "is_fd": false,
        "is_j1939": false,
        "is_extended": false,
        "byte_frame_is_big_endian": false,
        "bit_position_reversed": false,
        "signals": {
            "idConvertersDC": {
                "name": "EMOJY.SysInfo.ConvertersDC.idConvertersDC",
                "bit_position": 0,
                "bit_size": 8,
                "factor": 1,
                "offset": 1,
                "writable": false,
                "unit": "N/A",
                "min_value": 1,
                "max_value": 2
            },
            "softwareVersion": {
                "name": "EMOJY.SysInfo.ConvertersDC.softwareVersion",
                "bit_position": 8,
                "bit_size": 16,
                "factor": 1,
                "offset": 0,
                "writable": false,
                "unit": "N/A",
                "min_value": 0,
                "max_value": 65535,
                "send_same": true
            }
        }
    }

EMOJY.SysInfo.ConvertersDC.softwareVersion signal has got send_same parameter set to true. Despite that, canbus-binding doesn't decode it the second time it is sent with value 0x0203.

Here're canbus-binding logs:

^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Got a legacy CAN frame
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Found id: 601, format: 0, length: 3, data 0102030000000000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Here is the next can message : id 1537 length 3, data 12300000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Decoded message from parse_signal_bitfield: 515.000000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Emojy_v1.5/EMOJY.SysInfo.ConvertersDC.softwareVersion CAN signals processed.
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Here is the next can message : id 1537 length 3, data 12300000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Decoded message from parse_signal_bitfield: 2.000000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Emojy_v1.5/EMOJY.SysInfo.ConvertersDC.idConvertersDC CAN signals processed.
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m next vehicle message poped
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m next vehicle message poped
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Data available: 16 bytes read. BCM head, opcode: 12, can_id: 1537, nframes: 1
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Got a legacy CAN frame
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Found id: 601, format: 0, length: 3, data 0002030000000000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Here is the next can message : id 1537 length 3, data 02300000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Decoded message from parse_signal_bitfield: 1.000000
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m Emojy_v1.5/EMOJY.SysInfo.ConvertersDC.idConvertersDC CAN signals processed.
^[[95mDEBUG^[[0m: ^[[1m[API canbus]^[[0m next vehicle message poped
Actions

Also available in: Atom PDF