Skip to main content

PedalOverlapAnalyzer - Rally Stage - Aston Martin DBR9

Pedal overlap analysis: left-foot braking detection and scoring

Sample Data

AttributeValue
Sourcemotec
Categoryrally_stage
File/Users/mhild/src/durandom/racing/b4racing/packages/source-motec/tests/fixtures/telemetry-NGP-Car_5-Aston_Martin_DBR9-Stage_138-20260122_120000.ld

Available Channels: brake, clutch, distance, gear, lap_distance_pct, lat_accel, long_accel, pitch, position_x, position_y, position_z, raw_LB.brakeDiskLayerTemp, raw_LB.brakeDiskTemp, raw_LB.brakeWear, raw_LB.currentTyreSegment, raw_LB.dampingForce, raw_LB.deflectionVelocity, raw_LB.helperSpringActive, raw_LB.innerBumpDeflectionVelocity, raw_LB.outerBumpDeflectionVelocity, raw_LB.rollbarForce, raw_LB.segmentData[0].temperature, raw_LB.segmentData[1].temperature, raw_LB.segmentData[2].temperature, raw_LB.segmentData[3].temperature, raw_LB.segmentData[4].temperature, raw_LB.segmentData[5].temperature, raw_LB.segmentData[6].temperature, raw_LB.segmentData[7].temperature, raw_LB.springForce, raw_LB.strutForce, raw_LB.temperature, raw_LB.treadTemperature, raw_LB.wear[0], raw_LB.wear[1], raw_LB.wear[2], raw_LB.wear[3], raw_LB.wear[4], raw_LB.wear[5], raw_LB.wear[6], raw_LB.wear[7], raw_LF.brakeDiskLayerTemp, raw_LF.brakeDiskTemp, raw_LF.brakeWear, raw_LF.currentTyreSegment, raw_LF.dampingForce, raw_LF.deflectionVelocity, raw_LF.helperSpringActive, raw_LF.innerBumpDeflectionVelocity, raw_LF.outerBumpDeflectionVelocity, raw_LF.rollbarForce, raw_LF.segmentData[0].temperature, raw_LF.segmentData[1].temperature, raw_LF.segmentData[2].temperature, raw_LF.segmentData[3].temperature, raw_LF.segmentData[4].temperature, raw_LF.segmentData[5].temperature, raw_LF.segmentData[6].temperature, raw_LF.segmentData[7].temperature, raw_LF.springForce, raw_LF.strutForce, raw_LF.temperature, raw_LF.treadTemperature, raw_LF.wear[0], raw_LF.wear[1], raw_LF.wear[2], raw_LF.wear[3], raw_LF.wear[4], raw_LF.wear[5], raw_LF.wear[6], raw_LF.wear[7], raw_RB.brakeDiskLayerTemp, raw_RB.brakeDiskTemp, raw_RB.brakeWear, raw_RB.currentTyreSegment, raw_RB.dampingForce, raw_RB.deflectionVelocity, raw_RB.helperSpringActive, raw_RB.innerBumpDeflectionVelocity, raw_RB.outerBumpDeflectionVelocity, raw_RB.rollbarForce, raw_RB.segmentData[0].temperature, raw_RB.segmentData[1].temperature, raw_RB.segmentData[2].temperature, raw_RB.segmentData[3].temperature, raw_RB.segmentData[4].temperature, raw_RB.segmentData[5].temperature, raw_RB.segmentData[6].temperature, raw_RB.segmentData[7].temperature, raw_RB.springForce, raw_RB.strutForce, raw_RB.temperature, raw_RB.treadTemperature, raw_RB.wear[0], raw_RB.wear[1], raw_RB.wear[2], raw_RB.wear[3], raw_RB.wear[4], raw_RB.wear[5], raw_RB.wear[6], raw_RB.wear[7], raw_RF.brakeDiskLayerTemp, raw_RF.brakeDiskTemp, raw_RF.brakeWear, raw_RF.currentTyreSegment, raw_RF.dampingForce, raw_RF.deflectionVelocity, raw_RF.helperSpringActive, raw_RF.innerBumpDeflectionVelocity, raw_RF.outerBumpDeflectionVelocity, raw_RF.rollbarForce, raw_RF.segmentData[0].temperature, raw_RF.segmentData[1].temperature, raw_RF.segmentData[2].temperature, raw_RF.segmentData[3].temperature, raw_RF.segmentData[4].temperature, raw_RF.segmentData[5].temperature, raw_RF.segmentData[6].temperature, raw_RF.segmentData[7].temperature, raw_RF.springForce, raw_RF.strutForce, raw_RF.temperature, raw_RF.treadTemperature, raw_RF.wear[0], raw_RF.wear[1], raw_RF.wear[2], raw_RF.wear[3], raw_RF.wear[4], raw_RF.wear[5], raw_RF.wear[6], raw_RF.wear[7], raw_distanceToEnd, raw_driveLineLocation, raw_engineCoolantHeatState.temperatu, raw_engineTemperature, raw_footbrakePressure, raw_handbrakePressure, raw_raceTime, raw_radiatorCoolantHeatState.tempera, raw_steering, raw_vecAngularAccelerationCar.x, raw_vecAngularAccelerationCar.y, raw_vecAngularAccelerationCar.z, raw_vecAngularVelocityCar.x, raw_vecAngularVelocityCar.y, raw_vecAngularVelocityCar.z, raw_vecAvgAngularAccelerationCar.x, raw_vecAvgAngularAccelerationCar.y, raw_vecAvgAngularAccelerationCar.z, raw_vecAvgLinearAccelerationCar.x, raw_vecAvgLinearAccelerationCar.y, raw_vecAvgLinearAccelerationCar.z, raw_vecRelativeAngularAcceleration.x, raw_vecRelativeAngularAcceleration.y, raw_vecRelativeAngularAcceleration.z, raw_vecRelativeAngularVelocity.x, raw_vecRelativeAngularVelocity.y, raw_vecRelativeAngularVelocity.z, raw_vecRelativeLinearAcceleration.x, raw_vecRelativeLinearAcceleration.y, raw_vecRelativeLinearAcceleration.z, raw_vecRelativeLinearVelocity.x, raw_vecRelativeLinearVelocity.y, raw_vecRelativeLinearVelocity.z, roll, rpm, speed, speed_kph, speed_mph, steering, suspension_fl_travel, suspension_fr_travel, suspension_rl_travel, suspension_rr_travel, throttle, time, tire_pressure_fl, tire_pressure_fr, tire_pressure_rl, tire_pressure_rr, tire_temp_fl, tire_temp_fr, tire_temp_rl, tire_temp_rr, track_pct, velocity_x, velocity_y, velocity_z, vert_accel, yaw


