Skip to content

Commit dddd92a

Browse files
committed
Made a proper Arduino library
1 parent 3066ac6 commit dddd92a

17 files changed

+17
-24
lines changed

Makefile

-15
This file was deleted.

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
TinyEKF is a simple C/C++ implementation of the [Extended Kalman Filter](http://home.wlu.edu/~levys/kalman_tutorial/)
44
that is general enough to use on different projects. In order to make it
55
practical for running on Arduino, STM32, and other microcontrollers, it uses
6-
static (compile-time) memory allocation (no "new" or "malloc"). The examples
6+
static (compile-time) memory allocation (no "new" or "malloc"). The **examples**
77
folder includes both a "pure C" example from the literature, as well as an
8-
Arduino example of sensor fusion. The **python** folder includes an abstract
8+
Arduino example of sensor fusion. The **extras/python** folder includes an abstract
99
Python class that you can use to prototype your EKF before implementing it in
1010
C/C++.
1111

@@ -18,7 +18,7 @@ to pins 4 (SDA) and 5 (SCL) of the Uno, or pins 18 (SDA) and 19 (SCL) of the Tee
1818
consult the [documentation](https://www.arduino.cc/en/Reference/Wire) on the Wire library. The analog output
1919
from the LM35 should go to the A0 pin of your Arduino or Teensy.
2020

21-
In addition to the class definition, the **python** folder has an example of mouse tracking, using OpenCV.
21+
In addition to the class definition, the **extras/python** folder has an example of mouse tracking, using OpenCV.
2222
So you will have to install OpenCV to run this example. There is also a sensor-fusion example in this folder,
2323
which uses the [RealtimePlotter](https://github.com/simondlevy/RealtimePlotter) package, requiring
2424
Matplotlib.

examples/Makefile renamed to extras/c/Makefile

+4-6
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,18 @@
55
#
66
# MIT License
77

8+
SRC = ../../src
9+
810
all: gps_ekf
911

1012
run: gps_ekf
1113
./gps_ekf
1214

13-
gps_ekf: gps_ekf.c ../tiny_ekf.c ../tiny_ekf.h
14-
gcc -Wall -I. -I.. -o gps_ekf gps_ekf.c ../tiny_ekf.c -lm
15+
gps_ekf: gps_ekf.c $(SRC)/tiny_ekf.c $(SRC)/tiny_ekf.h
16+
gcc -Wall -I. -I$(SRC) -o gps_ekf gps_ekf.c $(SRC)/tiny_ekf.c -lm
1517

1618
edit:
1719
vim gps_ekf.c
1820

1921
clean:
2022
rm -f gps_ekf *.o *~ ekf.csv
21-
22-
commit:
23-
git commit -a --allow-empty-message -m ''
24-
git push
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Binary file not shown.

library.properties

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name=TinyEKF
2+
version=0.1
3+
author= Simon D. Levy<simon.d.levy@gmail.com>
4+
maintainer=Simon D. Levy<simon.d.levy@gmail.com>
5+
sentence=Lightweight Extended Kalman Filter
6+
paragraph=Includes Python and C examples
7+
category=Other
8+
url=https://github.com/simondlevy/TinyEKF
9+
architectures=*
10+
includes=TinyEKF.h

Doxyfile renamed to src/Doxyfile

File renamed without changes.

TinyEKF.h renamed to src/TinyEKF.h

File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)