diff --git a/test-data/ahrs/ahrs_replay.go b/test-data/ahrs/ahrs_replay.go index 55cf7d41..a42f9edc 100644 --- a/test-data/ahrs/ahrs_replay.go +++ b/test-data/ahrs/ahrs_replay.go @@ -342,8 +342,8 @@ func heartBeatSender() { func main() { crcInit() - if len(os.Args) < 4 { - fmt.Printf("%s \n", os.Args[0]) + if len(os.Args) < 5 { + fmt.Printf("%s \n", os.Args[0]) return } startsec, err := strconv.Atoi(os.Args[1]) @@ -352,6 +352,12 @@ func main() { return } + replayspeed, err := strconv.Atoi(os.Args[4]) + if err != nil { + fmt.Printf("invalid: %s\n", os.Args[4]) + return + } + startnsec := int64(startsec) * 1000000000 ahrsfp, ahrsIdx, err := seekTimestampInAHRS(os.Args[2], startnsec, 1000000000) // Find the index with 1.00s tolerance. @@ -414,9 +420,9 @@ func main() { fmt.Printf("%f %f\n", pitch, roll) s := fmt.Sprintf("XATTStratux,%f,%f,%f", gps.Course, pitch, roll) outConn.Write([]byte(s)) - time.Sleep(time.Duration(ahrs.Timestamp - lastTs)) + time.Sleep(time.Duration((ahrs.Timestamp - lastTs)/int64(replayspeed))) lastTs = ahrs.Timestamp // Now we're working with synced samples. } -} \ No newline at end of file +}