Showing posts with label speedsurfing. Show all posts
Showing posts with label speedsurfing. Show all posts

Wednesday, February 8, 2023

Power + Speed + Lucky Gust = Speed

 We drove four days to get to Lake George, including one stretch where we drove 27 hours straight through because all the "road houses" near the Nullabor were fully booked). Getting to the launch requires driving several miles on a dirt road and sand, and crossing a little stream. At the launch, you are greeted by a very special smell that makes you question why in hell you wanted to go here. To start sailing, you first have to walk through a stretch of mud. When you get off the board, more often than not you are in knee-deep mud that wants to keep you, or at least suck your booties off your feet. When you finally manage to get your feet onto the board, they are covered in mud and/or weed that is so thick that your feet won't fit into the foot straps. The same question pops up again and again: why???

But despite all this, there are dozens of windsurfers from all over Australia who come to Lake George every year. A picture from our last trip gives a clue why:

That's Nina sailing Lake George in February 2019. The water level was almost a foot higher than this year, and many speedsurfers were complaining how choppy it was. We really did not understand what they were talking about - it looked plenty flat to us! 

This year, though, the lower water level means there are very large stretches where the water is glassy, even in 30 knot gusts. I thought that the super-flat water, together with some strong wind, is all it takes to break the magic 40 knot barrier that separates wannabe speedsurfers from "real" speedsurfers, and got quite frustrated when that was not the case. I ranted about my frustration in my last post, and fortunately, the post was read by Boro, who decided to give me a bunch of tips on how to go faster. Boro has done more than 40 knots many times in the US at much less ideal locations, and went on to get a top speed above 50 knot at the speed channel in Luderitz. 

Some of the things he suggested were similar to things I had heard many times before, and already tried to do, like going very deep downwind. But he made one suggestion that went against what I had heard from multiple sources before: to move the mast base far forward in the mast track. The common advice I had in my head was "mast track back for speed". On my borrowed Mistral 95 speed board, I had so far put the mast base in the middle of the track, and only moved it a couple of centimeters back and forward, without seeing a big difference.
 
Boro and I had a longer discussion about this (and his other tips) via Messenger, and he explained his rationale in detail. He summarized what it boiled down to a simple formula:

Power + Control = Speed

My two recent "fail" session, where many others went faster than 40 knots but I was stuck in the mid-30s, helped me really understand this. In the first session in Albany, I had plenty of control, but no power: I had rigged a 5.5 m sail, added a bit too much downhaul, and never released the outhaul to bag the sail out. I was perfectly in control in speed runs, but could not get the board to reach the speed I had gotten the day before, in several knots less wind. 

In my second "fail" session here at Lake George, I had plenty of power with my 6.2 m sail, but I was constantly fighting for control. I was holding back the entire time, doing just 25 knots when I should have done more than 30 on beam reaches. So when I did a few deep downwind speed runs in gusts, I started out too slow to reach top speeds, and was still too freaked out.

Interestingly, with our slalom boards at home, I generally had the mast base all the way forward. We had enough sessions in Texas over the last few years that I knew that this was the position that gave me the best control, and the most speed. But compared to here, Corpus Christi is quite choppy, and I am using a very different board, so I never had even tried the mast base all the way to the front.

Fortunately, it got windy the same day that Boro and I had the enlightening speed discussion. The forecast had only predicted 18-20 knots, but averages were closer to 25, with some stronger gusts. I pinched my way up from the Cockies launch to the glassy water near 5 Mile, and then further upwind towards Packing Point to the start of the speed run. I had headphones on that were connected to a phone running GPSLogit and announced my speed every 2 seconds. On the very first speed run, I heard the magic "40" announced three times in a row, and started woohooing out of the top of my lungs. When I got of at the end of the run, there was a small disappointment, though: the ESP GPS loggers showed a 2 second top speed of only 39.96 and 39.97 - so close! But that was already more than a knot faster than my previous PB, I was still fresh, and the wind was supposed to increase.

On the second speed run, I only got 37 knots: I had jibed at the end of the upwind leg, and forgotten to release the outhaul for the speed run. So just having the outhaul pulled in for going upwind made about 3 knots difference!

On the third speed run, with the outhaul released, I got lucky. I was in glassy water in the middle of the speed run, hearing "38" announcements, when a nice gust hit. Thanks to the forward position of the mast foot, I was in control, and the board accelerated until I heard "41" on the headphones. I finally had broken 40 knots! I was so happy that I momentarily forgot I was still going fast and let my attention slip, so the board did a huge wheelie, with the nose pointing up at a 45 degree angle and only the fin in the water. The head phone was still announcing "41", so a crash might have hurt, but I was too happy to be scared. Fortunately, I got things back under control without crashing. When checking the GPS units, both showed a top speed of 41.4 knots - I had smashed the 40 knot barrier!

I stayed on the water for another hour or two to get some more runs to improve my 5x10 second result, and ended up with 38.5 knots - almost exactly the same speed as my previous 2 second best. What a great day! I also played around a bit with the mast foot position, and concluded that about 3 cm from the front of the track seemed to work better than all the way in front. Nina also set two PBs for 2 and 5x10 seconds that day, but was a tad disappointed that she was several knots slower than I had been. When we later checked what speeds the other sailors had posted, there were a total of 51 postings from Lake George on the GPSTC site. Only a small number of sailors had posted 40 knot speeds for the day, and Nina had beaten quite a few of the other speeds. My speed ended up within about one knot of the top speed for the day, and only four speedsurfers posted speeds faster than mine - quite an amazing result, considering that a lot of guys here have previously done 44 to 49 knot top speeds! But despite the lucky gust I got, which must have been at least 30 knots, it was a "lighter" wind day compared to what a lot of these guys are used to. I also had just one run with 2 second averages above 40 knots (although a few others were very close), so I must have gotten a lucky gust. So we'll have to modify Boro's formula:

Power + Control + Lucky Gust = Speed

