orion-rf2922e83
add build script
+63 −0
1 file changed
- A build.sh +63 −0
| @@ -0,0 +1,63 @@ | |||
| 1 | + | #!/usr/bin/env bash | |
| 2 | + | ||
| 3 | + | set -e | |
| 4 | + | ||
| 5 | + | # ========= CONFIG ========= | |
| 6 | + | PORT="/dev/ttyACM0" | |
| 7 | + | ||
| 8 | + | FQBN="esp32:esp32:esp32s3:\ | |
| 9 | + | UploadSpeed=921600,\ | |
| 10 | + | USBMode=hwcdc,\ | |
| 11 | + | CDCOnBoot=default,\ | |
| 12 | + | MSCOnBoot=default,\ | |
| 13 | + | DFUOnBoot=default,\ | |
| 14 | + | UploadMode=default,\ | |
| 15 | + | CPUFreq=240,\ | |
| 16 | + | FlashMode=qio,\ | |
| 17 | + | FlashSize=16M,\ | |
| 18 | + | PartitionScheme=fatflash,\ | |
| 19 | + | DebugLevel=none,\ | |
| 20 | + | PSRAM=opi,\ | |
| 21 | + | LoopCore=1,\ | |
| 22 | + | EventsCore=1,\ | |
| 23 | + | EraseFlash=none,\ | |
| 24 | + | JTAGAdapter=default,\ | |
| 25 | + | ZigbeeMode=default" | |
| 26 | + | ||
| 27 | + | # ========= FLAGS ========= | |
| 28 | + | UPLOAD=false | |
| 29 | + | SKETCH_PATH="./firmware" | |
| 30 | + | ||
| 31 | + | while [[ $# -gt 0 ]]; do | |
| 32 | + | case "$1" in | |
| 33 | + | -u|--upload) | |
| 34 | + | UPLOAD=true | |
| 35 | + | shift | |
| 36 | + | ;; | |
| 37 | + | *) | |
| 38 | + | SKETCH_PATH="$1" | |
| 39 | + | shift | |
| 40 | + | ;; | |
| 41 | + | esac | |
| 42 | + | done | |
| 43 | + | ||
| 44 | + | # ========= BUILD ========= | |
| 45 | + | echo "Compiling sketch..." | |
| 46 | + | ||
| 47 | + | arduino-cli compile \ | |
| 48 | + | --fqbn "$FQBN" \ | |
| 49 | + | "$SKETCH_PATH" | |
| 50 | + | ||
| 51 | + | echo "Compile successful." | |
| 52 | + | ||
| 53 | + | # ========= UPLOAD ========= | |
| 54 | + | if [ "$UPLOAD" = true ]; then | |
| 55 | + | echo "Uploading to $PORT..." | |
| 56 | + | ||
| 57 | + | arduino-cli upload \ | |
| 58 | + | -p "$PORT" \ | |
| 59 | + | --fqbn "$FQBN" \ | |
| 60 | + | "$SKETCH_PATH" | |
| 61 | + | ||
| 62 | + | echo "Upload complete." | |
| 63 | + | fi | |