# Extend command to idf.py # Generate single bin with name ${CMAKE_PROJECT_NAME}_merged.bin if (NOT TARGET gen_single_bin) add_custom_target( gen_single_bin COMMAND ${CMAKE_COMMAND} -E echo "Merge bin files to ${CMAKE_PROJECT_NAME}_merged.bin" COMMAND ${ESPTOOLPY} --chip ${IDF_TARGET} merge_bin -o ${CMAKE_PROJECT_NAME}_merged.bin @flash_args COMMAND ${CMAKE_COMMAND} -E echo "Merge bin done" WORKING_DIRECTORY ${CMAKE_BINARY_DIR} DEPENDS gen_project_binary bootloader VERBATIM USES_TERMINAL ) endif() # Flash bin ${CMAKE_PROJECT_NAME}_merged.bin to target chip if (NOT TARGET flash_single_bin) add_custom_target( flash_single_bin COMMAND ${CMAKE_COMMAND} -E echo "Flash merged bin ${CMAKE_PROJECT_NAME}_merged.bin to address 0x0" COMMAND ${ESPTOOLPY} --chip ${IDF_TARGET} write_flash 0x0 ${CMAKE_PROJECT_NAME}_merged.bin COMMAND ${CMAKE_COMMAND} -E echo "Flash merged bin done" WORKING_DIRECTORY ${CMAKE_BINARY_DIR} DEPENDS gen_single_bin VERBATIM USES_TERMINAL ) endif()