Here are my GPS tracks for the day:
The entire region in the bottom left where the tracks are green, which indicates a speed above 30 knots, was glassy even in the 30+ knot gusts - a stretch about 600 m long. In the approach, the "chop" was somewhere between a couple of centimeters and at most 10 cm high.

Besides moving the mast foot, a few other tips and lessons also helped getting faster. That includes using the adjustable outhaul to really bag out the sail on speed runs. But perhaps the next most useful thing for me was to use ear plugs to tune out the noise of the wind. In the past, I had used in-ear earphones that did that, but all of these "waterproof" earphone died of corrosion sooner or later. Now, I am using bone conduction earphones that have held up very well, but leave me exposed to wind noise. Several people, including Peter "waricle", said that ear plugs helped, so I tried them for this session, and they made a big difference. The "the wind is really loud so it must be crazy windy" factor fell away, and so did one reasons to "be careful" (read: slow). I am generally quite sensitive to noise, and very easily distracted by it, so maybe the earplugs worked better on me than they would for others - but whatever it is, I'll take it.

Yesterday, I was a bit tired, partly from the previous day's effort and partly from fighting a cold, so I decided to take it easy. It looked quite windy at the lake, but only a few 40s were to be had yesterday, with the top speed requiring a 7.0 m sail and 63 cm board. I used a 5.5 m, which had me comfortably powered. Since the sail was easy to jibe, and the speed strip was quite crowded, I decided to go for an hour. I was inspired by Kato, who has done a 29.2 hour the day before. Not that I can compare myself to him, he sails in a different league, but at least I could copy his approach. Here's what my tracks for the hour looked liked:
The tracks show that I made a bunch of mistakes. I had a wet jibe near the beginning, where it took me almost a minute to shake of the weeds and get started again. I also started going upwind again too early, thinking I had sailed long enough. Next time, I'll need to set up the GPS to track the hour! In the best 45 minutes of the run, my average speed was 26.5 knots. With my mistakes, the hour came out at 25.66 knots - a 0.6 knot improvement over my previous PB. Not bad for an easy day!

Compared to Kato's hour tracks, several things pop out. His average speeds were about 2 knots faster than mine, and more consistent. He also did fewer jibes, even though he sailed more than 3 miles further, since he got closer to the lake edges in many runs. But the biggest difference is the quality of his jibes. His jibes are more consistent, and his minimum speed is several knots higher. Even if we consider that he used a GT31 which records filtered data at 1 Hz while I used a u-blox based logger that records at 5 Hz with a lot less filtering, his minimum speeds were a couple of knots faster. So before trying another hour, I will definitely need to work on my jibes! Thanks to discussions with Mike (Decrepit), I already have a plan on what to do. I'll leave you with another 4 year old picture, jibing on Lake George:

 


Saturday, June 25, 2022

GPS Speedreader 2

 I have just posted a new version of GPS Speedreader at ecwindfest.org/GPS/GPSSpeedreader.html. Since this version adds a feature specifically for dual GPS units, like the ESP/e-ink loggers I mentioned in my last post, I changed the version to 2.0. This version also has a few additional new features, including support for the FIT file format, which is used my many GPS watches. In this post, I'll explain some of the new features, and give examples where they help to improve the accuracy of GPS speeds.

"Intelligent Averages" for dual GPS units

When a speedsurfer in Belgium developed a cheap DIY GPS unit with an e-ink display that can be mounted on both sides of a boom, making it easy to check the current speed when windsurfing, my friend Mike from the GPS Team Challenge suggested to calculate speeds as averages of the two GPS units. In theory, the average of two separate measurements should be more accurate than a single measurement. We discussed a few ideas about how to calculate the averages, and came up with "intelligent averages". Let's first look at some speed data from a recent foiling session:

The two GPS units mounted on each side of the boom gave nearly identical speeds for the vast majority of points. There were some ups and downs, but they were well synchronized between the units, which indicates that they were probably real changes in speed. Sometimes, these speed changes may be due to boom movements - pumping, for example, is easy to spot. In the graph above, the little spike as the speed drops is due to moving the rig during a tack. When data look like in the graph above, speed averages will be very similar between the two units, and the averages will also be very close.

But that's not always the case. Here is another example from a top-10 second run from a different session:

Here, the green speed track shows a couple of pronounced spikes. The little inset shows the speeds and error estimates for the first spike. For the two points where the green speed is about 1.5 knots higher than the red speed, the error estimates are roughly 50% higher for the green data. Since one of the two tracks is clearly more accurate than the other, it does not make sense to calculate a plain average - instead, GPS Speedreader uses the only speed of the more accurate data. That's the "intelligent" part of the "intelligent average" (the blue lines).  Not really hard, so maybe "not dumb" would be a more accurate description, but "intelligent" sounds better.

In the example above, there was a reason why the green GPS had worse data than the red: the green GPS was using only 2 satellite systems (GPS + GLONASS), while the red GPS unit used 3 satellite systems (GPS + GLONASS + Galileo). In the region shown, the additional 5-6 satellites from the Galileo system helped the GPS to be more accurate.

The effect of the artifact in the picture above was small, between 0.1 and 0.2 knots over 10 seconds. But sometimes, we can see much larger differences between two boom-mounted GPS units:

This section is from a crash, where the boom side that the red GPS was on ended up under water, and the boom side with the green GPS stayed above water. Under water, the red GPS lost track of most of the satellites, at times only being down to just 3 or 4 satellites. In contrast, the green GPS stayed above water the entire time, and kept tracking 16-17 satellites. The green GPS correctly reported that my speed dropped from 15 knots to almost 0 in less than a second - but the red GPS kept reporting speeds around 15 knots, eventually even increasing to 27 knots. Very interesting, considering both GPS units were attached to the same boom!

