1212from datetime import datetime
1313from enum import Enum
1414
15- from .ops243 import OPS243Radar , SpeedReading , Direction
15+ from .ops243 import OPS243Radar , SpeedReading
1616
1717
1818class ClubType (Enum ):
@@ -315,7 +315,7 @@ def _on_reading(self, reading: SpeedReading):
315315 min_speed = self .MIN_BALL_SPEED_MPH
316316
317317 # Filter by realistic speeds
318- if not ( min_speed <= reading .speed <= self .MAX_BALL_SPEED_MPH ) :
318+ if not min_speed <= reading .speed <= self .MAX_BALL_SPEED_MPH :
319319 return
320320
321321 # Check if this is part of current shot or new shot
@@ -369,9 +369,11 @@ def _process_shot(self):
369369 club_speed_tolerance = 20 # mph tolerance
370370
371371 # Find readings that could be club (within expected range)
372+ club_speed_min = expected_club_speed - club_speed_tolerance
373+ club_speed_max = expected_club_speed + club_speed_tolerance
372374 potential_club_speeds = [
373375 s for s in speeds
374- if ( expected_club_speed - club_speed_tolerance ) <= s <= ( expected_club_speed + club_speed_tolerance )
376+ if club_speed_min <= s <= club_speed_max
375377 and s < peak_speed * 0.85 # Must be significantly less than ball speed
376378 ]
377379
@@ -380,7 +382,7 @@ def _process_shot(self):
380382 club_speed = max (potential_club_speeds )
381383
382384 # Validate: club speed should be realistic
383- if not ( self .MIN_CLUB_SPEED_MPH <= club_speed <= self .MAX_CLUB_SPEED_MPH ) :
385+ if not self .MIN_CLUB_SPEED_MPH <= club_speed <= self .MAX_CLUB_SPEED_MPH :
384386 club_speed = None
385387
386388 # Ball speed is the peak
@@ -508,7 +510,7 @@ def main():
508510 print ("Radar Configuration:" )
509511 for key , value in info .items ():
510512 print (f" { key } : { value } " )
511- return
513+ return 0
512514
513515 print ("Ready! Swing when ready..." )
514516 print ("Press Ctrl+C to stop" )
@@ -565,4 +567,5 @@ def on_live(reading):
565567
566568
567569if __name__ == "__main__" :
568- exit (main ())
570+ import sys
571+ sys .exit (main ())
0 commit comments