{"id":120,"date":"2022-12-08T17:25:10","date_gmt":"2022-12-08T17:25:10","guid":{"rendered":"https:\/\/gpxrender.com\/tutorials\/?p=120"},"modified":"2025-03-05T13:39:20","modified_gmt":"2025-03-05T13:39:20","slug":"low-cost-high-accuracy-gps-lap-timer","status":"publish","type":"post","link":"https:\/\/foxlap.com\/tutorials\/low-cost-high-accuracy-gps-lap-timer\/","title":{"rendered":"GPS Lap Timer Project"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\">[OUTDATED &#8211; this is the genesis of this project]<\/mark><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">This project aims to create a low-cost, high-accuracy GPS Lap Timer for racing purposes.<\/h3>\n\n\n\n<p>1 year ago, my 11 years old son started GoKart competition. As an engineer, i am always looking for new challenges, that&#8217;s why i decided to create my own GPS LapTimer &#8211; I Know, MyChron or Alfano Lap Timer already exists, but, even if i have never used them, they are expensive &#8211; And why buy something that i can build and program?<\/p>\n\n\n\n<p>So, to answer to the question &#8220;Did i manage to build a reliable and high-accuracy GPS Lap Timer?&#8221; YES, i think i did it. And here is the result:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1590.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"656\" height=\"983\" data-id=\"126\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1590.jpg\" alt=\"GPS Lap Timer - LapKiller\" class=\"wp-image-126\" title=\"LapKiller low-cost high-accuracy GPS Lap Timer\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1590.jpg 656w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1590-600x899.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1590-200x300.jpg 200w\" sizes=\"auto, (max-width: 656px) 100vw, 656px\" \/><\/a><figcaption class=\"wp-element-caption\">Mounted on the wheel of the kart<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"436\" data-id=\"128\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-1024x436.jpg\" alt=\"GPS Lap Timer - LapKiller\" class=\"wp-image-128\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-1024x436.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-scaled-600x256.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-300x128.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-768x327.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-1536x655.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1845-2048x873.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Booting screen<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"650\" data-id=\"125\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855-1024x650.jpg\" alt=\"\" class=\"wp-image-125\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855-1024x650.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855-600x381.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855-300x191.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855-768x488.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG_1855.jpg 1074w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">GNSS monitoring<\/figcaption><\/figure>\n<\/figure>\n<\/div>\n<\/div>\n\n\n\n<p><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">EDIT: I renamed it <strong>FoxLAP<\/strong><\/mark>. LapKiller as you see it on the screenshots is no more used.<\/p>\n\n\n\n<p>See what it looks like in this short video:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Low-cost, high-accuracy GPS Lap Timer for racing purposes\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/ltJ2kOmZ7N8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">And in real condition<\/h2>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Rotax Natio a biganos avec T\u00e9l\u00e9m\u00e9trie. Hot laps\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/UKf8alugTRs?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>The device used to make this video has been used by my son for several months. It&#8217;s not a brand new device out of the box, but you see what it looks like after being used for real.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-neve-link-color-color has-text-color\">1- Reliability tests<\/h2>\n\n\n\n<p>Ok, i know what you are thinking&#8230; &#8220;he made something cheap but i think it will not be as reliable as MyChron or Alfano or Speedhive&#8221;. In fact you are wrong. Let me show you (if you are still here) how reliable this little device is:<\/p>\n\n\n\n<p class=\"has-neve-link-hover-color-color has-text-color\"><strong>A- Lap time reliability<\/strong><\/p>\n\n\n\n<p>Here are the lap times from the same race session recorded by both a Speedhive myLaps transponder fitted to my son&#8217;s kart and my homemade Lap Timer.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"432\" height=\"424\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/com.mylaps.speedhive-1.jpg\" alt=\"\" class=\"wp-image-137\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/com.mylaps.speedhive-1.jpg 432w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/com.mylaps.speedhive-1-300x294.jpg 300w\" sizes=\"auto, (max-width: 432px) 100vw, 432px\" \/><figcaption class=\"wp-element-caption\"><strong>SpeedHive <\/strong>recorded lap Times<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"180\" height=\"165\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/lapkiller-time.jpg\" alt=\"\" class=\"wp-image-138\" style=\"width:416px;height:381px\"\/><figcaption class=\"wp-element-caption\"><strong>LapKiller <\/strong>recorded lap times<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p><strong>The highest gap is on lap 5 with a 0.012 second gap.<\/strong> Not bad, i think. Times recorded under heavy rain and wind.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>I made a dedicated data analysis tool directlty working with the device:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"FoxLAP - GPS Lap Timer - Online data Analyzer\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/cFTApYtwR1o?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">FoxLAP recorded data &#8211; Online tool analyzer.<\/figcaption><\/figure>\n\n\n\n<p>Already more than <strong>1600 tracks<\/strong> automatically recognized by the GPS LAP Timer<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"501\" data-id=\"244\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1-1024x501.png\" alt=\"\" class=\"wp-image-244\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1-1024x501.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1-600x294.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1-300x147.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1-768x376.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1-1536x752.png 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks-1.png 1870w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"499\" data-id=\"245\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2-1024x499.png\" alt=\"\" class=\"wp-image-245\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2-1024x499.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2-600x292.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2-300x146.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2-768x374.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2-1536x748.png 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/tracks2.png 1901w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2- Functionnalities<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>25HZ high-accuracy GNSS<\/strong>: GPS position updated every 40 milliseconds using a <strong>ublox <\/strong>GNSS receiver. <\/li>\n\n\n\n<li>Replay: play saved sessions on the device and see how fast was your lap<\/li>\n\n\n\n<li>Multi user: User interface to manage users (creation, selection)<\/li>\n\n\n\n<li>Multi-engine measurement on the running time of your engines.<\/li>\n\n\n\n<li>Real time speed, bearing, position on track monitoring<\/li>\n\n\n\n<li>Track auto detection based on your location<\/li>\n\n\n\n<li>Gopro compatible: paired with your gopro, <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\"><strong>FoxLAP <\/strong><\/mark>will start the video recording when you cross the start line and will stop the video record at the end of your session. You will be able to see your laps in video synchronized with the recorded data with the online tool.<\/li>\n\n\n\n<li>Wifi server: Transfer your sessions data to your computer\/mobile over wifi. (<a href=\"https:\/\/gpxrender.com\" target=\"_blank\" rel=\"noreferrer noopener\">GPXRender<\/a>, the software i made to analyze GPS data is able to directly connect to the LapTimer device).<\/li>\n\n\n\n<li>Synchronize recorded data with the dedicated online tool i created where you can store your sessions and analyze your data<\/li>\n\n\n\n<li>RPM and water temperature sensors<\/li>\n\n\n\n<li>An 8Gb sdcard: 1 session file is 1.5 MB on average. So 8Gb will let you store 5500 sessions before running out of memory (you will be forced to delete your old vintage sessions on the device)<br><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3-Inside Components<\/h2>\n\n\n\n<p>This GPS Lap Timer is based on an <strong>ESP32 board<\/strong> &#8211; A low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The dual-core T<a href=\"https:\/\/en.wikipedia.org\/wiki\/Tensilica\">ensilica<\/a> Xtensa LX6 microprocessor is a major advantage for the goal. In fact, one thread is dedicated to monitor the GPS position without any interruption. A 3500 MAH 18650 battery allows to record several hours of data.<\/p>\n\n\n\n<p><strong>Bill of materials<\/strong> <br>See the tutorial on how to build a simple version of this device: <a href=\"https:\/\/foxlap.com\/tutorials\/diy-build-your-foxlap-device\/\">here<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>The plastic box enclosure is a 3D printed model i created with blender. It can be printed by yourself. On my side, i decided to make it printed by professionnals as the result is way better.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"624\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop-1024x624.png\" alt=\"\" class=\"wp-image-233\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop-1024x624.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop-600x366.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop-300x183.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop-768x468.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop-1536x936.png 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxtop.png 1567w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"642\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom-1024x642.png\" alt=\"\" class=\"wp-image-234\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom-1024x642.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom-600x376.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom-300x188.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom-768x481.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom-1536x962.png 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/10\/boxbottom.png 1569w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4-Setup<\/h2>\n\n\n\n<p>Here is a video showing how to setup the device on a goKart. This is my son&#8217;s gokart, OTK with rotax J125 engine.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"FoxLAP setup on GoKart\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/wXmHx7tvjV0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><strong>This is the end of this small presentation<\/strong> of my attempt to create a low-cost, high-accuracy GPS Lap Timer for racing purposes.<br>I don&#8217;t know who other than me finds these kinds of projects interesting, but it was a lot of fun doing it. Leave a comment if you have any questions about this project&#8230;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">May 2023: update<\/h2>\n\n\n\n<p>&#8211; RPM and temperature sensors are ready<br>&#8211; I have made a dedicated Board for this Lap Timer. Important for reliability, there is a lot of vibration and self made soldering may be a problem. <strong>i just received the first boards and they are working like a charm<\/strong><br>&#8211; I am producing 10 units, that will be tested by young (and some less young) drivers in my area. I&#8217;m pretty sure i will have some interesting feedbacks in order to improve this little device. <\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"392\" height=\"525\" data-id=\"193\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/05\/foxlap.jpg\" alt=\"\" class=\"wp-image-193\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/foxlap.jpg 392w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/foxlap-224x300.jpg 224w\" sizes=\"auto, (max-width: 392px) 100vw, 392px\" \/><figcaption class=\"wp-element-caption\">New box enclosure for goKart &#8211; wheel mount<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"694\" height=\"392\" data-id=\"188\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG20230509201822.jpg\" alt=\"GPS Lap Timer\" class=\"wp-image-188\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG20230509201822.jpg 694w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG20230509201822-600x339.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2022\/12\/IMG20230509201822-300x169.jpg 300w\" sizes=\"auto, (max-width: 694px) 100vw, 694px\" \/><figcaption class=\"wp-element-caption\">The PCB enclosed in the plastic box<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" data-id=\"196\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-1024x578.jpg\" alt=\"\" class=\"wp-image-196\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/05\/IMG20230512002133-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p><br>&#8211; This device is able to connect to any wifi hotspot (your mobile phone can be a hotspot); so the device will send automatically your sessions and synchronize to your account on an online tool i have made (still working on it but almost done). Settings, tracks, data anaylzer are directly on the website &#8211; the device is synchronized with your account &#8211; <strong>i think it&#8217;s nice. here is a demo<\/strong> (<em>Work on progress<\/em>):<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"GPS Lap Timer project - Online data Analyzer\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/3ENJseJCPIM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">June 2023 Update:<\/h2>\n\n\n\n<p>final correction on the RPM sensor&#8230;<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"RPM test\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/cDBAOMBuOR0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">July 2023 Update<\/h2>\n\n\n\n<p>&#8211; working on a new board version including gyroscope and accelerometer.<br>&#8211; I have worked on the data analysis tool to configure sectors and see sector times. What do you think about that? what do you think would be interesting to add ? <\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"data analysis - sectors\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/EIi387eXxfk?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-nv-c-2-color has-text-color\">We will be at <strong>Kartmag Trophy<\/strong> that will occur on 18-20 august 2023 at <strong>Varennes sur Allier<\/strong> (FRANCE). my son will race in Rotax. Maybe some you will be there too. <\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">September 2023 Update<\/h2>\n\n\n\n<p>back from a big race event, it was obvious for me that i had to improve the data analyzis tool. We were discovering the track, only few sessions for practice. So here&#8217;s what I added that would have been nice to have during the event:<br>&#8211; real time gap between laps,<br>&#8211; save\/load laps from different sessions<br>&#8211; and of course video overlay. i know during the race, video is not allowed but during practice sessions, it is allowed&#8230; and it helps a lot<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"FoxLAP - GPS Lap Timer - Online data Analyzer\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/cFTApYtwR1o?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">November 2023 Update<\/h2>\n\n\n\n<p><strong>1-<\/strong> I tested installing both an Alfano 6 and my device on my son&#8217;s goKart and recording the same session. Both with RPM sensors. I wanted to see if the recorded RPMs were the same. Here is the result :<br>&#8211; Brown: Alfano RPM record<br>&#8211; Blue: My Device RPM record<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"789\" height=\"265\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/11\/rpm.png\" alt=\"\" class=\"wp-image-251\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rpm.png 789w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rpm-600x202.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rpm-300x101.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rpm-768x258.png 768w\" sizes=\"auto, (max-width: 789px) 100vw, 789px\" \/><\/figure>\n\n\n\n<p><strong>RPM recorded are almost exactly the same<\/strong>. Alfano pick a value every 100ms, i pick a value every 50ms. <\/p>\n\n\n\n<p><strong>2-<\/strong> i&#8217;ve made different box enclosure models. One without external sensors for Rental gokarts (only GPS inside); One for those who wants to get the GPS sensor inside the device but with external sensors (temp\/rpm); and one with external sensors (temp\/rpm) + external GPS sensor.<br>What i can say for sure is that external GPS sensor is better, the signal is better and when it&#8217;s time to upgrade the GNSS module for a newer and better version, you don&#8217;t have to buy again a complete device&#8230; you just have to plug your new GNSS receiver and that&#8217;s all.  On my side i use the external GPS sensor (for all the reasons already explained).<\/p>\n\n\n\n<p><strong>3-<\/strong> I&#8217;ve made <strong>complete tests with water<\/strong>. The device must work under heavy rain and must not be damaged, i&#8217;m sure you agree. The first test was not good, after several water exposition (deliberately outrageous tests), some units have suffered small water infiltrations. I had to correct this issue. After modifications, the second test was more conclusive and I didn&#8217;t see any faults. The test consists of leaving the device in the shower with a high flow rate \ud83d\ude42 i have to conduct more tests like impact resistance &#8211; i plan to drop a unit from 20 meters high and see what happen \ud83d\ude42<\/p>\n\n\n\n<p>4- Water resistance update: November 14th. We are coming back from a race week-end under heavy rain. No issue at all with the lap timer \ud83d\ude42 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"578\" height=\"1024\" src=\"https:\/\/gpxrender.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain-578x1024.jpg\" alt=\"\" class=\"wp-image-253\" style=\"width:431px;height:763px\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain-578x1024.jpg 578w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain-600x1064.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain-169x300.jpg 169w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain-768x1362.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain-866x1536.jpg 866w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2023\/11\/rain.jpg 1155w\" sizes=\"auto, (max-width: 578px) 100vw, 578px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Another November update<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>There is already more than 1500 tracks automatically recognized. If your track is not recognized, the device is able to &#8220;learn&#8221; a track if you drive on it for 1 lap. But i have not enough feedback on this functionnality &#8211; ok &#8211; i have tested it on 4 or 5 different tracks but it&#8217;s not enough to validate and maybe it can be buggy in some cases not yet encountered.<\/li>\n\n\n\n<li>That&#8217;s why i added a simple tool to create your custom tracks. less than 5 minutes to add a new track on the laptimer. <\/li>\n\n\n\n<li>You can see it in this video:<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"FoxLAP - Track creation\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/RBPE6btMils?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>I&#8217;m preparing a tutorial on how to make a simple version of this device. it will be a way to start something, because material things take so much time. This version is the cheapest version we can make and it is obviously based on a development board. it will allow the most motivated among you to be able to test a simple version. <\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n","protected":false},"excerpt":{"rendered":"<p>[OUTDATED &#8211; this is the genesis of this project] This project aims to create a low-cost, high-accuracy GPS Lap Timer [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":157,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-120","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts\/120","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/comments?post=120"}],"version-history":[{"count":68,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts\/120\/revisions"}],"predecessor-version":[{"id":1101,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts\/120\/revisions\/1101"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/media\/157"}],"wp:attachment":[{"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/media?parent=120"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/categories?post=120"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/tags?post=120"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}