This is very typical behavior for u-blox GPS units in windsurfing crashes. Keep in mind that GPS chips were developed for cars, not for speedsurfing. Cars very rarely end up under water, and when they do, GPS accuracy will be the last thing the driver worries about. But cars often drive under bridges or through tunnels, where they loose GPS reception for a short time. In these situations, the "dead reckoning" behavior that the GPS chip shows is perfectly reasonable - most likely, the car will keep going at about the same speed. 

But in windsurfing crashes where the GPS ends up under water, things are different, and GPS chips that "fantasize" about steady or increasing speeds can be a problem. If you look closely at the data in this example, you can see that the error estimates rose quite slowly after the crash - it took almost 8 seconds before the +/- estimates reached 4 knots. An error estimate of 4 knots happens to be the default value for speed accuracy filters in older versions of GPS Speedreader, since this threshold makes sense for Locosys GPS units like the GW-60 watch. But for u-blox based GPS units, it it much too high, as this example shows (and I have seen examples where crashes led to incorrect GPSTC postings, and at least one false personal best).

In GPS Speedreader version 2, this problem is addressed by using different accuracy filter thresholds for u-blox based data. For typical u-blox data (5 Hz or higher), the accuracy threshold has been reduced from 4.0 to 1.2 knots. In the example above, this filters out the speeds in cells with a red background (the blue line is where the error estimates exceeds the old threshold of 4.0). The file format is used to determine which threshold should be used - .ubx and .aoa files use the u-blox threshold, other file formats use the higher (Locosys) threshold.

While it is uncommon for "dead reckoning artifacts" after crashes to lead to errors in top speeds, these artifacts can often distort the total distance for a session. The use of dual boom units and the "intelligent averages" practically eliminates this problem, since at least one of the two units will typically keep good satellite reception, and therefore report accurate speeds.



Thursday, January 27, 2022

Measuring Speed Errors: Sampling Frequency

This is the first of several posts where I look at the accuracy of speed measurements and the sources of errors in detail. To get started, let's look at the tracks and speed graph from an impressive speedsurfing session (click on images for a larger version):

This is the track from a recent speedsurfing session in Tasmania, Australia, available at ka72.com. The section for top speed runs right next to a sandbar is quite short: the blue line in the image is only about 220 m long. But despite the short runs, the speedsurfer hit more than 40 knots in every speed run, and reached a top speed of 44.3 knots. 

I am using this session as an example because it has some very rapid speed changes: each speed run took only about 40-50 seconds. With rapid speed changes like this, we obviously must take speed measurements often enough to get the correct speed, or our measurements will be off. In signal processing, the term "Nyquist theorem" is often used to describe this issue; "sampling rate" that are too low for the signal create "aliasing errors".

A zoom-in on the top 10 second speed run illustrates this:
The blue curve shows the original speed measurements, which were done ten times per second (at 10 hz). The red curve used only every second point of the original data, corresponding to measuring the speed at 5 hz. The green curve used just every 10th point, and shows what the data would look like at 1 hz (the rate of the Locosys GT-31 that was the "Gold standard" GPS device for many years). 

The graph shows clearly that measuring speed just once per second does not capture the details of getting faster and slowing down very well - but how much "aliasing error" do the slower sampling rates introduce? Here is what the calculated top speeds at 1 hz, 5 hz, and 10 hz look like for the categories used in the GPS Team Challenge:

Interestingly, the differences relative to the 10 hz numbers are quite small: 0.064 and 0.026 for the top 2 seconds; about 0.01 knots for the 5x10 second average; and about 0.02 knots or less for the other categories.

But looking at just one result for each categories leaves us a bit at the mercy of chance - perhaps the difference were low for the fastest 2 second run, but larger for other speed runs? So let's have a look at the fastest 5 runs in the 2 second, 10 second, and nautical mile categories:
That's a lot of numbers, but we can just plug them into a spreadsheet, calculate the differences relative to the 10 hz numbers, and then find the average and maximum differences. Here are the results for the speed session:

The average differences measured for the 5 hz data range from about 0.06 knots for 2 second runs to 0.002 knots for the nautical mile. The largest observed difference is 0.131 knots for the 4th-fastest 2-second run. Here's a zoom in of this region (again with blue = 10 hz, red = 5 hz, green = 1 hz):
Basically, most 5 hz values used in this region happened to be higher than the points that were not used, so the 5 hz average ended up higher than the 10 hz average. Over longer periods, point-to-point variations will not show the same "up-down-up-down" patterns as this region, so it will become less and less likely that the sub-samples are mostly higher or lower values, which leads to the drop in the observed differences.

The numbers above are for just one file. What happens if we look at more GPS tracks - from other spots, other people, other units? To find out, I repeated the analysis above with a total of 10 files, which include 40+ knot sessions from Albany and Lake George, as well as a number of slower sessions from other spots. Here are the results:

The numbers cover quite a range - from an average "aliasing error" of 0.004 knots when comparing 5 hz and 10 hz data for nautical mile results, to a maximum of 0.349 knots when comparing 1 hz data to 10 hz data for 2 second runs. Of the 10 files in this analysis, 4 showed differences near or above 0.2 knots for 2-second runs (when looking at the top 5 runs in each file). In other words, the chances that a 2-second result obtained from 1 hz data is off by 0.2 knots or more are quite high. 
In contrast, the observed differences between 5 hz and 10 hz are much smaller - typically around 0.02 knots. One one of the fifty runs included in this analysis had a difference of 0.131 knots; all other runs had a measured difference below 0.1 knots.

But what do these numbers mean? To put them into perspective, I looked at differences from runs that were recorded with 2 GPS units at 10 hz speeds. I included a total of 10 files from 5 different sessions, recorded by 3 different speedsurfers. Here are the results:

The next graphs compare our measured estimates of "aliasing" errors to the measured differences between 2 units - first the average differences:

