vail-adapter

Firmware for USB morse code key adapter
git clone https://git.woozle.org/neale/vail-adapter.git

Neale Pickett  ·  2024-02-05

Makefile

 1FQBN_qtpy = adafruit:samd:adafruit_qtpy_m0
 2FQBN_xiao = Seeeduino:samd:seeed_XIAO_m0
 3UF2_MOUNT = /mnt/chromeos/removable/Arduino
 4ARDUINO_DIR = /app/Arduino
 5BUILDER = flatpak run --command ${ARDUINO_DIR}/arduino-builder cc.arduino.arduinoide
 6
 7default: build/vail-adapter.qtpy.uf2 build/vail-adapter.xiao.uf2
 8
 9install: install-xiao
10install-xiao: build/vail-adapter.xiao.uf2
11	./install.sh $< $(UF2_MOUNT) 
12install-qtpy: build/vail-adapter.qtpy.uf2
13	./install.sh $< /mnt/chromeos/removable/QTPY_BOOT
14
15clean:
16	rm -rf build/*
17
18# uf2conv.py is covered by an MIT license.
19build/uf2conv.py: build/uf2families.json
20	mkdir -p build
21	curl -L https://raw.githubusercontent.com/microsoft/uf2/master/utils/$(@F) > $@
22	chmod +x $@
23build/uf2families.json:
24	mkdir -p build
25	curl -L https://raw.githubusercontent.com/microsoft/uf2/master/utils/$(@F) > $@
26
27%.xiao.uf2: %.xiao.bin build/uf2conv.py
28	build/uf2conv.py -b 0x2000 -c -o $@ $<
29
30%.qtpy.uf2: %.qtpy.bin build/uf2conv.py
31	build/uf2conv.py -b 0x2000 -c -o $@ $<
32
33build/%.qtpy.bin: FQBN = adafruit:samd:adafruit_qtpy_m0
34build/%.xiao.bin: FQBN = Seeeduino:samd:seeed_XIAO_m0
35build/vail-adapter.%.bin: vail-adapter.ino *.cpp *.h
36	mkdir -p build/$*
37	arduino-builder \
38		-build-cache ~/.cache/arduino \
39		-build-path build/$* \
40		-core-api-version 10813 \
41		-fqbn $(FQBN) \
42		-hardware ~/.arduino15/packages \
43		-tools $(ARDUINO_DIR)/tools-builder \
44		-tools ~/.arduino15/packages \
45		-hardware $(ARDUINO_DIR)/hardware \
46		-hardware ~/.arduino15/packages \
47		-built-in-libraries $(ARDUINO_DIR)/libraries \
48		-libraries ~/Arduino/libraries \
49		-compile \
50		$<
51	mv build/$*/vail-adapter.ino.bin $@
52	
53upload: vail-adapter.ino
54	arduino --upload --board $(FQBN) $<