altos: Add nickle kalman implementation.
[fw/altos] / src / Makefile.proto
index 625ca459f58e20916978b565272e7e2217a42a8e..85c0c46e4c1ea7684bf79fd75d57a7d32365f711 100644 (file)
@@ -5,6 +5,11 @@
 vpath %.c ..
 vpath %.h ..
 vpath make-altitude ..
+vpath make-kalman ..
+vpath kalman.5c ../kalman
+vpath kalman_filter.5c ../kalman
+vpath load_csv.5c ../kalman
+vpath matrix.5c ../kalman
 vpath ao-make-product.5c ..
 
 CC=sdcc
@@ -13,9 +18,11 @@ ifndef VERSION
 include ../Version
 endif
 
-CFLAGS=--model-small --debug --opt-code-speed
+CFLAGS=--model-small --debug --opt-code-speed -DCODESIZE=$(CODESIZE)
 
-LDFLAGS=--out-fmt-ihx --code-loc 0x0000 --code-size 0x8000 \
+CODESIZE ?= 0x8000
+
+LDFLAGS=--out-fmt-ihx --code-loc 0x0000 --code-size $(CODESIZE) \
        --xram-loc 0xf000 --xram-size 0xda2 --iram-size 0xff
 
 INC = \
@@ -23,6 +30,7 @@ INC = \
        ao_pins.h \
        cc1111.h \
        altitude.h \
+       ao_kalman.h \
        25lc1024.h
 
 #
@@ -140,6 +148,7 @@ SKY_DRIVER_SRC = \
 TM_TASK_SRC = \
        ao_flight.c \
        ao_log.c \
+       ao_log_big.c \
        ao_report.c \
        ao_telemetry.c
 
@@ -171,8 +180,9 @@ TMINI_DRIVER_SRC = \
 TMINI_TASK_SRC = \
        ao_flight.c \
        ao_log.c \
+       ao_log_tiny.c \
        ao_report.c \
-       ao_telemetry.c
+       ao_telemetry_tiny.c
 
 TMINI_MAIN_SRC = \
        ao_telemini.c
@@ -186,6 +196,37 @@ TMINI_BASE_SRC = \
        $(TMINI_TASK_SRC) \
        $(TMINI_MAIN_SRC)
 
+#
+# Sources for TeleNano
+TNANO_DRIVER_SRC = \
+       ao_adc.c \
+       ao_ignite.c \
+       ao_config.c \
+       ao_storage.c \
+       ao_intflash.c
+
+TNANO_TASK_SRC = \
+       ao_flight.c \
+       ao_log.c \
+       ao_log_tiny.c \
+       ao_report.c \
+       ao_telemetry_tiny.c
+
+TNANO_MAIN_SRC = \
+       ao_telenano.c
+
+TNANO_BASE_SRC = \
+       $(ALTOS_SRC) \
+       $(ALTOS_DRIVER_SRC) \
+       $(TELE_DRIVER_SRC) \
+       $(TELE_COMMON_SRC) \
+       $(TNANO_DRIVER_SRC) \
+       $(TNANO_TASK_SRC) \
+       $(TNANO_MAIN_SRC)
+
+#
+# TI Dongle sources
+#
 TI_MAIN_SRC = \
        ao_tidongle.c
 
@@ -272,6 +313,9 @@ all: ../$(PROG)
 ../altitude.h: make-altitude
        nickle $< > $@
 
+../ao_kalman.h: make-kalman kalman.5c kalman_filter.5c load_csv.5c matrix.5c
+       sh $< > $@
+
 ao_product.h: ao-make-product.5c ../Version
        $(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@