In each category, the measured "aliasing error" is at least twofold lower than the observed difference between two units. The picture for the observed maximum differences is similar:
The analysis above is the first actual measurement of "aliasing error" in speedsurfing. The result indicates that, compared to the current accuracy of the best GPSTC-approved units, the aliasing error is small for 5 hz data. In contrast, the measured error for 1 hz data is larger than the typical "2 unit difference". In absolute terms, this primarily affects 2 second results, and to a lesser effect 10 second runs. 

What the analysis above did not address was the impact of sampling rate on the accuracy estimates of the final results due to random and non-random errors in the speed measurement from other sources. This is a topic that can appear very simple ("more is better"), but can actually be quite complex when looking at the underlying assumptions and error sources in detail. I plan to address some of these issues in future posts.











Wednesday, January 1, 2020

GPS Team Challenge 2019

In my recent review of 2019, I did not mention the GPS Team Challenge results for the year - but they deserve mentioning. In the international ranking, our "United Speedsailors of America" team came in 20th among 57 competing teams.

That's our best rank since the team was formed by combining a few smaller teams from all over the USA. One thing that helped the team improve over previous years was that more windsurfers contributed to the monthly scores (where the best results from 2 windsurfers on the same day are ranked against all other teams in 6 categories). We had 10 team members collection the coveted "jelly beans" - definitely a team effort!

There's also a bit of friendly competition within the team, and the GPSTC web site shows individual rankings for the year. Thanks to our fantastic trip to Australia and a nice long distance session in Hatteras, I was able to improve my personal bests (PBs) in all 6 categories in 2019. But that still was not enough to beat Boro in the US rankings for the year:

But I got a couple of first places, and second places in the four other categories, so I'm quite happy with that - especially considering that quite a few of the windsurfers further down in the rankings are much better speedsurfers than I am!

The lovely Nina also improved all her PBs in 2019, which included reclaiming the (unofficial) women's world record for distance. She also got the #2 spot for the most technical speed category, alpha 500 (speed over 500 meters with a jibe in the middle), and #3 and 4 spots in all other categories, with 29 women from all over the world competing in 2019:

That gave her the #1 spot in the yearly overall rankings! While the competition for second to sixth place was close (29 to 33 points), her 16-points total separated her nicely from the other women. Congratulations!

Sunday, September 8, 2019

GPS Device Poll - Initial Results

Below are some initial results from the device poll. 86 people answered the questions in less than a day.



Saturday, September 7, 2019

GPS Team Challenge Device Poll

Regular readers of this blog may have discovered that I love the GPS Team Challenge.  One of the issues that comes up on a regular basis on the "GPS and Speed talk" forum is the question about which GPS devices are allowed. On one hand, the competition aspect requires high accuracy, which means expensive devices which often have drawback; one the other hand, there is a desire for inclusiveness and making it easier and cheaper for new members to join.

One option that has been discussed is to create a two-tier system where postings from just about any GPS device are allowed, but only postings from approved, highly accurate devices count for the competition, that is the monthly and individual rankings. The "other" speedsurfing site, gps-speedsurfing.com, has a similar system in place for "normal" and "record" postings.

I have create a short poll to see what current and potential GPSTC members think about allowing such "two-tiered" postings. You can fill it out here. Below are screen shots:
Only the first 2 questions are required, the rest is optional. Here's the second section:

I'm planning on posting the poll results on this blog and on the Seabreeze forum .. if anyone bothers answering the questions! Here's the full address of the poll: https://docs.google.com/forms/d/e/1FAIpQLSejmAe_8ddsp8qawqZ18h5xpuvzbVRlaM5DI3entYkp4seqJg/viewform

Monday, June 24, 2019

GPS Tracks in Google Earth

One of the features in GPS Speedreader I like is the ability to export GPS tracks to Google Earth to create pretty "crayon artwork", as Fangy call the images. Here's an example:
There are a few options to customize what you see:
For example, you can set a minimum speed, so that parts where you were going slow are all shown in the same color. A variety of different color schemes are also available. Here's the "high contrast" colors for the same track:

