You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
VQF-C: A Lightweight Implementation of VQF for Embedded Devices
VQF-C is a C language implementation of the full VQF, with credit to the original project's author for their pioneering work. This project aims to bring the full capabilities of VQF to embedded devices such as Cortex-M4F and RISC-V MCUs, with minimal overhead.
Key Highlights
Full Version VQF Functionality: The implementation retains the full feature set of the original VQF full version.
Easy Integration: The code is structured to be easily integrated into existing C environments for embedded MCUs/chips.
Usage
To use VQF-C in your embedded application, include the headers and utilize the provided functions.
#include"vqf.h"intmain() {
// Initialize VQF-C and perform operationsvqf_real_tgyr[3];
vqf_real_tacc[3];
vqf_real_tmag[3];
vqf_real_tquat6D[4];
vqf_real_tquat9D[4];
vqf_real_tgyrTs=0.000250;
vqf_real_taccTs=0.001;
vqf_real_tmagTs=5.0;
initVqf(gyrTs, accTs, magTs);
while (1) {
// Update VQF-C with new sensor dataif (newGyrData) updateGyr(gyr);
if (newAccData) updateAcc(acc);
if (newMagData) updateMag(mag);
if (newGyrData||newAccData) {
quat6D=getQuat6D();
}
if (newMagData) {
quat9D=getQuat9D();
}
}
return0;
}
TODO
Integrate CMSIS-DSP library functions for mathematics and filtering to replace current implementations, aiming to achieve better runtime performance.
License
VQF-C is open source and available under the MIT License. This means that you can use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software. The full terms of the license are detailed in the LICENSE file.
For a quick overview, here are some key points about the MIT License:
Free to use: You can use VQF-C in your projects without any cost.
Permissive: You can modify the source code and distribute your modified versions.
No Warranty: The software is provided "as is" without any warranties.
Requiring preservation of copyright and license notices: You must include the copyright notice and a pointer to where the MIT License can be found in any substantial portions of the software.