DovesLapTimer 4.0.0
GPS-based lap timing Arduino library — go-karts to race cars
Loading...
Searching...
No Matches
DovesLapTimer.h File Reference
#include "ArxTypeTraits.h"
+ Include dependency graph for DovesLapTimer.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  crossingPointBufferEntry
 
struct  DirectionDetector
 
class  DovesLapTimer
 

Macros

#define COURSE_DETECT_DISTANCE_TOLERANCE_PCT   0.25
 
#define COURSE_DETECT_MAX_REJECTIONS   3
 
#define COURSE_DETECT_MIN_DISTANCE_METERS   200.0
 
#define COURSE_DETECT_SPEED_THRESHOLD_MPH   20
 
#define COURSE_DETECT_WAYPOINT_PROXIMITY_METERS   10.0
 
#define CROSSING_LINE_SIDE_A   -1
 
#define CROSSING_LINE_SIDE_B   1
 
#define CROSSING_LINE_SIDE_EXACT   0
 
#define DETECT_STATE_CANDIDATES_READY   3
 
#define DETECT_STATE_DETECTED   4
 
#define DETECT_STATE_IDLE   0
 
#define DETECT_STATE_WAITING_FOR_SPEED   1
 
#define DETECT_STATE_WAYPOINT_SET   2
 
#define DIR_FORWARD   1
 
#define DIR_REVERSE   2
 
#define DIR_UNKNOWN   0
 
#define MAX_COURSES   8
 
#define METERS_TO_FEET   3.28084
 
#define WAYPOINT_LAP_BUFFER_SIZE   50
 
#define WAYPOINT_LAP_MIN_DISTANCE_METERS   100.0
 
#define WAYPOINT_LAP_PROXIMITY_METERS   30.0
 

Typedefs

using TRITYPE = double
 

Enumerations

enum  LineDetectResult { LINE_DETECT_NONE , LINE_DETECT_IN_ZONE , LINE_DETECT_COMPLETED }
 

Macro Definition Documentation

◆ COURSE_DETECT_DISTANCE_TOLERANCE_PCT

#define COURSE_DETECT_DISTANCE_TOLERANCE_PCT   0.25

◆ COURSE_DETECT_MAX_REJECTIONS

#define COURSE_DETECT_MAX_REJECTIONS   3

◆ COURSE_DETECT_MIN_DISTANCE_METERS

#define COURSE_DETECT_MIN_DISTANCE_METERS   200.0

◆ COURSE_DETECT_SPEED_THRESHOLD_MPH

#define COURSE_DETECT_SPEED_THRESHOLD_MPH   20

◆ COURSE_DETECT_WAYPOINT_PROXIMITY_METERS

#define COURSE_DETECT_WAYPOINT_PROXIMITY_METERS   10.0

◆ CROSSING_LINE_SIDE_A

#define CROSSING_LINE_SIDE_A   -1

◆ CROSSING_LINE_SIDE_B

#define CROSSING_LINE_SIDE_B   1

◆ CROSSING_LINE_SIDE_EXACT

#define CROSSING_LINE_SIDE_EXACT   0

◆ DETECT_STATE_CANDIDATES_READY

#define DETECT_STATE_CANDIDATES_READY   3

◆ DETECT_STATE_DETECTED

#define DETECT_STATE_DETECTED   4

◆ DETECT_STATE_IDLE

#define DETECT_STATE_IDLE   0

◆ DETECT_STATE_WAITING_FOR_SPEED

#define DETECT_STATE_WAITING_FOR_SPEED   1

◆ DETECT_STATE_WAYPOINT_SET

#define DETECT_STATE_WAYPOINT_SET   2

◆ DIR_FORWARD

#define DIR_FORWARD   1

◆ DIR_REVERSE

#define DIR_REVERSE   2

◆ DIR_UNKNOWN

#define DIR_UNKNOWN   0

◆ MAX_COURSES

#define MAX_COURSES   8

◆ METERS_TO_FEET

#define METERS_TO_FEET   3.28084

◆ WAYPOINT_LAP_BUFFER_SIZE

#define WAYPOINT_LAP_BUFFER_SIZE   50

◆ WAYPOINT_LAP_MIN_DISTANCE_METERS

#define WAYPOINT_LAP_MIN_DISTANCE_METERS   100.0

◆ WAYPOINT_LAP_PROXIMITY_METERS

#define WAYPOINT_LAP_PROXIMITY_METERS   30.0

Typedef Documentation

◆ TRITYPE

using TRITYPE = double

GPS-based lap timing library for go-kart and racing applications. This library does NOT interface with your GPS, simply feed it data and check the state. Supports start/finish line detection, 3-sector split timing, pace comparison, and distance tracking.

The development of this library has been overseen, and all documentation has been generated using chatGPT4.

Enumeration Type Documentation

◆ LineDetectResult

Enumerator
LINE_DETECT_NONE 
LINE_DETECT_IN_ZONE 
LINE_DETECT_COMPLETED