For the lower graph, I had selected the "Include time stamps and speeds" checkbox in the export options. This enables the time line in Google Earth, so you can "play" your tracks. It also write the doppler speed data to the exported file, which you can see as a graph at the bottom of the image (to see the graph, you have to right-click on the "Speed graphs" item in the side bar, and select "Show elevation profile"; then you'll have to click on the "Doppler speeds" in the graph panel). The speed graph also reacts to moving the mouse over it by showing an arrow with the speeds in the image above. You can also select regions in the graph to get average speeds for the region. Go ahead and play with it - downloads are free at https://ecwindfest.org/GPS/GPSSpeedreader.html.

Another new feature in the just-released version 1.2.8 is support for .sbn files from Locosys GT-31 GPS devices.

Friday, May 31, 2019

GPS Speedreader

In recent years, I had gotten a bit frustrated with the existing GPS analysis software. For some of the GPS prototype testing, there were too many bugs that just made the life hard. Furthermore, the "older" software that was developed almost 20 years ago can be painfully slow when looking at new, higher-rate GPS data from the Locosys GW60 or the Motion GPS.

So I wrote my own, and I'm releasing it to the public today. It's free software, supplied without any warranties - but if you want to send me "beer money" to support the further development, that's great! There's a donation button on the  GPS Speedreader Help page for that. 

This post will show a few screen shots, and point out a few useful functions in GPS Speedreader. Here's the main window:
The session shown is my recent 12-hour, 306 km session where Nina grabbed the #1 spot in the GPSTC women's ranking for distance. It's a large file, and trying to see the 1-hour results in GPS Results on my Windows computer took more than 5 minutes. In GPS Speedreader, the file opens in less than half a minute, which includes calculating the results for all GPS Team Challenge categories.

The main window is divided in a left side that shows the GPS points on the top, and the category results on the bottom. The right side can show up to three graphs: tracks on top, doppler speeds in the middle, and error estimates on the bottom. Clicking anywhere will select the point or region; here, I have selected the top 2-second speed. You can zoom in using the mouse scroll wheel or trackpad gestures:
There are a few different dialogs where you can choose what you see, what your time zone is, and so on. Here are the general preferences:
GPS Speedreader was developed specifically with the GPS Team Challenge in mind, and with a lot of feedback from GPSTC advisors. It's pretty easy to post session results to the GPSTC - just select "View results in browser" from the "File" menu. This will open up a browser page with the results:
At the bottom of the results, there's a button. Click on it, and a session page on GPSTC will open, with all the numbers filled in for you. You just have to add a comment and press the "Post" button. 

GPS Speedreader does not have all the functions that other programs have. For example, background images are not supported, and there is no "Jibe analysis" like in GPS Action Replay Pro. I will probably add some more features over time, based on feedback on the Seabreeze GPS forum. But with summer starting here, I'll hopefully spend more time on the water soon!

A couple of things are unique to GPS Speedreader, though, and deserve mentioning. One is the "Compare files" function which I wrote to make comparing different GPS units easy. You can open two (or more) GPS files from the same session, and Speedreader will compare the results in all GPSTC categories. It will even compare the error ranges, and flag any discrepancies with a yellow, red, or orange background. If you want to have a close look at the data, you can pick which columns are shown in the data table:
But that may be more for geeks. Perhaps a thing that's more useful for many is that Speedreader supports opening files by drag and drop. On Mac and Windows, you can drop GPS files onto the application icon; on Mac, Windows, and Linux, you can drop files onto the main window.

To read more about GPS Speedreader, check the online help at https://ecwindfest.org/GPS/GPSSpeedreaderHelp.html. To download the program and start playing with it, visit https://ecwindfest.org/GPS/GPSSpeedreader.html.

Tuesday, May 21, 2019

Oops She Did It Again

Seven years ago, Nina briefly held the #1 spot in the women's distance ranking on the GPS Team Challenge - the unofficial women's distance world record for windsurfing. Her distance of 202.79 km was beaten a few month later by  speedfalconster, who sailed 207.55 km - barely 3 miles more. Her record latest until 2016, when the Australian speedsurfer Cheryl sailed 226 km. Cheryl sailed at Albany, a wonderfully flat spot that is in my top-3 list of the best windsurfing spots in the world.

Nina tried to get the record back a few months later during our regular spring trip to Hatteras. During the attempt, she also competed in the first Hatteras long distance race, where she won the Women's Open division. Alas, the waiting for the start of the two races ended up costing her the distance record when the wind died in the afternoon, just three kilometers shy of Cheryl's record. Another couple of months later, speedfalconster sailed 248 km to be back on top.

Nina had talked about another distance attempt a few times before, although she'd rather keep working on freestyle tricks (unlike me, she considers sailing back and forth for hours as "boring"). However, we never quite got the right conditions .. until this forecast came along:
Planing winds all day, and 14 hours between sunrise and sunset! I was definitely doing distance! So Nina decided to play along and forget about freestyle for a day.

The setup was good, but not quite perfect. One issue were the relatively weak winds in the morning; a bigger issue were the strong winds in the afternoon, and the southwesterly direction which means high water levels and more chop. Unlike earlier distance attempts, we did not have a house right on the Sound, so some of the daylight time would be wasted rigging and derigging. Perhaps even worse was that our fitness levels were still just mediocre, after having fought several severe colds since returning from Oz.

But when we got up at 5 am Monday morning, the local meters showed 18 mph wind - it was a go! We left the house just as the sun was coming up, and started sailing at 7 am. Believing that the predicted forecast would happen, we both rigged a bit small - 6.3 and 7.0. That meant some pumping  from time to time to get going, and slim chances to plane through jibes.

We sailed for about 5 hours, knocking off the first 150 km with relative ease. During lunch break, the wind dropped, shifted, and then picked up. Here's the wind graph from the "KHK Resort" meter for the day:
I downsized from 112/7.0 to 99/6.3 by grabbing Nina's gear. However, the wind in the high 20s meant lots of chop, and I found myself blowing jibes and not feeling comfortable anymore. What's the point of sailing for 12 hours if you're not having fun? I replaced the slalom board with my Tabou 3S96, which handles chops a lot better. I kept he cambered race sail (Loft RacingBlade 6.3), but the combo worked surprisingly well, and I enjoyed the next few hours of sailing. Nina switched to her freestyle gear - Fanatic Skate 86 and Idol 4.5, which she often sails in crazy conditions. We sailed these combos until we both had sailed about 250 km - Nina had her World Record back! But she was not yet tired and wanted to go for another 60 km. I hoped to add another 100 km, but by then, the wind and chop had increased to levels where our sails where just too big. Nina downsized her Idol to 4.0, and I switched to a 4.7 wave sail.

Then, things did not go quite as planned. An hour later, Nina had to stop because her hernia was acting up. Her total distance for the day was 277 km, about 30 km above the previous record. Nice!

I never got comfortable with the 4.7 wave sail, going between underpowered to overpowered in every run. Maybe the difference from the super-stable race sail was too much; maybe the chop had gotten too high; or maybe I was just getting tired, but I was getting slower, and spent a lot more energy than before. As the sun dipped lower on the horizon, I also saw a lot more wild life - including jumping, spear-like fish that are know to occasionally pierce windsurfers ankles. So I decided to stop an hour before the sun went down, so we'd be able to put all the gear back into the van while it was still light. Here are my GPS tracks for the day (click on the image for a larger version):
These are Nina's tracks:
Here's the women's ranking for distance on the GPS Team Challenge:
Today, the wind turned to NE, which means much shallower and flatter water. We went for a quick sail, and it was lovely - if only we would have had such flat water yesterday! But NE wind here rarely lasts all day - today, it lasted just a few hours. Maybe we have to go back to Australia for the next distance attempt :-).

Sunday, April 7, 2019

Hour Analysis for GPSTC

