update build script

pull/60/head
Miroslav Pivovarsky 2024-07-12 22:00:28 +02:00
parent 220573519a
commit b559cbaa42
1 changed files with 67 additions and 1 deletions

View File

@ -80,6 +80,7 @@
# 8. Install necessary libraries: # 8. Install necessary libraries:
# ./arduino-cli lib install ArduinoJson # ./arduino-cli lib install ArduinoJson
# ./arduino-cli lib install ArduinoUniqueID # ./arduino-cli lib install ArduinoUniqueID
# ./arduino-cli lib install DHTNEW
# ./arduino-cli lib install --zip-path ../libraries/zip/AsyncTCP-3.1.4.zip # ./arduino-cli lib install --zip-path ../libraries/zip/AsyncTCP-3.1.4.zip
# ./arduino-cli lib install --zip-path ../libraries/zip/ESPAsyncWebServer-2.10.8.zip # ./arduino-cli lib install --zip-path ../libraries/zip/ESPAsyncWebServer-2.10.8.zip
# Check installed libraries again: # Check installed libraries again:
@ -89,7 +90,18 @@
# ./arduino-cli core install esp32:esp32 # ./arduino-cli core install esp32:esp32
# --------------------------------------------- # ---------------------------------------------
set -e
if [ -d "build" ]; then
rm -rf build
fi
cd ESP32_PrusaConnectCam cd ESP32_PrusaConnectCam
if [ ! -f arduino-cli ]; then
echo "arduino-cli not found. Please download arduino-cli and place it in the same folder as this script."
exit 1
fi
mkdir -p ../build/output mkdir -p ../build/output
build_start=`date` build_start=`date`
@ -100,6 +112,10 @@ echo "Building Ai Thinker board"
mkdir -p ../build/esp32-cam mkdir -p ../build/esp32-cam
sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define AI_THINKER_ESP32_CAM false/#define AI_THINKER_ESP32_CAM true/' mcu_cfg.h sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define AI_THINKER_ESP32_CAM false/#define AI_THINKER_ESP32_CAM true/' mcu_cfg.h
./arduino-cli compile -v -b esp32:esp32:esp32cam:CPUFreq=240,FlashFreq=80,FlashMode=dio,PartitionScheme=min_spiffs,DebugLevel=none,EraseFlash=none --output-dir ../build/esp32-cam ./arduino-cli compile -v -b esp32:esp32:esp32cam:CPUFreq=240,FlashFreq=80,FlashMode=dio,PartitionScheme=min_spiffs,DebugLevel=none,EraseFlash=none --output-dir ../build/esp32-cam
if [ $? -ne 0 ]; then
echo "Build failed, exiting."
exit 1
fi
rm -f ../build/esp32-cam/ESP32_PrusaConnectCam.ino.elf rm -f ../build/esp32-cam/ESP32_PrusaConnectCam.ino.elf
rm -f ../build/esp32-cam/ESP32_PrusaConnectCam.ino.map rm -f ../build/esp32-cam/ESP32_PrusaConnectCam.ino.map
@ -116,6 +132,10 @@ echo "Building ESP32 Wrover Dev board"
mkdir ../build/esp32-wrover-dev mkdir ../build/esp32-wrover-dev
sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define ESP32_WROVER_DEV false/#define ESP32_WROVER_DEV true/' mcu_cfg.h sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define ESP32_WROVER_DEV false/#define ESP32_WROVER_DEV true/' mcu_cfg.h
./arduino-cli compile -v -b esp32:esp32:esp32wrover:FlashFreq=80,FlashMode=dio,PartitionScheme=min_spiffs,DebugLevel=none,EraseFlash=none --output-dir ../build/esp32-wrover-dev ./arduino-cli compile -v -b esp32:esp32:esp32wrover:FlashFreq=80,FlashMode=dio,PartitionScheme=min_spiffs,DebugLevel=none,EraseFlash=none --output-dir ../build/esp32-wrover-dev
if [ $? -ne 0 ]; then
echo "Build failed, exiting."
exit 1
fi
rm -f ../build/esp32-wrover-dev/ESP32_PrusaConnectCam.ino.elf rm -f ../build/esp32-wrover-dev/ESP32_PrusaConnectCam.ino.elf
rm -f ../build/esp32-wrover-dev/ESP32_PrusaConnectCam.ino.map rm -f ../build/esp32-wrover-dev/ESP32_PrusaConnectCam.ino.map
@ -131,8 +151,11 @@ echo "----------------------------------------------"
echo "Building ESP32-S3-EYE 2.2 board" echo "Building ESP32-S3-EYE 2.2 board"
mkdir ../build/esp32-s3-eye-22 mkdir ../build/esp32-s3-eye-22
sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define CAMERA_MODEL_ESP32_S3_EYE_2_2 false/#define CAMERA_MODEL_ESP32_S3_EYE_2_2 true/' mcu_cfg.h sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define CAMERA_MODEL_ESP32_S3_EYE_2_2 false/#define CAMERA_MODEL_ESP32_S3_EYE_2_2 true/' mcu_cfg.h
./arduino-cli compile -v -b esp32:esp32:esp32s3:USBMode=hwcdc,CDCOnBoot=cdc,MSCOnBoot=default,DFUOnBoot=default,UploadMode=cdc,CPUFreq=240,FlashMode=dio,FlashSize=8M,PartitionScheme=min_spiffs,DebugLevel=none,PSRAM=opi,LoopCore=0,EventsCore=0,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default --output-dir ../build/esp32-s3-eye-22 ./arduino-cli compile -v -b esp32:esp32:esp32s3:USBMode=hwcdc,CDCOnBoot=cdc,MSCOnBoot=default,DFUOnBoot=default,UploadMode=cdc,CPUFreq=240,FlashMode=dio,FlashSize=8M,PartitionScheme=min_spiffs,DebugLevel=none,PSRAM=opi,LoopCore=0,EventsCore=0,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default --output-dir ../build/esp32-s3-eye-22
if [ $? -ne 0 ]; then
echo "Build failed, exiting."
exit 1
fi
rm -f ../build/esp32-s3-eye-22/ESP32_PrusaConnectCam.ino.elf rm -f ../build/esp32-s3-eye-22/ESP32_PrusaConnectCam.ino.elf
rm -f ../build/esp32-s3-eye-22/ESP32_PrusaConnectCam.ino.map rm -f ../build/esp32-s3-eye-22/ESP32_PrusaConnectCam.ino.map
@ -142,11 +165,54 @@ cp ../build/esp32-s3-eye-22/ESP32_PrusaConnectCam.ino.bin ../build/output/ESP32S
cd ../build/esp32-s3-eye-22 && zip -r ../esp32-s3-eye-22.zip . && cd - cd ../build/esp32-s3-eye-22 && zip -r ../esp32-s3-eye-22.zip . && cd -
mv ../build/esp32-s3-eye-22.zip ../build/output/ mv ../build/esp32-s3-eye-22.zip ../build/output/
# ----------------- XIAO ESP32-S3 Sense -----------------
# build XIAO ESP32-S3 Sense
echo "----------------------------------------------"
echo "Building XIAO ESP32-S3 Sense"
mkdir ../build/xiao-esp32-s3
sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define CAMERA_MODEL_XIAO_ESP32_S3_CAM false/#define CAMERA_MODEL_XIAO_ESP32_S3_CAM true/' mcu_cfg.h
./arduino-cli compile -v -b esp32:esp32:XIAO_ESP32S3:USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=160,FlashMode=qio,FlashSize=8M,PartitionScheme=default_8MB,DebugLevel=none,PSRAM=opi,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default --output-dir ../build/xiao-esp32-s3
if [ $? -ne 0 ]; then
echo "Build failed, exiting."
exit 1
fi
rm -f ../build/xiao-esp32-s3/ESP32_PrusaConnectCam.ino.elf
rm -f ../build/xiao-esp32-s3/ESP32_PrusaConnectCam.ino.map
rm -f ../build/xiao-esp32-s3/ESP32_PrusaConnectCam.ino.merged.bin
cp ../build/xiao-esp32-s3/ESP32_PrusaConnectCam.ino.bin ../build/output/XIAO_ESP32S3.bin
cd ../build/xiao-esp32-s3 && zip -r ../xiao-esp32-s3.zip . && cd -
mv ../build/xiao-esp32-s3.zip ../build/output/
# ----------------- ESP32-S3-CAM -----------------
# build ESP32-S3-CAM
echo "----------------------------------------------"
echo "Building ESP32-S3-CAM"
mkdir ../build/esp32-s3-cam
sed -i 's/#define \(AI_THINKER_ESP32_CAM\|ESP32_WROVER_DEV\|CAMERA_MODEL_ESP32_S3_DEV_CAM\|CAMERA_MODEL_ESP32_S3_EYE_2_2\|CAMERA_MODEL_XIAO_ESP32_S3_CAM\|CAMERA_MODEL_ESP32_S3_CAM\) .*/#define \1 false/' mcu_cfg.h && sed -i 's/#define CAMERA_MODEL_ESP32_S3_CAM false/#define CAMERA_MODEL_ESP32_S3_CAM true/' mcu_cfg.h
./arduino-cli compile -v -b esp32:esp32:esp32s3:USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=dio,FlashSize=16M,PartitionScheme=min_spiffs,DebugLevel=none,PSRAM=opi,LoopCore=0,EventsCore=0,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default --output-dir ../build/esp32-s3-cam
if [ $? -ne 0 ]; then
echo "Build failed, exiting."
exit 1
fi
rm -f ../build/esp32-s3-cam/ESP32_PrusaConnectCam.ino.elf
rm -f ../build/esp32-s3-cam/ESP32_PrusaConnectCam.ino.map
rm -f ../build/esp32-s3-cam/ESP32_PrusaConnectCam.ino.merged.bin
cp ../build/esp32-s3-cam/ESP32_PrusaConnectCam.ino.bin ../build/output/esp32-s3-cam.bin
cd ../build/esp32-s3-cam && zip -r ../esp32-s3-cam.zip . && cd -
mv ../build/esp32-s3-cam.zip ../build/output/
# -------------------------------------------------------- # --------------------------------------------------------
# Print build completion message
echo "----------------------------------------------" echo "----------------------------------------------"
echo "Build completed. Output files are in the output folder." echo "Build completed. Output files are in the output folder."
echo "Start build: $build_start" echo "Start build: $build_start"
echo "End build: `date`" echo "End build: `date`"
echo ""
ls -lah ../build/output/
exit 0 exit 0