2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								ARDUINO_DIR?="external/ArduinoCore-avr"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								NANOPB_DIR?="external/nanopb"
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								CC=avr-gcc
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								CXX=avr-g++
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								OBJCOPY=avr-objcopy
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								OBJDUMP=avr-objdump
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								BINSIZE=avr-size
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								OUT=./bin/
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								NAME=collar
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								CFLAGS?=-Datmega328p\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-Dmega328p\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-mmcu=atmega328p\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-Wl,--gc-sections\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-DF_CPU=16000000L\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-DARDUINO=200\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-DARDUINO_AVR_NANO\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-DARDUINO_ARCH_AVR\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
												-std=c++11\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-Os\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-ffunction-sections\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-fdata-sections\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-MMD\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-flto\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
												-fno-fat-lto-objects\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
										  	-fuse-linker-plugin
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								INC_DIRS?=-I./$(ARDUINO_DIR)/libraries/SPI/src\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./$(ARDUINO_DIR)/cores/arduino\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./$(ARDUINO_DIR)/variants/eightanaloginputs\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./libraries/arduino-LoRa/src\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./libraries/TinyGPSPlus/src\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								          -I./libraries/TinyLoRa\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 23:27:19 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								          -I./libraries/arduino-base64\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./$(NANOPB_DIR)\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./protobuf\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													-I./$(ARDUINO_DIR)/libraries/SoftwareSerial/src/
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								SRC_FILES?=./$(ARDUINO_DIR)/cores/arduino/main.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/wiring_digital.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/wiring_analog.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/WInterrupts.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/hooks.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/wiring.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								           ./$(ARDUINO_DIR)/cores/arduino/HardwareSerial.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								           ./$(ARDUINO_DIR)/cores/arduino/HardwareSerial0.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								           ./$(ARDUINO_DIR)/cores/arduino/HardwareSerial1.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								           ./$(ARDUINO_DIR)/cores/arduino/HardwareSerial2.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								           ./$(ARDUINO_DIR)/cores/arduino/HardwareSerial3.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/WString.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/Print.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/Stream.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/new.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/cores/arduino/abi.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/libraries/SoftwareSerial/src/SoftwareSerial.cpp\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
													 ./$(ARDUINO_DIR)/libraries/SPI/src/SPI.cpp\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./libraries/arduino-LoRa/src/LoRa.cpp\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./libraries/TinyGPSPlus/src/TinyGPS++.cpp\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								           ./libraries/TinyLoRa/TinyLoRa.cpp\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 23:27:19 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								           ./libraries/arduino-base64/Base64.cpp\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
													 ./$(NANOPB_DIR)/pb_encode.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(NANOPB_DIR)/pb_decode.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(NANOPB_DIR)/pb_common.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./protobuf/gateway/message.pb.c
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								SRC_FILES_COMMON?=\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(NANOPB_DIR)/pb_encode.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(NANOPB_DIR)/pb_decode.c\
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
													 ./$(NANOPB_DIR)/pb_common.c\
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
													 ./protobuf/gateway/message.pb.c
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								build: $(OUT)$(NAME)
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								$(OUT)$(NAME): $(OUT)$(NAME).elf
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
									$(OBJCOPY) -R .eeprom -O ihex $(OUT)$(NAME).elf $(OUT)$(NAME).hex
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								$(OUT)eep.hex: $(OUT)$(NAME).elf
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									$(OBJCOPY) -j .eeprom --change-section-lma .eeprom=0 -O ihex $(OUT)$(NAME).elf $(OUT)eep.hex
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								$(OUT)$(NAME).elf: protobufg bin
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
									$(CC) $(CFLAGS) -o $(OUT)$(NAME).elf collar.cpp $(INC_DIRS) $(SRC_FILES) 
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								test:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									g++ -o $(OUT)test prototest.cpp $(INC_DIRS) $(SRC_FILES_COMMON)
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									$(OUT)test
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								protobufg:
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
									mkdir -p protobuf/gateway
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
									python3 external/nanopb/generator/nanopb_generator.py gateway/message.proto -D protobuf
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								bin: 
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									mkdir bin
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								flash: $(OUT)$(NAME)
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
									avrdude -v -patmega328p -carduino -P/dev/ttyUSB0 -b115200 -D -Uflash:w:$(OUT)$(NAME).hex:i
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								run: flash
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									screen /dev/ttyUSB0
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
								start: flash
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									systemctl start lora-gateway-bridge loraserver
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 23:27:19 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								stop:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									avrdude -v -patmega328p -carduino -P/dev/ttyUSB0 -b115200 -D -Uflash:w:nothing.hex:i
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-18 20:07:23 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
									systemctl stop lora-gateway-bridge loraserver
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-07 15:23:50 -07:00
										 
									 
								 
							 | 
							
								
									
										
									
								
							 | 
							
								
							 | 
							
							
								
							 | 
						
					
						
							
								
									
										
										
										
											2020-04-06 19:08:50 -07:00
										 
									 
								 
							 | 
							
								
							 | 
							
								
							 | 
							
							
								clean:
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									rm -r protobuf
							 | 
						
					
						
							| 
								
							 | 
							
								
							 | 
							
								
							 | 
							
							
									rm -r bin
							 |