From 5773b338660026f100dbab9ec14cf80d89c70b33 Mon Sep 17 00:00:00 2001 From: Luis Oliveira Date: Mon, 12 Jan 2026 17:42:34 +0000 Subject: [PATCH 1/2] R1 CAN VSS specs --- spec/Body/Body.vspec | 5 ++ spec/Cabin/Cabin.vspec | 2 +- spec/Chassis/Chassis.vspec | 67 +++++++++++++++++++++++++- spec/Powertrain/CombustionEngine.vspec | 6 +++ spec/Powertrain/FuelSystem.vspec | 6 +++ spec/Powertrain/Transmission.vspec | 36 ++++++++++++++ 6 files changed, 120 insertions(+), 2 deletions(-) diff --git a/spec/Body/Body.vspec b/spec/Body/Body.vspec index 0b1981517..bf60fc6e1 100644 --- a/spec/Body/Body.vspec +++ b/spec/Body/Body.vspec @@ -187,6 +187,11 @@ Lights.IsHighBeamSwitchOn: comment: This signal indicates the status of the switch and does not indicate if low or high beam actually are on. That typically depends on vehicle logic and other signals like Lights.LightSwitch and Vehicle.LowVoltageSystemState. +Lights.IsAirbagWarningOn: + datatype: boolean + type: sensor + description: Indicates whether the airbag/SRS warning telltale is active. + Lights.Beam: type: branch instances: ["Low","High"] diff --git a/spec/Cabin/Cabin.vspec b/spec/Cabin/Cabin.vspec index 102bad528..72076594f 100644 --- a/spec/Cabin/Cabin.vspec +++ b/spec/Cabin/Cabin.vspec @@ -145,7 +145,7 @@ IsWindowChildLockEngaged: Seat: type: branch instances: - - Row[1,2] + - Row[1,3] - ["DriverSide","Middle","PassengerSide"] description: All seats. #include SingleSeat.vspec Seat diff --git a/spec/Chassis/Chassis.vspec b/spec/Chassis/Chassis.vspec index f7c8825cd..28a69a9c9 100644 --- a/spec/Chassis/Chassis.vspec +++ b/spec/Chassis/Chassis.vspec @@ -23,7 +23,7 @@ Wheelbase: # Axle: instances: - - Row[1,2] + - Row[1,5] type: branch description: Axle signals @@ -85,6 +85,13 @@ Axle.SteeringAngle: description: Single track two-axle model steering angle. Angle according to ISO 8855. Positive = degrees to the left. Negative = degrees to the right. comment: Single track two-axle model steering angle refers to the angle that a centrally mounted wheel would have. + +Axle.Weight: + type: sensor + datatype: float + unit: kg + description: Measured Load on axle row 3. + # # Tire attributes # @@ -200,9 +207,67 @@ Brake.PedalPosition: unit: percent description: Brake pedal position as percent. 0 = Not depressed. 100 = Fully depressed. +Brake.IsPedalPressed: + type: sensor + datatype: boolean + description: Indicates whether the brake pedal is pressed. + Brake.IsDriverEmergencyBrakingDetected: datatype: boolean type: sensor description: Indicates if emergency braking initiated by driver is detected. True = Emergency braking detected. False = Emergency braking not detected. comment: Detection of emergency braking can trigger Emergency Brake Assist (EBA) to engage. + +# +# Brake; Cicuit +# + +Brake.Circuit1: + type: branch + description: Service brake circuit or reservoir #1. + +Brake.Circuit1.PressurePrimary: + datatype: float + type: sensor + unit: kPa + description: Pneumatic pressure in the service brake circuit or reservoir #1 (FMS / J1939 SPN 1087). + +Brake.Circuit2: + type: branch + description: Service brake circuit or reservoir #2. + +Brake.Circuit2.PressurePrimary: + datatype: float + type: sensor + unit: kPa + description: Pneumatic pressure in the service brake circuit or reservoir #2 (FMS / J1939 SPN 1088). + +# +# Brake; ABS +# + +Brake.ABS: + type: branch + description: Anti-lock Braking System (ABS) related signals. + +Brake.ABS.IsWarningOn: + datatype: boolean + type: sensor + description: Indicates whether the ABS warning telltale is active (any non-off state). + +# +# TireSystem +# + +TireSystem: + type: branch + description: Tire system related signals. + +TireSystem.IsWarningOn: + datatype: boolean + type: sensor + description: Indicates whether the tire system warning telltale is active + comment: > + Derived from FMS telltale status (0,1,2,3,7). + Severity information is not preserved. \ No newline at end of file diff --git a/spec/Powertrain/CombustionEngine.vspec b/spec/Powertrain/CombustionEngine.vspec index c018accfd..edaa32b08 100644 --- a/spec/Powertrain/CombustionEngine.vspec +++ b/spec/Powertrain/CombustionEngine.vspec @@ -229,6 +229,12 @@ Torque: comment: During engine breaking the engine delivers a negative torque to the transmission. This negative torque shall be ignored, instead 0 shall be reported. +TorquePercent: + datatype: float + type: sensor + unit: percent + description: Actual engine output torque as a percentage of reference engine torque (FMS / J1939 parameter SPN 513). + # # Diesel Exhaust Fluid # diff --git a/spec/Powertrain/FuelSystem.vspec b/spec/Powertrain/FuelSystem.vspec index 33462ecce..f6e42cd0f 100644 --- a/spec/Powertrain/FuelSystem.vspec +++ b/spec/Powertrain/FuelSystem.vspec @@ -116,3 +116,9 @@ IsFuelPortFlapOpen: datatype: boolean type: actuator description: Status of the fuel port flap(s). True if at least one is open. + +AccumulatedConsumption: + datatype: float + type: sensor + unit: l + description: Accumulated fuel consumption (totalized) reported by the vehicle (FMS SPN 250). diff --git a/spec/Powertrain/Transmission.vspec b/spec/Powertrain/Transmission.vspec index ae59b2b1d..8bce07eef 100644 --- a/spec/Powertrain/Transmission.vspec +++ b/spec/Powertrain/Transmission.vspec @@ -158,3 +158,39 @@ TorqueDistribution: max: 100 description: Torque distribution between front and rear axle in percent. -100% = Full torque to front axle, 0% = 50:50 Front/Rear, 100% = Full torque to rear axle. +# +# Retarder +# + +Retarder: + type: branch + description: Transmission retarder system signals. + +Retarder.TorqueMode: + datatype: uint8 + type: sensor + description: Active engine torque mode. + comment: > + FMS parameter SPN 900. + 0 = Low idle governor / no request (default mode) + 1 = Accelerator pedal / operator selection + 2 = Cruise control + 3 = PTO governor + 4 = Road speed governor + 5 = ASR control + 6 = Transmission control + 7 = ABS control + 8 = Torque limiting + 9 = High speed governor + 10 = Braking system + 11 = Remote accelerator + 12 = Service procedure + 13 = Not defined + 14 = Other + 15 = Not available + +Retarder.ActualTorque: + type: sensor + datatype: float + unit: percent + description: Actual retarder torque as a percentage (FMS / J1939 SPN 520). From c304115707037dc4c4443a76c92b3c92ea6d9b60 Mon Sep 17 00:00:00 2001 From: Luis Oliveira Date: Wed, 21 Jan 2026 18:41:52 +0000 Subject: [PATCH 2/2] Changes to retarder;mode, and IsCluthcSwitchOperated --- overlays/DIMO/dimo.vspec | 7 ++++++- spec/Body/Body.vspec | 14 ++++++++++++++ spec/Powertrain/Transmission.vspec | 27 ++++++--------------------- 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/overlays/DIMO/dimo.vspec b/overlays/DIMO/dimo.vspec index 671787362..f2cd7a7e8 100644 --- a/overlays/DIMO/dimo.vspec +++ b/overlays/DIMO/dimo.vspec @@ -92,4 +92,9 @@ Vehicle.Powertrain.TractionBattery.Charging.Power: datatype: float type: sensor unit: kW - description: Instantaneous charging power recorded during a charging event. \ No newline at end of file + description: Instantaneous charging power recorded during a charging event. + +Vehicle.Powertrain.Transmission.IsClutchSwitchOperated: + type: sensor + datatype: boolean + description: Indicates if the Clutch switch is operated, so engine and transmission are partially or fully decoupled. False = Clutch switch not operated. True = Clutch switch operated. \ No newline at end of file diff --git a/spec/Body/Body.vspec b/spec/Body/Body.vspec index bf60fc6e1..0cc7dc55f 100644 --- a/spec/Body/Body.vspec +++ b/spec/Body/Body.vspec @@ -160,6 +160,20 @@ Windshield.WasherFluid.Level: type: sensor description: Washer fluid level as a percent. 0 = Empty. 100 = Full. +# +# Lock +# + +Lock: + type: branch + description: Central locking system of the vehicle. + +Lock.IsLocked: + type: sensor + datatype: boolean + description: Indicates whether the vehicle is locked via the central locking system. True = vehicle locked. False = vehicle unlocked. + + ## # Lights definition ## diff --git a/spec/Powertrain/Transmission.vspec b/spec/Powertrain/Transmission.vspec index 8bce07eef..7f749b519 100644 --- a/spec/Powertrain/Transmission.vspec +++ b/spec/Powertrain/Transmission.vspec @@ -64,7 +64,7 @@ CurrentGear: SelectedGear: datatype: int8 type: actuator - description: The selected gear. 0=Neutral, 1/2/..=Forward, -1/-2/..=Reverse, 126=Park, 127=Drive. + description: The selected gear. 0=Neutral, 1/2/..=Forward, -1/-2/..=Reverse, 126=Park. IsParkLockEngaged: datatype: boolean @@ -167,27 +167,12 @@ Retarder: description: Transmission retarder system signals. Retarder.TorqueMode: - datatype: uint8 - type: sensor + datatype: string + type: attribute + allowed: ['LOW IDLE GOVERNOR', 'ACCELERATOR PEDAL', 'CRUISE CONTROL', 'PTO GOVERNOR', 'ROAD STATE GOVERNOR', + 'ASR CONTROL', 'TRANSMISSION CONTROL', 'ABS CONTROL', 'TORQUE LIMITING', 'HIGH SPEED GOVERNOR', + 'BRAKING SYSTER', 'REMOTE ACCELERATOR', 'SERVICE PROCEDURE', 'NOT DEFINED', 'OTHER', 'NOT AVAILABLE'] description: Active engine torque mode. - comment: > - FMS parameter SPN 900. - 0 = Low idle governor / no request (default mode) - 1 = Accelerator pedal / operator selection - 2 = Cruise control - 3 = PTO governor - 4 = Road speed governor - 5 = ASR control - 6 = Transmission control - 7 = ABS control - 8 = Torque limiting - 9 = High speed governor - 10 = Braking system - 11 = Remote accelerator - 12 = Service procedure - 13 = Not defined - 14 = Other - 15 = Not available Retarder.ActualTorque: type: sensor