#include ../Makefile.local
include $(WISELIB_BASE)/applications/Makefile.local

# PORT is used for flash-targets
ifndef PORT
   PORT=/dev/ttyUSB0
endif

ifndef TOS_NODE_ID
   TOS_NODE_ID=1
endif

shawn:
	make -f $(WISELIB_BASE)/applications/Makefile.shawn

scw_msb:
	make -f $(WISELIB_BASE)/applications/Makefile.scw scw_msb

contiki_msb:
	make -f $(WISELIB_BASE)/applications/Makefile.contiki contiki_msp TARGET=msb430

contiki_sky:
	make -f $(WISELIB_BASE)/applications/Makefile.contiki contiki_msp TARGET=sky

contiki_native:
	make -f $(WISELIB_BASE)/applications/Makefile.contiki contiki TARGET=native

contiki_micaz:
	make -f $(WISELIB_BASE)/applications/Makefile.contiki contiki_atmel TARGET=micaz

feuerware:
	make -f $(WISELIB_BASE)/applications/Makefile.feuerware

isense:
	make -f $(WISELIB_BASE)/applications/Makefile.isense

tinyos-telosb:
	make -f $(WISELIB_BASE)/applications/Makefile.tinyos.telosb telosb tinyos-telosb

tinyos-micaz:
	make -f $(WISELIB_BASE)/applications/Makefile.tinyos.micaz micaz tinyos-micaz

tinyos-tossim:
	make -f $(WISELIB_BASE)/applications/Makefile.tinyos.tossim micaz sim tinyos-tossim

pc:
	make -f $(WISELIB_BASE)/applications/Makefile.pc

flash-jtag:
	$(MSP430_JTAG) -mr -p out/$(BIN_OUT).hex

flash-sky:
	$(CONTIKI_PATH)/tools/sky/msp430-bsl-linux --telosb -D \
		-c $(PORT) -r -e -I -p out/$(BIN_OUT).hex

flash-micaz:
	uisp -dprog=mib510 -dserial=$(PORT) -dpart=ATmega128 --wr_fuse_h=0xd1 \
		--wr_fuse_e=ff --erase --upload if=out/$(BIN_OUT).srec --verify

flash-tinyos-sky:
	tos-bsl --telosb -c $(PORT) -r -e -I -p out/$(BIN_OUT).hex

tinyos-nodeid-micaz:
	cp build/micaz/main.exe out/$(BIN_OUT).exe
	tos-set-symbols out/$(BIN_OUT).srec out/$(BIN_OUT).srec-$(TOS_NODE_ID) \
	  TOS_NODE_ID=$(TOS_NODE_ID) ActiveMessageAddressC__addr=$(TOS_NODE_ID)
	avr-objcopy out/$(BIN_OUT).srec-$(TOS_NODE_ID) out/$(BIN_OUT).hex

# Alternatively possible:
#   make -f $MAKERULES telosb reinstall,22
tinyos-nodeid-telosb:
	tos-set-symbols --objcopy msp430-objcopy --objdump msp430-objdump \
	  --target ihex  build/telosb/main.exe out/$(BIN_OUT).hex-$(TOS_NODE_ID) \
	  TOS_NODE_ID=$(TOS_NODE_ID) ActiveMessageAddressC__addr=$(TOS_NODE_ID)
	cp out/$(BIN_OUT).hex-$(TOS_NODE_ID) out/$(BIN_OUT).hex

clean:
	rm -f out/*
	rm -Rf _TOSSIMmodule.so TOSSIM.py* app.xml simbuild/  build/ \
		contiki-sky.* symbols.* obj_*