When playing around with GPS prototypes, I developed my own analysis software to get around limitations and bugs of commonly used programs like GPS Action Replay (GPSAR; version 5.28) and GPSResults (version 6.170). Eventually, I shared my software ("GPS Speedreader") with a few similar-minded folks, so the question came up if Speedreader is accurate enough for posting to the GPS Team Challenge (GPSTC).

That lead to a validation study where I compared the results from more than 50 GPS files, most of them random downloads from ka72.com. This lead to a few interesting observations which might be of interest to anyone who posts sessions to GPSTC. Especially for the "1 hour" category, I discovered a few surprising things.

One of the tracks that stood out was the one you can download from https://www.ka72.com/Track/t/381385

Here's what the speed track looks like if you open it in GPSResults:
The first surprise was that the number GPSResults gave for one hour was lower than the 9.082 knots that ka72.com reported - only 8.466 knots! I checked in GPSAR, and it also reported 8.47 knots. Then I remembered that GPSResults used a minimum speed filter of 5 knots by default. When I disabled it by setting it to 0 knots, GPSResults reported a 1-hour speed of 9.015 knots - much closer to ka72.com. So the first big surprise was:
GPS Action Replay uses a 5 knot minimum speed filter for 1 hour!
I have always used GPSAR for analyzing my files, and never realized that. Even worse, unlike GPSResults, GPSAR does not let you disable the minimum speed setting.

There are different views of the 5-knot minimum filter in speedsurfing. When the older analysis programs were originally written almost 2 decades ago, the GPS Team Challenge did not yet exist. Speedsurfing was about top speed, 5x10 second averages, and 500 meters speed. Results for longer distances, longer times, and total distances were perhaps calculated, but mostly ignored. Furthermore, the GPS units available back then were quite prone to report speeds of 1-2 knots even when stationary. In this context, a 5-knot minimum speed filter makes sense.

But things have changed since then. Some clever Australians developed the GPS Team Challenge to get some team competition going. Having only the established disciplines 2 second, 5x10 seconds, and 500 meter disciplines would have given teams with spots like Sandy Point an unfair advantage, so they added disciplines that are better suited for other spots to even things out: alpha 500; the nautical mile (speed over 1852 meters); one hour average speed; and total distance. To win the monthly or yearly ranking, teams must post good results from all disciplines, since the overall score is computed from the ranking in each category. With 6 quite different categories and a requirement for posts from 2 sailors before it counts, it really takes a team to do well!

Besides the increased emphasis on total distance and long-distance speed on the GPSTC, another change happened over time: GPS units became more accurate. Modern GPS units like the Motion GPS rarely report speeds above 0.1 knots when stationary. Taken together, this makes a 5-knot minimum speed filter a very questionable thing indeed. A good one-hour results is above 20 knots, so it requires sailing about 40 kilometers. At most sailing areas, this requires about 20-40 jibes - sometimes even more. Sure, some of the best speedsailors in great conditions can plane through 40 jibes in a row and sail without crashing for an hour, but most of the time, one-hour runs will include jibes where we loose most speed, or periods of slogging in lulls. Why on earth should those times not count to the 1-hour average? In the example above, the slogging time was not very long, but still, including speeds below 5 knots increased the 1-hour average by more than 0.5 knots.

My conclusion from this is that I will not use GPSAR again for posting to GPSTC if there is even the slightest chance that my distance numbers matter for the monthly rankings.

But the story does not end here. In the track above, my Speedreader gave an even higher number. It selected a slightly different region, which upon close inspection made more sense. So the suspicion arose that there might be undiscovered bugs in the old code for 1-hour speed calculations. When I looked at more files, I found several examples that supported this conclusion, and even provided hints about why the older algorithms sometimes fail.