Configuration

SettingValue
Slice Typelap
Metadata OnlyFalse
Required Channelsthrottle, brake, speed, time

When to Use

  • User asks about left-foot braking
  • User wants to know about pedal overlap technique
  • User asks 'am I using LFB correctly?'
  • User wants to analyze corner entry technique

Key Options

OptionDescription
lap_selectionall
throttle_thresholdMinimum throttle to count as 'on' (default: 0.05)
brake_thresholdMinimum brake to count as 'on' (default: 0.05)

Sample Output

Subjects Analyzed: 1

Short Duration (Default)

Options: min_overlap_duration_seconds=0.05

{
"metrics": [
{
"subject_id": "d0c8e5bbf805540b",
"driver_name": "RSF driver",
"overlap_event_count": 3,
"total_overlap_time_seconds": 0.2916864755953945,
"overlap_time_pct": 0.004142614601018676,
"avg_overlap_intensity": 0.34651193643609685,
"max_overlap_intensity": 0.44237399101257324,
"entry_events": 0,
"exit_events": 0,
"mid_corner_events": 3,
"technique_score": 17.325596821804844,
"technique_classification": "Balanced LFB",
"overlap_time_pct_formatted": "0.4%",
"technique_score_formatted": "17/100"
}
],
"overlap_events": {
"d0c8e5bbf805540b": [
{
"start_time_seconds": 18.431807291195025,
"end_time_seconds": 18.529036116393492,
"duration_seconds": 0.0972288251984672,
"start_distance_m": 124.66899871826172,
"end_distance_m": 125.43800354003906,
"avg_throttle": 0.18317034592231116,
"avg_brake": 0.21729859411716462,
"max_overlap_intensity": 0.44237399101257324,
"speed_at_start_kmh": 10.847749710083008,
"speed_at_end_kmh": 11.345638699001736,
"context": "mid-corner"
},
{
"start_time_seconds": 62.643143092154915,
"end_time_seconds": 62.74731683343899,
"duration_seconds": 0.10417374128407175,
"start_distance_m": 556.4990234375,
"end_distance_m": 557.697021484375,
"avg_throttle": 0.18247882509604096,
"avg_brake": 0.1465781880542636,
"max_overlap_intensity": 0.3454486131668091,
"speed_at_start_kmh": 15.19002808464898,
"speed_at_end_kmh": 15.158749686347113,
"context": "mid-corner"
},
{
"start_time_seconds": 64.11546530230312,
"end_time_seconds": 64.20574921141598,
"duration_seconds": 0.09028390911285555,
"start_distance_m": 573.1430053710938,
"end_distance_m": 573.9310302734375,
"avg_throttle": 0.13305862168116228,
"avg_brake": 0.08994972120438303,
"max_overlap_intensity": 0.25171320512890816,
"speed_at_start_kmh": 11.100722418891058,
"speed_at_end_kmh": 11.563971837361654,
"context": "mid-corner"
}
]
},
"metadata": {
"analyzer": "pedal_overlap",
"title": "Pedal Overlap (LFB) Analysis",
"subjects_analyzed": 1
}
}

