{"id":283,"date":"2024-01-23T17:10:14","date_gmt":"2024-01-23T17:10:14","guid":{"rendered":"https:\/\/foxlap.com\/tutorials\/?p=283"},"modified":"2026-03-25T17:35:57","modified_gmt":"2026-03-25T17:35:57","slug":"diy-build-your-foxlap-device","status":"publish","type":"post","link":"https:\/\/foxlap.com\/tutorials\/diy-build-your-foxlap-device\/","title":{"rendered":"DIY-Build Your FoxLAP device"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">FoxLAP &#8211; The DIY version<\/mark><\/h2>\n\n\n\n<p><strong>This is what you will get at the end of this tutorial. A complete working GPS LAP timer&#8230;<\/strong><br><\/p>\n\n\n\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\"><img loading=\"lazy\" decoding=\"async\" width=\"384\" height=\"302\" data-id=\"289\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-01.png\" alt=\"\" class=\"wp-image-289\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-01.png 384w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-01-300x236.png 300w\" sizes=\"auto, (max-width: 384px) 100vw, 384px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"384\" height=\"312\" data-id=\"288\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-Back.png\" alt=\"\" class=\"wp-image-288\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-Back.png 384w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-Back-300x244.png 300w\" sizes=\"auto, (max-width: 384px) 100vw, 384px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>A complete working GPS LAP timer, yes, but with some limits. <br><strong>Limitations<\/strong>: No external sensors (rpm, temp, EGT), no accelerometer. We can add accelerometer, temp sensor, and rpm to this device, but we will see that maybe in another tutorial.<br>This device is not really (completely not) water resistant, no battery management (only a physical switch power button). And finally something ugly inside with manual soldering and hot glue. Of course this is a <strong>quick and dirty<\/strong> implementation, i&#8217;m sure you can do better than i did. This is what i&#8217;ve done to create the first prototype to be able to start programming the firmware. I did it again for this tutorial but didn&#8217;t invest much time to get a high quality build. If you improve this, please share<\/p>\n\n\n\n<p>Even with these limitations, you will get your lap times, gap with best, speed, sectors, theoretical best lap, live delta and so on&#8230; and you will be able to analyze your recorded GPS data (<a href=\"https:\/\/foxlap.com\/software.php\" target=\"_blank\" rel=\"noreferrer noopener\">GPXRender software<\/a> and with the <a href=\"https:\/\/foxlap.com\/dashboard.php\" target=\"_blank\" rel=\"noreferrer noopener\">online tool<\/a>).<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-6 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=\"256\" height=\"128\" data-id=\"341\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/shot0.png\" alt=\"\" class=\"wp-image-341\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"256\" height=\"128\" data-id=\"340\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/shot2.png\" alt=\"\" class=\"wp-image-340\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"256\" height=\"128\" data-id=\"337\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/shot6.png\" alt=\"\" class=\"wp-image-337\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"256\" height=\"128\" data-id=\"339\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/shot7.png\" alt=\"\" class=\"wp-image-339\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"256\" height=\"128\" data-id=\"336\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/shot13.png\" alt=\"\" class=\"wp-image-336\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"256\" height=\"128\" data-id=\"342\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/shot14.png\" alt=\"\" class=\"wp-image-342\"\/><\/figure>\n<\/figure>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"945\" height=\"424\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot.jpg\" alt=\"\" class=\"wp-image-293\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot.jpg 945w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-600x269.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-300x135.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-768x345.jpg 768w\" sizes=\"auto, (max-width: 945px) 100vw, 945px\" \/><\/figure>\n\n\n\n<p>The goal of this tutorial is to create the simplest version possible. I started the development of this project on a version like this (in fact exactly the same). It brings back memories of going back to it. <\/p>\n\n\n\n<p>This simple version is probably not the best, and it can be improved easily &#8211; we can obviously discuss choices i made, why blender?, why this display, why this MCU&#8230;  But it&#8217;s there and it works <strong>So ready to go<\/strong>?<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">1- Required parts<\/h2>\n\n\n\n<p>This is what i used, mostly because i had most of these items available at home. some of this parts can be changed to more convenient, cheaper parts (depends on availability on your location). links to purchase these items are provided but i don&#8217;t have any interests on this&#8230; you are free to purchase where you want.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>1, ESP32 ESP-WROOM-32 development board<\/strong>. Used: <a href=\"https:\/\/www.az-delivery.de\/fr\/products\/esp-32-dev-kit-c-v4\" target=\"_blank\" rel=\"noreferrer noopener\">ESP32 Board<\/a> (Usually around 5$ per unit)<\/li>\n\n\n\n<li><strong>1, Lithium Battery Charger<\/strong>. Used: <a href=\"https:\/\/www.aliexpress.com\/item\/32804528128.html\" target=\"_blank\" rel=\"noreferrer noopener\">Shield Wemos D1 Mini ESP8266<\/a> (1$)<\/li>\n\n\n\n<li><strong>1, GNSS Module<\/strong>. Used: <a href=\"https:\/\/www.aliexpress.com\/i\/1005004502736260.html\" target=\"_blank\" rel=\"noreferrer noopener\">Mateksys SAM-M10Q GNSS module<\/a> (36$) (24$ for a cheaper ublox m8n)<\/li>\n\n\n\n<li><strong>1, display<\/strong>. Used: <a href=\"https:\/\/fr.aliexpress.com\/item\/32841650697.html?spm=a2g0o.order_list.order_list_main.57.8e435e5baZGao0&amp;gatewayAdapt=glo2fra\" target=\"_blank\" rel=\"noreferrer noopener\">JLX 256&#215;128 COG 5V White SPI<\/a> (12$)<\/li>\n\n\n\n<li><strong>1, sdcard module<\/strong>. Used: <a href=\"https:\/\/fr.aliexpress.com\/item\/1005006104770909.html\" target=\"_blank\" rel=\"noreferrer noopener\">Micro SD Card Shield<\/a>&nbsp;(0.50$)<\/li>\n\n\n\n<li><strong>1, 18650 Battery<\/strong>. Used: <a href=\"https:\/\/etronixcenter.com\/en\/8171816-nk482-cb-samsung-samsung-inr18650-35e-3450mah-8a.html\" target=\"_blank\" rel=\"noreferrer noopener\">18650 INR18650-35E Samsung Li-Ion 3,7V 3450mAh<\/a> (6$)<\/li>\n\n\n\n<li><strong>2, 10K resistors<\/strong> <\/li>\n\n\n\n<li><strong>4, 1K resistors<\/strong><\/li>\n\n\n\n<li><strong>1, power switch<\/strong>. used: <a href=\"https:\/\/www.amazon.com\/Tnuocke-Vertical-Position-Latching-SS12F15-G5\/dp\/B099N3HFPG\/ref=sr_1_3?keywords=slide%2Bswitch&amp;qid=1706265703&amp;sr=8-3&amp;th=1\" target=\"_blank\" rel=\"noreferrer noopener\">2 position mini switch<\/a> (6$ for 100 units)<\/li>\n\n\n\n<li><strong>1, micro sd card<\/strong>. Used SanDisk 16G or <a href=\"https:\/\/www.amazon.fr\/Verbatim-44010-microSDHC-Class-m%C3%A9moire\/dp\/B0054KHY8C\/\" target=\"_blank\" rel=\"noreferrer noopener\">Verbatim 16G<\/a> (5$)<\/li>\n\n\n\n<li><strong>4, push buttons<\/strong> 6x6x4mm. Used <a href=\"https:\/\/everythingpi.co.uk\/products\/6mm-x-6mm-x-4mm-dip-push-button-momentary-tactile-switch-4-pin-5-10-20-pcs\" target=\"_blank\" rel=\"noreferrer noopener\">buttons<\/a><br><\/li>\n\n\n\n<li>Hot Glue and regular glue<\/li>\n\n\n\n<li>Wire wrapping. Used: <a href=\"https:\/\/www.amazon.fr\/gp\/product\/B08J421XZJ\/ref=ppx_yo_dt_b_asin_title_o07_s01?ie=UTF8&amp;psc=1\" target=\"_blank\" rel=\"noreferrer noopener\">link<\/a><\/li>\n\n\n\n<li>6 M3 16mm screws<\/li>\n\n\n\n<li>1 M8 30mm screws<\/li>\n\n\n\n<li>2 M8 flat washer<\/li>\n\n\n\n<li>4 M1.2&#215;5 screws<br><\/li>\n<\/ul>\n\n\n\n<p><strong><span style=\"color:red\">More &amp; important informations<\/span><\/strong>: <br><\/p>\n\n\n\n<p>1- <strong>GNSS module<\/strong>: this tutorial is made to use the MatekSYS SAM-M10Q mounted inside the box. But you can use any Ublox GNSS module i guess. But please avoid cheap GNSS module replica, no, a 5 dollar GNSS chip can&#8217;t be good. You can find cheaper ublox GNSS modules like the m8n, but you will be limited to 10Hz (wich is not bad, alfano6 GNSS is 10Hz) and you will not be able to mount the GNSS inside the box.. it will be an external GNSS receiver, so you will have to adapt the 3D box model (i have 3D models for such cases). I had good results with this ublox m8n GNSS receiver: <a href=\"https:\/\/www.aliexpress.com\/item\/32748573256.html\">https:\/\/www.aliexpress.com\/item\/32748573256.html<\/a><br>This project is only compatible with ublox chips. maybe i will add some GNSS compatibility if they are proven to be good and affordable.<\/p>\n\n\n\n<p>2- <strong>Display:<\/strong> this <a href=\"https:\/\/fr.aliexpress.com\/item\/32841650697.html?spm=a2g0o.order_list.order_list_main.57.8e435e5baZGao0&amp;gatewayAdapt=glo2fra\">JLX 256&#215;128 COG<\/a> can be 5V or 3V. I used the 5V version because i already had it. The battery Shield used in this tutorial contains a 5V booster, so i used it to power the ESP32, the GNSS and the display. You can use the 3V version of this display but obviously don&#8217;t wire it directly to 5V. I chose the white backlight version simply because I prefer white backlights. <strong>This display must be the <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">SPI<\/mark><\/strong> model.<\/p>\n\n\n\n<p>3- <strong>Micro SDcard:<\/strong> ESP32 can&#8217;t read SDcard FAT bigger than 32GB. So don&#8217;t use an sdcard larger than 32GB (or you will have to create a 32GB partition on it first). 16GB for this project is already huge, you don&#8217;t need so much space. But as the GNSS module, don&#8217;t use noname Sdcards, you will face a lot of troubles (read, write errors&#8230; complete headache with these cheap noname sdcards to finally throw them angrily in the trash).<\/p>\n\n\n\n<p>4- <strong>Battery 18650<\/strong>: Also, don&#8217;t be fool, don&#8217;t purchase noname battery advertised as 12000 Mah, or you may have surprises. The battery +\/- poles must be flat.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"589\" height=\"284\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery.jpg\" alt=\"\" class=\"wp-image-353\" style=\"width:377px;height:auto\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery.jpg 589w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery-300x145.jpg 300w\" sizes=\"auto, (max-width: 589px) 100vw, 589px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"450\" height=\"444\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery-no-good.jpg\" alt=\"\" class=\"wp-image-354\" style=\"width:277px;height:auto\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery-no-good.jpg 450w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery-no-good-100x100.jpg 100w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/battery-no-good-300x296.jpg 300w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/figure>\n\n\n\n<p>with batteries that have a button on the poles, it may be impossible to put the battery in the slot provided in the box.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">2- 3D Print<\/h2>\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-large\"><img loading=\"lazy\" decoding=\"async\" width=\"779\" height=\"617\" data-id=\"298\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-3dmodels.jpg\" alt=\"\" class=\"wp-image-298\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-3dmodels.jpg 779w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-3dmodels-600x475.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-3dmodels-300x238.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/screenshot-3dmodels-768x608.jpg 768w\" sizes=\"auto, (max-width: 779px) 100vw, 779px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"416\" height=\"639\" data-id=\"302\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20240123190647-1.jpg\" alt=\"\" class=\"wp-image-302\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20240123190647-1.jpg 416w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20240123190647-1-195x300.jpg 195w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><\/figure>\n<\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>STL <\/strong>files were created using <strong><a href=\"https:\/\/www.blender.org\/download\/\">Blender<\/a><\/strong>. <\/li>\n\n\n\n<li><strong>3D Printer:<\/strong> <strong>Creality CR10s PRO<\/strong>.<\/li>\n\n\n\n<li><strong>Slicer<\/strong>: I used <a href=\"https:\/\/ultimaker.com\/software\/ultimaker-cura\/\"><strong>Cura<\/strong> <\/a>to slice the 3D models <\/li>\n\n\n\n<li><strong>3D filament<\/strong>: i used the <strong>1.75mm ZIRO Filament PLA with carbon fiber<\/strong>. Amazon link: <a href=\"https:\/\/www.amazon.com\/dp\/B01IICFS4Y\/\">https:\/\/www.amazon.com\/dp\/B01IICFS4Y\/<\/a><\/li>\n\n\n\n<li><strong>Print settings:<\/strong> 0.4mm nozzle, Standard quality (0.2mm), 40% infill, Support (zig zag support)<\/li>\n\n\n\n<li><strong>Print Speed:<\/strong> Usually I set the speed to 60% of the maximum speed the printer can achieve. Because I saw that the more I increase the speed, the more faulty prints I get. <\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"739\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura02-1024x739.jpg\" alt=\"\" class=\"wp-image-307\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura02-1024x739.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura02-600x433.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura02-300x217.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura02-768x554.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura02.jpg 1042w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong>I&#8217;m not a 3D print guru<\/strong>, I had my best results printing the STL models this way. I assembled all the STL parts only to show you how I placed them but actually I printed the STL parts piece by piece, not all together as shown in the screenshot. <\/p>\n\n\n\n<p><br>There is also 2 other parts printed with <a href=\"https:\/\/www.3dprintersolutions.nl\/polymaker-polyflex-true-black-750gr.html\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>flexibale filament<\/strong>.<\/a> You will need 2 parts for the M8 flat washer&#8230; It will help you to mount the Lap timer on your wheel. But this filament even if it&#8217;s a good filament, is expensive and you will probably don&#8217;t want to purchase a complete coil for just 2 small pieces. You can try to print them with regular PLA.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"970\" height=\"724\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura2-1.jpg\" alt=\"\" class=\"wp-image-360\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura2-1.jpg 970w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura2-1-600x448.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura2-1-300x224.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/cura2-1-768x573.jpg 768w\" sizes=\"auto, (max-width: 970px) 100vw, 970px\" \/><\/figure>\n\n\n\n<p>Here is the STL files you must print:<\/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<div class=\"wp-block-file\"><a id=\"wp-block-file--media-3544c5bb-0c60-4848-bcd7-289c93b40671\" href=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-STL-v1.1.zip\">Download FOXLAP-DIY-STL-v1.1<\/a><a href=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/FOXLAP-DIY-STL-v1.1.zip\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-3544c5bb-0c60-4848-bcd7-289c93b40671\">Download<\/a><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\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<ul class=\"wp-block-list\">\n<li><strong>01-FOXLAP-DIY-Overlay.stl<\/strong>:  1 print (you can use a different color for this part)<\/li>\n\n\n\n<li><strong>02-FOXLAP-DIY-box-top.stl<\/strong>: 1 print<\/li>\n\n\n\n<li><strong>03-FOXLAP-DIY-box-bottom.stl:<\/strong> 1 print <em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">(print this one if you don&#8217;t want external sensors)<\/mark><\/em><\/li>\n\n\n\n<li><strong>03-FOXLAP-DIY-box-bottom-ext.sensor.stl:<\/strong> 1 print <em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">(print this one if you want external sensors)<\/mark><\/em><\/li>\n\n\n\n<li><strong>04-FOXLAP-DIY-buttons.stl<\/strong>: 4 prints<\/li>\n\n\n\n<li><strong>05-FOXLAP-DIY-buttons-support.stl<\/strong>: 2 prints<\/li>\n\n\n\n<li><strong>06-FOXLAP-DIY-flex-rond.stl<\/strong>: 2 prints<\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">3- Assembly guide<\/h2>\n\n\n\n<p>Starting from here, you must have the printed box and the electronic parts in your hands. Here is the complete wiring schem. Even if it is a very simple schem, it requires a lot of wires.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"552\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/ESP32-pinout-1024x552.png\" alt=\"\" class=\"wp-image-425\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/ESP32-pinout-1024x552.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/ESP32-pinout-600x323.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/ESP32-pinout-300x162.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/ESP32-pinout-768x414.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/ESP32-pinout.png 1462w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"803\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/complete-foxlap-diy-schem2-1024x803-2.png\" alt=\"\" class=\"wp-image-1023\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/complete-foxlap-diy-schem2-1024x803-2.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/complete-foxlap-diy-schem2-1024x803-2-300x235.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/complete-foxlap-diy-schem2-1024x803-2-768x602.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/complete-foxlap-diy-schem2-1024x803-2-600x471.png 600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.1 Buttons assembly<\/mark><\/strong><br>Insert your 4 buttons in the buttons holder you previously printed.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-4 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=\"578\" data-id=\"373\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-1024x578.jpg\" alt=\"\" class=\"wp-image-373\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092046-2048x1155.jpg 2048w\" 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=\"1023\" height=\"652\" data-id=\"372\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092109-1.jpg\" alt=\"\" class=\"wp-image-372\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092109-1.jpg 1023w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092109-1-600x382.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092109-1-300x191.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208092109-1-768x489.jpg 768w\" sizes=\"auto, (max-width: 1023px) 100vw, 1023px\" \/><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-1024x578.jpg\" alt=\"\" class=\"wp-image-376\" style=\"width:819px;height:auto\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/01\/IMG20231208103220-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-5 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=\"578\" data-id=\"384\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-1024x578.jpg\" alt=\"\" class=\"wp-image-384\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208105330-1-2048x1155.jpg 2048w\" 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=\"578\" height=\"1024\" data-id=\"383\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-578x1024.jpg\" alt=\"\" class=\"wp-image-383\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-578x1024.jpg 578w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-scaled-600x1064.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-169x300.jpg 169w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-768x1362.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-866x1536.jpg 866w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-1155x2048.jpg 1155w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110447-scaled.jpg 1444w\" sizes=\"auto, (max-width: 578px) 100vw, 578px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>Make sure that the buttons slide well without constraints, enlarge the holes if necessary (There can sometimes be excess material left from 3D printing)<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-6 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=\"578\" data-id=\"385\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-1024x578.jpg\" alt=\"\" class=\"wp-image-385\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208110846-2048x1155.jpg 2048w\" 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=\"578\" data-id=\"386\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-1024x578.jpg\" alt=\"\" class=\"wp-image-386\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208111433-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>Then now assemble the buttons holder part using M1.2*5 screws. Do it for the left and right buttons<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"482\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-1024x482.jpg\" alt=\"\" class=\"wp-image-406\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-1024x482.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-600x282.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-300x141.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-768x361.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-1536x722.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons-ground-2048x963.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Connect buttons ground pins together. connect them to the display &#8220;K&#8221; ground pin. Wire each button with a different wire color, it will help you to to solder them to the correct ESP32 GPIO later.<\/p>\n\n\n\n<p>It&#8217;s time to add the 4 debounce resistors on the buttons. <\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\">IMPORTANT<\/mark><\/strong>: If you are not willing to use external sensors, you may not have to add the debounce resistors (even if it&#8217;s not recommanded). <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\">But you must add them if you are willing to monitor Temperature and RPM.<\/mark><\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"571\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/debounce-1024x571.png\" alt=\"\" class=\"wp-image-635\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/debounce-1024x571.png 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/debounce-600x335.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/debounce-300x167.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/debounce-768x429.png 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/debounce.png 1156w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"418\" height=\"90\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons_wire.png\" alt=\"\" class=\"wp-image-449\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons_wire.png 418w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttons_wire-300x65.png 300w\" sizes=\"auto, (max-width: 418px) 100vw, 418px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"438\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-1024x438.jpg\" alt=\"\" class=\"wp-image-413\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-1024x438.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-scaled-600x257.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-300x128.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-768x329.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-1536x658.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/buttonswire-2048x877.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Use hot glue on all welds, remember vibration is our enemy. Leave enough length for your cables as you will have to solder them to the esp32 located in the other part of the box<\/p>\n\n\n\n<p><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\"><strong>3.2 Display<\/strong> <strong>assembly<\/strong><\/mark><\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-7 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=\"578\" data-id=\"400\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-1024x578.jpg\" alt=\"\" class=\"wp-image-400\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231208115442-1-2048x1155.jpg 2048w\" 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=\"578\" data-id=\"415\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-1024x578.jpg\" alt=\"\" class=\"wp-image-415\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174124-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>put the display and screw it. You can add hot glue to adjust the display and make sure it don&#8217;t move. <\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-8 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=\"495\" data-id=\"420\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin-1024x495.jpg\" alt=\"\" class=\"wp-image-420\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin-1024x495.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin-600x290.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin-300x145.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin-768x371.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin-1536x743.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/esp-32-dev-kitdisplay-pin.jpg 1902w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>Here is how you will need to connect the display to the ESP32. Prepare the cables on the display, <strong>but don&#8217;t solder them now to the ESP32<\/strong>. Again, leave enough length for your cables as you will have to solder them to the esp32 located in the other part of the box<\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.3 Bottom part assembly<\/mark><\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-1024x578.jpg\" alt=\"\" class=\"wp-image-428\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152532-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Place the power on\/off switch and hot glue it.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-1024x578.jpg\" alt=\"\" class=\"wp-image-429\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211152701-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Place the M8 30mm screw add regular glue at the top of the screw, then screw it. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-1024x578.jpg\" alt=\"\" class=\"wp-image-430\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211153450-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>insert Hot glue inside remaining space where the M8 head inserted.<\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.4 Variant with external sensor box<\/mark><\/strong><\/p>\n\n\n\n<p>If you build the case to host the <a href=\"https:\/\/foxlap.com\/tutorials\/foxlap-external-sensors\/\">external sensor box<\/a>, you must add the M8 connector provided in the <strong>external sensor pack<\/strong>. If you don&#8217;t want the external sensors, you can skip this part.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"442\" height=\"326\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector-1.png\" alt=\"\" class=\"wp-image-641\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector-1.png 442w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector-1-300x221.png 300w\" sizes=\"auto, (max-width: 442px) 100vw, 442px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-cover\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"617\" class=\"wp-block-cover__image-background wp-image-637\" alt=\"\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/IMG20241230132749-1024x617.jpg\" data-object-fit=\"cover\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/IMG20241230132749-1024x617.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/IMG20241230132749-600x362.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/IMG20241230132749-300x181.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/IMG20241230132749-768x463.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/IMG20241230132749.jpg 1082w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><span aria-hidden=\"true\" class=\"wp-block-cover__background has-background-dim\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<p class=\"has-text-align-center has-large-font-size\"><\/p>\n<\/div><\/div>\n\n\n\n<p>Fill the space where the M8 connector is installed with hot glue. I recommend this in order to solidify this part, in fact, a cable will be connected here and if the cable is torn off brutally (shock, crash), the cable could damage the case by tearing off the connector.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"959\" height=\"488\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector2.png\" alt=\"\" class=\"wp-image-639\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector2.png 959w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector2-600x305.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector2-300x153.png 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/connector2-768x391.png 768w\" sizes=\"auto, (max-width: 959px) 100vw, 959px\" \/><\/figure>\n\n\n\n<p>Keep these 4 wires. you will have to solder them to the ESP32 when it will be installed in the case.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><mark style=\"background-color:rgba(0, 0, 0, 0);color:#3421f6\" class=\"has-inline-color\">Blue <\/mark>-&gt; <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#f01212\" class=\"has-inline-color\">+3.3V<\/mark><\/strong><br><mark style=\"background-color:rgba(0, 0, 0, 0);color:#624c13\" class=\"has-inline-color\">Brown <\/mark>-&gt; <strong>GND<\/strong><br>White -&gt; <strong>GPIO35<\/strong><br>Black -&gt; <strong>GPIO34<\/strong><br><\/p>\n\n\n\n<p><mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\"><strong>Regarding Ground:<\/strong> <\/mark> Especially true if you want to use external sensors, use <strong>star ground<\/strong> as grounding technique to minimize noise and ground loops in the electronic circuits. <strong>all ground connections in the circuit converge to a single central point<\/strong>. This prevents ground currents (return currents) from flowing through unintended paths, which could cause voltage drops or noise interference in sensitive parts of the circuit.<\/p>\n\n\n\n<p>Go to <a href=\"https:\/\/foxlap.com\/tutorials\/foxlap-external-sensors\/\">https:\/\/foxlap.com\/tutorials\/foxlap-external-sensors\/<\/a> to get more info about the external sensors part<\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.4 Battery assembly<\/mark><\/strong><\/p>\n\n\n\n<p>Take now your 18650 battery. Use a spot welder to add Nickel strips to your 18650 battery.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"345\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare-1024x345.jpg\" alt=\"\" class=\"wp-image-433\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare-1024x345.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare-600x202.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare-300x101.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare-768x259.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare-1536x518.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/battery-prepare.jpg 1921w\" 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=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-1024x578.jpg\" alt=\"\" class=\"wp-image-434\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211160338-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>place your battery inside the box and add hot glue in order to get it stuck<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"498\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/diagram-bottom-1024x498.jpg\" alt=\"\" class=\"wp-image-436\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/diagram-bottom-1024x498.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/diagram-bottom-600x292.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/diagram-bottom-300x146.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/diagram-bottom-768x373.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/diagram-bottom.jpg 1099w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>follow this schem to add the Lithium battery charger.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-1024x578.jpg\" alt=\"\" class=\"wp-image-439\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211163329-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>You must now have something like that. <strong>Make sure the switch button is OFF during the following steps<\/strong>. You can also check now that you can charge the battery and can measure +5V at the 5V\/GND pins of the Lithium battery charger board. <\/p>\n\n\n\n<p>The 10K resistors from +\/- will allow us to read the battery level using ADC. That&#8217;s clearly not the best way to get the battery level info, but remeber, this tutorial aims to create a simple and cheap version. It will gives you an estimation of the battery level.<\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.5 GNSS assembly<\/mark><\/strong><\/p>\n\n\n\n<p>Take your Mateksys M10Q. Prepare wires and solder them accordingly<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"694\" height=\"392\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/gnss-wire-diag.jpg\" alt=\"\" class=\"wp-image-445\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/gnss-wire-diag.jpg 694w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/gnss-wire-diag-600x339.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/gnss-wire-diag-300x169.jpg 300w\" sizes=\"auto, (max-width: 694px) 100vw, 694px\" \/><\/figure>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.6 SDCARD assembly<\/mark><\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"383\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/sdcard-wire-1024x383.jpg\" alt=\"\" class=\"wp-image-448\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/sdcard-wire-1024x383.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/sdcard-wire-600x224.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/sdcard-wire-300x112.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/sdcard-wire-768x287.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/sdcard-wire.jpg 1067w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">3.7 Wire to the ESP32<\/mark><\/strong><\/p>\n\n\n\n<p>the sdcard reader module i used here is not exaclty the same as the one i gave in the parts list. This one is too big, but i had only this one when i wanted to reproduce the DIY device based on this tutorial, i did&#8217;nt want to purchase the required SDmodule just for that. <strong>Use the one provided before.<\/strong><br>Or you can use an SDCard adaptor, yes it works&#8230; <\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-9 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"925\" height=\"522\" data-id=\"451\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174156.jpg\" alt=\"\" class=\"wp-image-451\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174156.jpg 925w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174156-600x339.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174156-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211174156-768x433.jpg 768w\" sizes=\"auto, (max-width: 925px) 100vw, 925px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>Now solder your wires to the ESP32 related GPIOs. <strong>It is becoming quite ugly right<\/strong>? \ud83d\ude42<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"955\" height=\"1024\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-955x1024.jpg\" alt=\"\" class=\"wp-image-453\" style=\"width:819px;height:auto\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-955x1024.jpg 955w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-scaled-600x643.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-280x300.jpg 280w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-768x823.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-1433x1536.jpg 1433w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231211183136-1910x2048.jpg 1910w\" sizes=\"auto, (max-width: 955px) 100vw, 955px\" \/><\/figure>\n\n\n\n<p>Connect now the wires of the display and buttons to the ESP32<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"493\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/closethebox-1024x493.jpg\" alt=\"\" class=\"wp-image-454\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/closethebox-1024x493.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/closethebox-600x289.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/closethebox-300x145.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/closethebox-768x370.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/closethebox.jpg 1260w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>(<strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">Only after Point 4 and 5 have been completely done<\/mark><\/strong>) <\/p>\n\n\n\n<p><strong>But before closing the box, you have to flash the board with the firmware<\/strong>. See Point 5. Firmware installation to do it.<\/p>\n\n\n\n<p>Close the box and seal it with 6 M3 16mm screws. And also Glue the front panel. I printed it in yellow, but yellow is not mandatory \ud83d\ude42 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-1024x578.jpg\" alt=\"\" class=\"wp-image-457\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-scaled-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-1536x866.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/02\/IMG20231212004058-2048x1155.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>It must be working now&#8230; And it&#8217;s looking better when you don&#8217;t see what is inside.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Obviously the dedicated board version is easier to assemble. The dedicated board includes  larger display, and way more functionnalities. Go to <a href=\"https:\/\/foxlap.com\/tutorials\/foxlap-dedicated-board\/\">this page<\/a> if you are interested by the dedicated board version<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-10 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=\"578\" data-id=\"553\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic1-1024x578.jpg\" alt=\"\" class=\"wp-image-553\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic1-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic1-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic1-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic1-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic1.jpg 1388w\" 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=\"578\" data-id=\"552\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic2-1024x578.jpg\" alt=\"\" class=\"wp-image-552\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic2-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic2-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic2-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic2-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/08\/pic2.jpg 1388w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"496\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/foxlap-1-1024x496.jpg\" alt=\"\" class=\"wp-image-675\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/foxlap-1-1024x496.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/foxlap-1-600x291.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/foxlap-1-300x145.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/foxlap-1-768x372.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/12\/foxlap-1.jpg 1069w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">4- Prepare your SDcard<\/h2>\n\n\n\n<p>More than 32GB partitions will not be recognized by the device. So make sure you are not using:<br>1- A bad no name SDCARD. <br>2- A partition more than 32GB. If your SDCARD capacity is more than 32GB, you will have to create a partition of 16 or 32GB and the extra space will be lost.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"263\" height=\"524\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/SDCARD.jpg\" alt=\"\" class=\"wp-image-488\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/SDCARD.jpg 263w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/SDCARD-151x300.jpg 151w\" sizes=\"auto, (max-width: 263px) 100vw, 263px\" \/><\/figure>\n\n\n\n<p>Format your SDCARD using FAT32 filesystem. Once it is done, your sdcard is empty and you can insert it into the device.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">5- Firmware installation<\/h2>\n\n\n\n<p>Download this zip file containing the firmware and the tools to flash the board.<\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">Version 2.04 &#8211; release date 2026\/<\/mark>03\/25<\/strong><br>What&#8217;s new in version 2.04:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Faster Gui using hardware SPI<\/li>\n\n\n\n<li>Led controller<\/li>\n\n\n\n<li>Various bug fixes<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/foxlap.com\/dl\/foxlap-DIY-v2.04.zip\">Download FoxLAP Firmware DIY V2.04<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\"><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">5.1 Flashing on windows<\/mark><\/strong> <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">operating system<\/mark><\/h4>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"618\" height=\"175\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash01.jpg\" alt=\"\" class=\"wp-image-486\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash01.jpg 618w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash01-600x170.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash01-300x85.jpg 300w\" sizes=\"auto, (max-width: 618px) 100vw, 618px\" \/><\/figure>\n\n\n\n<p>Unzip the content of the downloaded archive. USB Plug your ESP32 board to your computer. then launch the file &#8220;flash_firmware.bat&#8221;. You will be prompted to enter the COM number to communicate with the board. Enter it like this: <strong>COM6<\/strong> (obviously if the board is communicating with another COM number, change it accordingly&#8230; don&#8217;t contact me because COM6 is not recognized).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"927\" height=\"502\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash02.jpg\" alt=\"\" class=\"wp-image-487\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash02.jpg 927w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash02-600x325.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash02-300x162.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/flash02-768x416.jpg 768w\" sizes=\"auto, (max-width: 927px) 100vw, 927px\" \/><\/figure>\n\n\n\n<p>Or you can enter directly the following command<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">esptool.exe --chip esp32 --port <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">COM6<\/mark><\/strong> --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x1000 foxlap.DIY.bootloader.bin 0x8000 foxlap.DIY.partitions.bin 0xe000 boot_app0.bin 0x10000 foxlap.DIY.bin<\/pre>\n\n\n\n<p>Now Hard reboot the board. OK, now the device must be working&#8230; <\/p>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">5.2 Install a new firmware on an exising and running device<\/mark><\/h4>\n\n\n\n<p>Start your foxlap device. then select the menu &#8220;<strong>WiFi transfer<\/strong>&#8221; then &#8220;<strong>Start WiFi<\/strong>&#8220;. If you did not set a wifi password, do it on the device by selecting   &#8220;<strong>WiFi transfer<\/strong>&#8221; -&gt; &#8220;<strong>Set wifi password<\/strong>&#8221; (your password must be 8 characters length minimum. <br><br>Once it is done and your device is running in Wifi mode, you must see &#8220;Wifi Data Transfer&#8221; on the screen with the name of the created hotspot. (FoxLAP_xxxxxx). On your computer, connect the wifi to this hotspot (be careful, passwords are case sensitive)<br><br>Then open the software <strong>GPXRender <\/strong>(available on this website). Click on &#8220;synchronize device&#8221;. If your are connected to the device, a window will popup. Go to the &#8220;Firmware&#8221; tab, then select the new firmware file and then click on &#8220;Flash&#8221;. You are now able to flash device without the need of dismounting it<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"766\" height=\"558\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/06\/gpxrender-flash-firmware.png\" alt=\"\" class=\"wp-image-521\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/06\/gpxrender-flash-firmware.png 766w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/06\/gpxrender-flash-firmware-600x437.png 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/06\/gpxrender-flash-firmware-300x219.png 300w\" sizes=\"auto, (max-width: 766px) 100vw, 766px\" \/><\/figure>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">6- First launch and configuration<\/h2>\n\n\n\n<p>On the first launch, you must get this screen. If it is not already done, <a href=\"https:\/\/foxlap.com\/register.php\">create a FoxLAP account here<\/a><br>You need to enter your name, select a password, etc. Some characters are not allowed, so be careful. You&#8217;ll need to enter this information into the device, and screen space is limited, so I had to make choices about which characters were allowed or not.<\/p>\n\n\n\n<p>Only these characters are allowed at this time: <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">0-9, a-z, A-Z, ! # $ % &amp; &#8216; ( ) * + , &#8211; . @ : ; =<\/mark><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"461\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-1024x461.jpg\" alt=\"\" class=\"wp-image-489\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-1024x461.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-scaled-600x270.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-300x135.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-768x345.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-1536x691.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403174947-2048x921.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>What you will need to enter on first launch is shown in this video. The device will must be able to connect to the internet, that&#8217;s why you will have to enter Wifi credentials. You can have some issues with passwords containing special characters not supported by the device, in that case, you can share your connection via your mobile creating a hotspot with a password containing characters supported by the device.<\/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 - First Launch\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/bhl_U4WhiV8?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><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">If the connection is unsuccessfull, shutdown the device and restart to retry<\/mark><\/p>\n\n\n\n<p>Once the connection is successfull, the device will retrieve the settings stored on your account available at that page <a href=\"https:\/\/foxlap.com\/mydevice.php\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/foxlap.com\/mydevice.php<\/a> <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"521\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings-1024x521.jpg\" alt=\"\" class=\"wp-image-490\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings-1024x521.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings-600x305.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings-300x153.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings-768x391.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings-1536x782.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/trackssettings.jpg 1872w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>You will be able to change settings and also select\/unselect available tracks on your device. <strong>Don&#8217;t select all tracks<\/strong>. Only select tracks from your country or the ones you will use. The more you select tracks, longer will be track detection. don&#8217;t forget to click on &#8220;<strong>Save Track selection<\/strong>&#8221; when you change selection.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-11 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=\"461\" data-id=\"491\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-1024x461.jpg\" alt=\"\" class=\"wp-image-491\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-1024x461.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-scaled-600x270.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-300x135.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-768x345.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-1536x691.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192134-2048x921.jpg 2048w\" 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=\"461\" data-id=\"492\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-1024x461.jpg\" alt=\"\" class=\"wp-image-492\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-1024x461.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-scaled-600x270.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-300x135.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-768x345.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-1536x691.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240403192145-2048x921.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>And, on the device, go to the &#8220;<strong>Synchronize<\/strong>&#8221; icon, then click on &#8220;<strong>Update track databse<\/strong>&#8220;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What to do if your track is not available on the device<\/strong>?<\/h2>\n\n\n\n<p>I recommand to create your own track using the provided tool available here http<a href=\"https:\/\/foxlap.com\/track_creation.php\" target=\"_blank\" rel=\"noreferrer noopener\">s:\/\/foxlap.com\/track_creation.php<\/a><\/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=\"track creation\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/yb-_YDaLdlY?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>Once the track is created, go to <a href=\"https:\/\/foxlap.com\/mydevice.php\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/foxlap.com\/mydevice.php<\/a> then select your newly created track in &#8220;My own tracks&#8221; category, then &#8220;Save selection&#8221;. <br>And also on the device: go to the &#8220;<strong>Synchronize<\/strong>&#8221; icon, then click on &#8220;<strong>Update track databse<\/strong>&#8220;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A few tips:<\/h2>\n\n\n\n<p><br><strong>I will add some info\/tutorials on how to use everything. But remember:<\/strong><br>&#8211; There may be bugs. The DIY firmware is a fork from the dedicated board firmware, and i have not tested everything on this DIY version (i&#8217;m not using it, the dedicated board is way much better). i will probably install a Bug Tracking Tool here where you will be able to share your issues. <br>&#8211; i can&#8217;t predict how good will be the GNSS reception at your location. Here in France, the signal quality is very good. I will add also in the next coming version a way to select yourself SBAS PRNs. <br>&#8211; before heading out to ride on the track, turn on the device and make sure reception is good. You must see in the bottom bar at least 12 satelites and HDOP (horizontal dilution of precision &#8211; HDOP must be less than 1 and 0.7 is the ideal. here in France i often get 0.6). turn on the device, leave it still to ensure good and stable reception.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"564\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519-1024x564.jpg\" alt=\"\" class=\"wp-image-494\" style=\"width:532px;height:auto\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519-1024x564.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519-600x330.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519-300x165.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519-768x423.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519-1536x845.jpg 1536w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/04\/IMG20240404011519.jpg 1548w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-nv-c-2-color\">I have some requests regarding commercial distribution. No, you cannot sell this DIY version<\/mark>. <\/strong>Commecial use of this DIY vesion is not allowed. <br><strong>If you want to become a reseller<\/strong>, <a href=\"https:\/\/foxlap.com\/contact.php\">contact me<\/a>.<br><br>That&#8217;s all for the moment,<br>Renan BROQUIN<\/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:33.33%\">\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/foxlap.com\/dl\/foxLAP-UserGuide.pdf\"><img decoding=\"async\" src=\"https:\/\/foxlap.com\/home\/images\/pdf-userguide.png\" alt=\"\" style=\"width:106px;height:auto\"\/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n<h2 class=\"wp-block-heading\"><strong>Downoad FoxLAP User Guide<\/strong><\/h2>\n\n\n\n<p><a href=\"https:\/\/foxlap.com\/dl\/foxLAP-UserGuide.pdf\">https:\/\/foxlap.com\/dl\/foxLAP-UserGuide.pdf<\/a><\/p>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Quick update:<\/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=\"FoxLAP - Exhaust gaz temperature\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/T80HEyc_Tik?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>1- Exhaust gaz probe is ready \ud83d\ude42 the lambda probe is under development<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/05\/rotax-jetting-1-1024x578.jpg\" alt=\"\" class=\"wp-image-514\" srcset=\"https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/05\/rotax-jetting-1-1024x578.jpg 1024w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/05\/rotax-jetting-1-600x338.jpg 600w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/05\/rotax-jetting-1-300x169.jpg 300w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/05\/rotax-jetting-1-768x433.jpg 768w, https:\/\/foxlap.com\/tutorials\/wp-content\/uploads\/2024\/05\/rotax-jetting-1.jpg 1156w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>2- The device is now able to retrieve your local weather and calculate the optimal main jet for your rotax engines. The jetting is based on Atmospheric Thermodynamics Calculation. Feature coming soon in the DIY firmware&#8230; is it good ?<\/p>\n\n\n\n<p>And the foxlap in action (PCB version)&#8230; because it&#8217;s a lot of boring tech things here, don&#8217;t forget to get fun:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">This is what is look like to drive with this Lap Timer:<\/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\">\nhttps:\/\/www.youtube.com\/watch?v=UKf8alugTRs\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>FoxLAP &#8211; The DIY version This is what you will get at the end of this tutorial. A complete working [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":457,"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":[7,6],"tags":[],"class_list":["post-283","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-gps","category-telemetry"],"_links":{"self":[{"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts\/283","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=283"}],"version-history":[{"count":128,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts\/283\/revisions"}],"predecessor-version":[{"id":1389,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/posts\/283\/revisions\/1389"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/media\/457"}],"wp:attachment":[{"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/media?parent=283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/categories?post=283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/foxlap.com\/tutorials\/wp-json\/wp\/v2\/tags?post=283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}