Skip to main content

SuspensionAnalyzer - Rally Stage - Citroen C4 WRC

Suspension force and travel analysis

Sample Data

AttributeValue
Sourcemotec
Categoryrally_stage
File/Users/mhild/src/durandom/racing/b4racing/packages/source-motec/tests/fixtures/telemetry-NGP-Car_5-Citroen_C4_WRC-Stage_230-20260122_130000.ld

Available Channels (30): brake, brake_layer_temp_fl, brake_layer_temp_fr, brake_layer_temp_rl, brake_layer_temp_rr, brake_temp_fl, brake_temp_fr, brake_temp_rl, brake_temp_rr, brake_wear_fl, brake_wear_fr, brake_wear_rl, brake_wear_rr, clutch, damping_force_fl, damping_force_fr, damping_force_rl, damping_force_rr, distance, engine_temp, gear, handbrake, lap_distance_pct, lat_accel, long_accel, pitch, position_x, position_y, position_z, roll


Configuration

SettingValue
Slice Typelap
Metadata OnlyFalse
Required Channelstime

When to Use

  • User asks about suspension behavior
  • User wants to understand spring/damper forces
  • User asks about suspension balance

Key Options

OptionDescription
include_travelInclude suspension travel analysis (default: True)

Sample Output

Subjects Analyzed: 1 Context: Rally stage data

Default

Options: include_travel=True

Metrics Summary

e240d0597bb22cc0 (RSF driver)

MetricValue
Front Rear Balance0.929
Left Right Balance1.02
Raw JSON output
{
"metrics": [
{
"subject_id": "e240d0597bb22cc0",
"driver_name": "RSF driver",
"wheels": [
{
"position": "fl",
"spring": {
"min_n": 835.3200073242188,
"max_n": 12816.2998046875,
"avg_n": 3683.7674602071443,
"range_n": 11980.979797363281
},
"damping": {
"min_n": -21842.099609375,
"max_n": 11536.900390625,
"avg_n": 41.55993610038153,
"range_n": 33379.0
},
"strut": {
"min_n": -27769.69921875,
"max_n": 388.7340087890625,
"avg_n": -3668.593937496166,
"range_n": 28158.433227539062
},
"rollbar": {
"min_n": -1515.989990234375,
"max_n": 1399.0,
"avg_n": 26.386427494215727,
"range_n": 2914.989990234375
},
"avg_travel_mm": 178.92400222966293,
"max_travel_mm": 257.43499398231506
},
{
"position": "fr",
"spring": {
"min_n": 963.0369873046875,
"max_n": 14622.900390625,
"avg_n": 3592.6102995912233,
"range_n": 13659.863403320312
},
"damping": {
"min_n": -31735.099609375,
"max_n": 12770.2998046875,
"avg_n": 39.87738384264343,
"range_n": 44505.3994140625
},
"strut": {
"min_n": -38468.80078125,
"max_n": 459.15899658203125,
"avg_n": -3526.346463288565,
"range_n": 38927.95977783203
},
"rollbar": {
"min_n": -1399.0,
"max_n": 1515.989990234375,
"avg_n": -26.386427494215727,
"range_n": 2914.989990234375
},
"avg_travel_mm": 180.68304375337902,
"max_travel_mm": 251.677006483078
},
{
"position": "rl",
"spring": {
"min_n": -1.594849944114685,
"max_n": 15074.0,
"avg_n": 3959.901376455454,
"range_n": 15075.594849944115
},
"damping": {
"min_n": -20002.900390625,
"max_n": 13647.2998046875,
"avg_n": 47.94361709658703,
"range_n": 33650.2001953125
},
"strut": {
"min_n": -28006.599609375,
"max_n": 584.1409912109375,
"avg_n": -3933.9185442611965,
"range_n": 28590.740600585938
},
"rollbar": {
"min_n": -1856.43994140625,
"max_n": 1059.219970703125,
"avg_n": 21.96095924583702,
"range_n": 2915.659912109375
},
"avg_travel_mm": 173.759434017605,
"max_travel_mm": 305.9940040111542
},
{
"position": "rr",
"spring": {
"min_n": -1.7421300411224365,
"max_n": 15074.0,
"avg_n": 3868.6182353559375,
"range_n": 15075.742130041122
},
"damping": {
"min_n": -34418.6015625,
"max_n": 13794.7001953125,
"avg_n": 36.54470538066317,
"range_n": 48213.3017578125
},
"strut": {
"min_n": -40229.3984375,
"max_n": 587.4860229492188,
"avg_n": -3810.1127126110705,
"range_n": 40816.88446044922
},
"rollbar": {
"min_n": -1059.219970703125,
"max_n": 1856.43994140625,
"avg_n": -21.96095924583702,
"range_n": 2915.659912109375
},
"avg_travel_mm": 175.22359886885775,
"max_travel_mm": 305.9940040111542
}
],
"front_rear_balance": 0.9294704644822028,
"left_right_balance": 1.0244517777281472
}
],
"metadata": {
"analyzer": "suspension_analysis",
"title": "Suspension Analysis",
"subjects_analyzed": 1
}
}

Example Calls

How is my suspension working?

analyze(analyzers='suspension_analysis', event='...')

Analyzes all suspension forces and calculates balance


Generated from b4racing.analysis.analyzers.suspension_analysis.SuspensionAnalyzer