Metrics Summary

MetricValue
Subject: d0c8e5bbf805540bRSF driver

Longer Duration

Options: min_overlap_duration_seconds=0.1

{
"metrics": [
{
"subject_id": "d0c8e5bbf805540b",
"driver_name": "RSF driver",
"overlap_event_count": 1,
"total_overlap_time_seconds": 0.10417374128407175,
"overlap_time_pct": 0.004142614601018676,
"avg_overlap_intensity": 0.3454486131668091,
"max_overlap_intensity": 0.3454486131668091,
"entry_events": 0,
"exit_events": 0,
"mid_corner_events": 1,
"technique_score": 17.272430658340454,
"technique_classification": "Balanced LFB",
"overlap_time_pct_formatted": "0.4%",
"technique_score_formatted": "17/100"
}
],
"overlap_events": {
"d0c8e5bbf805540b": [
{
"start_time_seconds": 62.643143092154915,
"end_time_seconds": 62.74731683343899,
"duration_seconds": 0.10417374128407175,
"start_distance_m": 556.4990234375,
"end_distance_m": 557.697021484375,
"avg_throttle": 0.18247882509604096,
"avg_brake": 0.1465781880542636,
"max_overlap_intensity": 0.3454486131668091,
"speed_at_start_kmh": 15.19002808464898,
"speed_at_end_kmh": 15.158749686347113,
"context": "mid-corner"
}
]
},
"metadata": {
"analyzer": "pedal_overlap",
"title": "Pedal Overlap (LFB) Analysis",
"subjects_analyzed": 1
}
}

Metrics Summary

MetricValue
Subject: d0c8e5bbf805540bRSF driver

Example Calls

Am I using left-foot braking

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

Detects brake+throttle overlap events


Generated from b4racing.analysis.analyzers.pedal_overlap.PedalOverlapAnalyzer