For an example, let's look at Boz' track from May 15, 2017 (downloadable at https://www.ka72.com/Track/t/305912). Here's the region GPSResults picked for the best hour:
Boz had his GPS set to a minimum speed of 5 knots, so a lot of points where the speed was lower are missing from the track. The reported 1-hour speed is 8.372 knots, corresponding to a travel distance of 15.5 km. But GPS Speedreader gave a higher speed:
By selecting an hour about 10 minutes further back, Speedreader found a region with a travel distance of 17.3 km - about one nautical mile longer! Accordingly, the 1-hour speed is about one knot higher.

Theoretically, this could be some kind of bug in Speedreader, so let's look at this region in GPSAR. First, here is what GPSAR selected as the fastest 1 hour:
 This is the roughly the same region that GPSResults picked. But is that really the region where we travel the most distance in one hour? Let's look at the track points table in GPSAR for the first valid point in the region Speedreader picked:
And for the last point:

The difference in accumulated distance is about 17.7 km, traveled in less than one hour. So this region should have been picked for the best hour in GPSAR, too!

So why did GPSResults and GPSAR (and, most likely, ka72.com) pick the wrong regions? Simple answer - because the 1-hour algorithms were never designed for tracks with a large number of missing points. The typical search algorithm will start at every valid point, find the point one hour after it, and calculate the speed for this region. But look at the graph from Speedreader: the best hour starts in the middle of the missing points! So the programs never even consider that an hour could start there. They can handle missing regions at the end of a one-hour run, but not at the start!

So why does Speedreader find this region? Mostly by luck! Speedreader was designed originally for comparing two GPS files. But if files sometimes miss some points, that can make the comparison complicated, so Speedreader simply fills in missing areas with points of speed 0. That allows it to consider every "missing point" in large missing regions as a possible start, and therefore succeeds in finding the best hour in this example.

There are other ways to also find the best hour, without having to add the interpolated point. Perhaps the easiest is to also look for hours going backwards - from every valid end point, calculate the average 1 hour speed towards the front of the file. This would find the best one hour in this example.

But at least until other GPS analysis software has incorporated such a fix, the best thing to do it to set the minimum logging speed to zero. All the examples of incorrect 1-hour results I have found were from files with a non-zero logging speed. Note that a minimum speed above zero can also affect the nautical mile or alpha results: if those happen to have a point with a speed below the threshold, the run may not be counted due to the missing point.




Saturday, March 16, 2019

Movie: Into The Weed

Sometimes, it takes a big trip to learn to appreciate new things.

Sunday, March 3, 2019

Lake George

One of the things that had drawn me to Australia were windsurfing videos from Lake George in South Australia. In a good year, you can windsurf Lake George on glassy water in 25 knots, without any chop. So we ended our trip with a couple of weeks at Lake George.

But things did not seem to work out quite as planned. Before we even got there, we saw multiple reports that the water levels were much higher than ideal. In good years, the chop-killing weed reaches the surface; but in February 2019, the weed was covered with about 2 feet of water.

The trip from the Perth region in Western Australia to Beachport in South Australia took us a few days (partly because we did not drive at night, when there is a high chance that you hit a kangaroo). When we arrived in the afternoon, we drove to the launch light away, and it looked beautiful - very flat, with about 20 mph of wind. Unfortunately, we did not get to sail that day. The next day was quite windy - but cold! Temperatures dropped to about 14 C (57 F), and it rained a bit at times. Our summer wetsuits proved to be a bit too light for the wind, which also was very gusty. We started to question how smart is was to leave Western Australia for that. The last spot we had visited, Albany, had been fantastic, and rewarded us with several personal bests each; but we only managed low 30-knot numbers this day. Frustration again, similar to the first really day at Fangy Land: the better windsurfers got speeds in the high 30s, and one or two even got 40-knot top speeds.

It got a bit warmer the next couple of days, but the wind remained light. We got to meet a number of Australian speedsurfers in the local pub and on the beach, including the holder of the official 24-hour world record, "Kato". Kato saved me from rigging in dying winds one day by letting me use his gear in the last few gusts, and let me use his Mistral IMCO longboard another day where the wind again was light and gusty. In many parts of the lake, the weed was too close to the surface to fully extend the daggerboard, but I still had a blast, even though I had to use the 6.3 m sail, since Nina was using the 7.0 on the big slalom board. But another advantage of the light wind was that I was able to get some drone footage, without having to worry about the drone getting blown away. Here's some footage of Nina on the 7.0/112 l combo:

Unfortunately, our friends Mike and Dot had to leave a few days later, and the three "Teletubby Brokeback Speedsurfers" from Mandurah who shared the cabin next to ours also left when the wind forecast was very poor for several days in a row. That meant that we lost some of the gear we had used (or hoped to use) in very light or very strong winds: Mike's 4.4 m sail and 39 cm speed board for Nina, and the 112 l slalom board (a loaner from Jonski - thanks again!). On the bright side, it prompted us to switch to a lovely AirBnb place with lots of space, a super-friendly host, free loaner bicycles, and frequent sightings of kangaroos right next to our place - nice!

The wind finally returned for the last two days of our stay. Here is a GoPro short video that I took at the beginning of the first day:

This was in about 5 knots more wind than in the first video above, about 18 knots. At almost all windsurf spots, 5 knots more wind would have also created more chop - but not so here! The heavy weed limits how big the chop gets, and the water was very smooth. The wind picked up during the day, probably reaching averages near 25 knots before I stopped sailing, but the chop never seemed to get any bigger. Sweet! Well, I should be more specific: the chop did not get noticeably bigger in the middle lake, which is shallow and weedy. We actually ended up sailing a bit in the big lake, which is deeper at parts, and has substantially less weed; in the deeper parts, the chop is more comparable to the Hatteras Sound (think of the area near Avon, in the middle of the long distance race).

Here are my GPS tracks for the day (click on the image to see a larger version):
We started at the bottom-left corner, from a launch known as "5 Miles". The mast mount video above was taken right in front of the launch. We then sailed up to "The Spit" - a sand spit that separates the middle lake from the big lake above it. The sand bar is just perhaps 10 meters wide, and a meter tall, so the water behind it is perfect for speed sailing. I spent most of the day on the Falcon 89, and got a top speed of 34.8 knots on it - the fastest I had ever been on a slalom board. After a couple of hours, when Nina took a break, I got six runs on the Isonic W54 speedboard in. Three of the runs were above 35 knots, and the fastest had a 2-second top speed of 37.09 knots (68.7 km/h) - that's the second-fastest I have ever sailed, and only the second time I have sailed faster than 35 knots.

After hearing about my speeds, Nina wanted a few more runs on the Isonic. I ended up getting quite cold waiting for her, so I started to sail back to the launch, which was about 1.5 miles upwind. Since the wind kept picking up, getting back was reasonably easy and quick. I later looked at the GPS tracks of Hardie, who did more than 40 knots that day, and they confirmed that the wind picked up a few knots during and after our trip back. However, we were quite tired by the time we sailed back, and not quite sure how easy it would be to sail back upwind. I was definitely happy to have a few reserved left to manage the 7.0 m sail in gusts that must have been above 30 knots!

For the next day, the wind forecast had predicted a few more knots of wind, so we decided to drive out to the spit. It's just a 5 kilometer (3 mile) drive from the 5 Mile launch - but the road is "very interesting", with sand, huge potholes, and rocky areas. It took us 30 minutes to drive the last 3 miles!  But at least we now had the option to change gear whenever we felt like it.

I went out first on the 7.0/89 combo, and quickly got a top speed of 34.5 knots. The wind seemed to be picking up, and both local expertise and the forecast predicted an increase, to I quickly rigged down to the 6.3. Unfortunately, the wind had other plans, and stayed perhaps 5 knots weaker than the day before, so I had a hard time even getting 34 knots again. But the water in front of the speed (below in the image above) was just a few inches above the weeds - tons of fun to go back and forth in! I tried to improve my 1 hour personal best, but had a few problems jibing, so ended up 0.8 knots short of my PB. Nevertheless, these three hours of going fast for a couple of kilometers each run in "chop" than ranged from about 1 inch to maybe 3-4 inches were some of the best hours I even spend on a windsurf board. The SSE-SE wind was a lot steadier than the gusty SW-WSW wind we had on our first day of sailing at Lake George! Even Nina, who usually gets bored going in a straight line after a minute or two, sailed back and forth with a big grin on her face for hours, and ended up improving her 1 hour PB without really trying. After these two days, we both understood why windsurfers from all over Australia come to Lake George!

Friday, November 23, 2018

Lanes Through Weeds

Weeds and speedsurfing? Yes! Check this video from Fangy's Weed Farm down under:


Only a few more weeks, and we'll be there, desperately trying to find the lanes. The promise of 37 knots in 20-25 knots of wind certainly makes spending a day or two on a plane worthwhile!

Wednesday, November 7, 2018

Fun at the Slicks

More pictures, less words:
The forecast was 22 mph WSW, sunny, and warm. No surprise we got low 30s! We started sailing just before noon to catch the high tide at the Kennedy Slicks. GPS tracks:
Falcon 99, Loft RacingBlade 6.3, BP Weedspeed "38". Top speed (2 sec) 32.4 knots. My fastest 5x10 second average ever on a slalom board; I was faster only 3x on a 72 l speed board. Nina did freestyle, overpowered on 4.2. A bit too gusty there for freestyle, speed is more fun!

A video from one of the runs:

Saturday, October 6, 2018

Is 5 Hz enough?

This is a geeky post about GPS speedsurfing. You've been warned.

I am currently trying to get a couple of GPS devices that I have developed approved for the GPS Team Challenge. The units use u-blox 8 GPS chips, which are very accurate and provide speed accuracy estimates that can be used to automatically identify "bad" sections, for example artificially high speeds related to crashes.

One of the issues that came up is: at what rate should the data be recorded? Some popular GPS watches record only every few seconds, which is good enough for some uses, but not for speedsurfing. The venerable Locosys GT-31 recorded once per second; current Locosys units record at 5 Hz, every 200 milliseconds. The u-blox chips can record up to 18 Hz, although that limits the chips to using only two global satellite systems; for the highest accuracy, tracking satellites from 3 systems is desirable, which limits recording speed to 10 Hz.

There are some theoretical arguments that higher rates are better, because they give more accurate data. One big part of that is that random measurement errors tend to cancel each other out, and the more data points you have, the lower the remaining error gets.

But there are also some practical issues with higher data rates. The resulting larger files are usually not much of an issue, unless you're traveling to a spot that has a slow internet connection, and want to upload data for analysis to web sites like ka72.com.

Slow analysis and drawing speeds can be more of a pain. Most of the currently developed analysis software was developed for 1 Hz data, and can get quite slow with large 5 Hz files. Some steps appear to be coded inefficiently, showing N-squared time complexity - they take about 25 times longer for 5 Herz data. With 10 Hz data, add another factor of 4, and now we're talking about 100-fold slower.

A bigger issue is that higher data rates can lead to "dropped" points when the logging hardware can't keep up with the amount of data. I recently ran into this issue with my prototypes, and have seen indications of the same problem in data files from a GPS specifically developed for speedsurfing that's currently coming onto the market. But fortunately, the frequency of dropped points in my prototypes is low enough (roughly one point per hour) that the data can still be useful.

To see how much we actually can gain from increasing data acquisition rates to 10 Hz, I did a little experiment. It started with a windsurfing session were I used two prototypes at 10 Hz (for control, I also used 2 or 3 "approved" GPS units). Comparing the data on these units for the fastest ten 2-second and 10-second runs gives a good idea about the actual accuracy of the devices; the data from the other GPS units I used help to confirm that.

Next, I took one of the 10-Hz data files and split it into two 5 Hz files by simply writing one record to one file, the next one to a second file, the third one to the first file again, and so on. This simulates measuring at 5 Hz, but I get two 5-Hz files from the same device.
In the same way, I created a couple of 1-Hz files from the original file, this time selecting every 10th record for the first file, and every 10th record but starting one record later for the second file.

I analyzed the speeds for all these files in GPSResults, put them in a spreadsheet, and calculated the differences. Here are the results:
Looking at the "Average" lines, the observed differences increased from 0.041 knots to 0.074 knots for 2 second runs, and from 0.027 knots to 0.036 knots for 10 second runs. Going down to just one sample per second increased the observed differences more than 2-fold for both 2 and 10 seconds.

The observed differences are close to what would be expected by sampling theory, which predicts that the error is proportional to the square root of the number of samples taken. The expected numbers are shown in the "Theoretical error" line above.

But what error is "good enough"? Let's look at the top 10 teams in monthly ranking for the GPS Team Challenge for September to get an idea:
In the 2-second rankings, teams #7 and 8 are just 0.06 knots apart; in the 5x10 second average, the difference is 0.07 knots. The smallest difference in the 5x10 second category is 0.6 knots between teams ranking 8th and 9th.

Looking back at the observed differences at 5 Hz, we see that the average was just 0.036 knots (note that this is actually the average of the absolute differences).  For a 5x10 ranking, the expected error would be roughly two-fold smaller, or less than 0.02 knots. This seems quite adequate, it would have given the correct ranking in the 5 x 10 second category. Note that errors go down even more for the "longer" categories like nautical mile, 1 hour, and distance. Only in the 2-second category were two teams so close together that the observed average error is similar to the difference in posted speeds. Note, however, that many speedsurfers still use GT-31 devices that record at 1 Hz, and that even the 5-Hz Locosys units tend to have 2- to 3-fold higher errors than the u-blox prototypes I used in this test. It is quite well known that the 2-second category is the most likely to be subject to errors; however, it is still a lot better than the "maximum speed" category that is used in some other GPS competitions. For 5 Hz data, the expected error for single point "maxima" is about 3-fold higher than for 2 seconds!

So, to answer the question in the title: yes, it is!