Makefile 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # Makefile using arduino-cli
  2. ARDUINO_HOME=$(HOME)/.arduino15
  3. ESP32_VER=2.0.3
  4. ESP32_TOOLS=$(ARDUINO_HOME)/packages/esp32/hardware/esp32/$(ESP32_VER)/tools
  5. ESPTOOL=$(ESP32_TOOLS)/esptool.py
  6. CHIP=esp32s3
  7. ESP32_FQBN=esp32:esp32:$(CHIP)
  8. BUILD_DIR=esp32.esp32.$(CHIP)
  9. SERDEV := $(wildcard /dev/serial/by-id/usb-Espressif_*)
  10. ARDUINO_CLI=../bin/arduino-cli
  11. all: build/$(BUILD_DIR)/ArduRemoteID.bin
  12. build/$(BUILD_DIR)/ArduRemoteID.bin: build/$(BUILD_DIR)/RemoteIDModule.ino.bin
  13. @echo "Merging $@"
  14. @python3 $(ESPTOOL) --chip $(CHIP) merge_bin -o $@ --flash_size 4MB 0xe000 $(ESP32_TOOLS)/partitions/boot_app0.bin 0x0 build/$(BUILD_DIR)/RemoteIDModule.ino.bootloader.bin 0x10000 build/$(BUILD_DIR)/RemoteIDModule.ino.bin 0x8000 build/$(BUILD_DIR)/RemoteIDModule.ino.partitions.bin
  15. setup:
  16. @echo "Installing ESP32 support"
  17. $(ARDUINO_CLI) core update-index --config-file arduino-cli.yaml
  18. $(ARDUINO_CLI) core install esp32:esp32@$(ESP32_VER)
  19. build/$(BUILD_DIR)/RemoteIDModule.ino.bin: *.cpp *.ino *.h
  20. @echo "Building $@"
  21. @$(ARDUINO_CLI) compile --export-binaries --fqbn $(ESP32_FQBN) .
  22. boards:
  23. @echo "Listing boards"
  24. @$(ARDUINO_CLI) board list
  25. checkdev:
  26. @[ "${SERDEV}" ] && echo "Using device $(SERDEV)" || ( echo "Failed to find serial device"; exit 1 )
  27. upload: checkdev build/$(BUILD_DIR)/ArduRemoteID.bin
  28. @echo "Flashing"
  29. @$(ARDUINO_CLI) upload -p $(SERDEV) --fqbn $(ESP32_FQBN) .
  30. clean:
  31. rm -rf ..esp32* *.bin build