YOU CAN BUILD A 50-DOLLAR OPEN ALTERNATIVE TO A 5,000-DOLLAR DRONE NAVIGATION BOX
Build a 50-dollar open inertial navigation box that logs motion, heading and GPS so you can test your own navigation algorithms, where a comparable commercial unit costs about 5,000 dollars.
by Pablo Raul Yanyachi and colleagues
RoboticsOpen-hardware
Built withESP32Arduino3D printing
- difficulty
- ●●●●○
- time
- a weekend-plus
- license
- GPL-3.0
- repo
- repo FINISHED0 stars
●●●●○ · a weekend-plus · GPL-3.0 · 0 stars · repo FINISHED
WHAT YOU’LL NEED
Jump to section
COMPAREE VERDICT
OpenNavSense is an open inertial navigation platform built from commodity sensors and documented in a peer-reviewed HardwareX paper by a research group at Universidad Nacional de San Agustin de Arequipa in Peru. The authors name the VectorNav VN-300 (about 5,000 dollars) as the closest commercial analog and put their hardware at about 50 dollars, but it is a development platform for testing your own estimation algorithms, not a drop-in replacement: it logs calibrated accelerometer, gyroscope, magnetometer, barometer and GPS data and runs an example Mahony attitude filter. The hardware is an ESP32 on a custom KiCad board with an LSM6DSOX IMU, a BN880 GPS module with compass and a BMP180 barometer, logging to microSD at 20 Hz and powered by two 18650 cells. The firmware uses FreeRTOS so each job runs in its own task without blocking. They tested it as a payload on a DJI Phantom 4 Pro: roll and yaw tracked the drone's own data closely (correlation 0.83 and 0.96), position and altitude correlated above 0.90, but pitch was poor (about 0.39) because of airframe vibration. What will take time is calibration: the magnetometer needs hard and soft iron correction and the accelerometer and gyroscope need offsets, computed by a compiled MATLAB program for Windows that ships with a runtime installer. This is a research platform, not certified avionics, so it belongs in a ground robot, a test rig or a student project, not in anything that flies over people.
IN THE REPO
GOOD TO KNOW
- —Full PCB design files (KiCad), 3D-printable case, firmware source and the calibration tool are on the Open Science Framework at osf.io/a9jg2.
- —The paper's bill of materials lists the main parts with prices and supplier links (no manufacturer part numbers).
- —The paper describes the calibration procedure in detail and includes the equations for sensor fusion.
- —No pre-compiled firmware or ready-to-flash binary is provided; you build from source.
- —Licence is GNU General Public License 3.0, which permits commercial use with source disclosure.
- —The desktop calibration app is a compiled MATLAB program; the MATLAB Runtime installer is provided, so you do not need a MATLAB licence.
Parts to buy
6 itemsFrom our check of the build. Exact quantities and part numbers are in the creator’s BOM.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
More builds like this
All projectsGallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Read the HardwareX paper at the DOI link to understand what the system does and what the calibration procedure involves (The paper is open-access and contains the theory, validation results and step-by-step calibration instructions)
- 2.Download the hardware files from the Open Science Framework repository (This has the KiCad PCB files and Gerbers, the firmware source (.ino files), the STL case parts and the MATLAB-based calibration tool. The bill of materials, with prices and supplier links, is a table in the paper.)
- 3.Order the PCB and source the components from the BOM(The BN880 GPS module and the LSM6DSOX IMU are the critical parts; the paper specifies exact models)
- 4.Assemble the board, flash the firmware and work through the calibration procedure with the provided calibration program(Calibration requires rotating the board through known orientations and recording the raw sensor data)
KNOWN ISSUES
- Check what you are buying for each sensor. The paper's BOM gives prices and supplier links but not exact module part numbers, so confirm that your LSM6DSOX, BMP180 and microSD parts match the footprints on the KiCad board before ordering.
- Magnetometer calibration is sensitive to nearby metal and magnetic fields, so do it away from your bench power supply and anything ferrous.
- The calibration app is a compiled MATLAB program for Windows: you install the free MATLAB Runtime first (installer provided), then run OpenNavSenseCalibration.exe. On macOS or Linux you will need a Windows machine or VM.
- The sensor fusion algorithm outputs orientation in quaternions, which most people find less intuitive than Euler angles; you will need to convert them if your application expects roll, pitch and yaw.
- GPS lock indoors is unreliable, so initial testing needs a clear view of the sky or you will spend an hour troubleshooting a working system.
- This is a research prototype, not a certified inertial navigation unit, so do not use it in anything where a sensor failure could hurt someone.
Can I use this in a drone that flies over people?
No. This is a research platform without any certification, and the paper explicitly positions it as a low-cost alternative for prototypes and educational projects. Use it in a ground robot, a test rig or a student UAV that flies in a netted area.
What is the update rate?
All tasks except the GPS run at 20 Hz (every 50 ms), and the board writes a 23-parameter line to the microSD card at that rate; selected parameters can also be sent over Bluetooth. The BN880 GPS module is rated for 10 Hz, but the authors run it at 5 Hz (every 200 ms). They say the rate can be raised, at the cost of higher energy consumption.
How does it compare to a Pixhawk or an ArduPilot flight controller?
A Pixhawk is a complete autopilot with motor outputs, failsafes and mission planning; OpenNavSense is just the sensor fusion part. If you need navigation data to feed into your own control loop, this gives you that. If you need a flight controller, use a Pixhawk.
Do I need to recalibrate it every time I move it to a new location?
The accelerometer and gyroscope offsets are stable once set, but the magnetometer hard and soft iron coefficients depend on the local magnetic field and any nearby metal, so yes, recalibrate if you move the system into a new vehicle or near new equipment.
Can I log data for longer than a few hours?
Yes. The paper says the two 18650 cells run it for at least 12 hours, and it writes about 250 bytes every 50 ms (roughly 5 KB per second), so a microSD card up to 64 GB (FAT32) will hold far more than one battery charge of data.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion1
FROM THE COMPAREE TEAM
The paper puts this build at about 50 dollars, compares it with a VectorNav VN-300 at around 5,000 dollars, and validates it on a DJI Phantom 4 Pro. What would you use a low-cost inertial navigation system for: a ground robot, a test rig, a student UAV?
Pablo Raul Yanyachi and colleagues
OpenNavSense was developed by Pablo Raul Yanyachi, Jorch Mendoza-Chok, Brayan Espinoza-Garcia, Juan Carlos Cutipa Luque and Daniel Yanyachi Aco Cardenas at the Pedro Paulet Astronomical and Aerospace Research Institute, Universidad Nacional de San Agustin de Arequipa in Peru. The project was published in HardwareX, a peer-reviewed journal for open-source scientific hardware, and validated by flight-testing it against a DJI Phantom 4 Pro's own telemetry.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.
CompareeTEAM19d agoedited
Practical notes from our verification: the files are hosted on the Open Science Framework rather than GitHub, which is perfectly usable. You get the KiCad PCB design, STL files for a 3D-printed case, the ESP32 firmware and a calibration program, all under GPL-3.0. The HardwareX paper is open access and contains the bill of materials and the validation, a flight test with the board mounted under a DJI Phantom 4 Pro. There is no video walkthrough, but the paper describes the calibration step by step. The calibration tool is not Python: it is a compiled MATLAB App Designer program for Windows that comes with a MATLAB Runtime installer, so you do not need MATLAB itself. The biggest practical hurdle is the magnetometer calibration, which means recording readings while moving the board through full rotations on all three axes so the software can correct hard and soft iron distortion. Correction (4 October 2026): we re-checked this page line by line against the project's own repository, documentation and videos, and fixed errors in earlier versions.