Sh: *: No such file or directory

I’m trying to flash a new firmware to an ATmega328p(-pu), it seemed to work previously, like one week ago, but now it gives me this error, which I cannot interpret:

CONFIGURATION: https://docs.platformio.org/page/boards/atmelavr/ATmega328P.html
PLATFORM: Atmel AVR 2.0.0 > ATmega328P/PA
HARDWARE: ATMEGA328P 16MHz, 2KB RAM, 31.50KB Flash
PACKAGES: toolchain-atmelavr 1.50400.190710 (5.4.0), tool-avrdude 1.60300.190628 (6.3.0)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 0 compatible libraries
Scanning dependencies...
No dependencies
Building in debug mode
MethodWrapper(["checkprogsize"], [".pio/build/atmega328p/firmware.elf"])
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
DATA:    [          ]   2.9% (used 60 bytes from 2048 bytes)
PROGRAM: [=         ]   7.6% (used 2464 bytes from 32256 bytes)
.pio/build/atmega328p/firmware.elf  :
section                     size      addr
.data                          0   8388864
.text                       2464         0
.bss                          60   8388864
.comment                      47         0
.note.gnu.avr.deviceinfo      64         0
.debug_aranges                32         0
.debug_info                 3832         0
.debug_abbrev               2165         0
.debug_line                 1263         0
.debug_frame                2444         0
.debug_str                  2627         0
.debug_loc                  5585         0
.debug_ranges                 96         0
Total                      20679
<lambda>(["upload"], [".pio/build/atmega328p/firmware.hex"])
AVAILABLE: avr911
CURRENT: upload_protocol = avr911
BeforeUpload(["upload"], [".pio/build/atmega328p/firmware.hex"])
Use manually specified: /dev/cu.SLAB_USBtoUART
avrdude -e +<*> -<.git/> -<.svn/> -<example/> -<examples/> -<test/> -<tests/> -<target/> -<controllers/> -<shared/> -std=c++1z -std=gnu++1z -v -p atmega328p -C /Users/john/.platformio/packages/tool-avrdude/avrdude.conf -c avr911 -b 19200 -D -P "/dev/cu.SLAB_USBtoUART" -U flash:w:.pio/build/atmega328p/firmware.hex:i
sh: *: No such file or directory
*** [upload] Error 1

PlatformIO.ini:

[platformio]
default_envs = stm32f407vg

[common]
default_src_filter = 
  +<*> 
  -<.git/> 
  -<.svn/> 
  -<example/> 
  -<examples/> 
  -<test/> 
  -<tests/> 
  -<target/>
  -<controllers/>
  -<shared/>

# C++17 is needed for inline static definitions.
# if no inline static is used, these flags can be omitted
build_flags =
  -std=c++1z
  -std=gnu++1z


[env:stm32f407vg]
platform = ststm32
board = disco_f407vg
;framework = cmsis

src_filter = 
  ${common.default_src_filter} 
  +<controllers/stm32f407vg/>

build_type = debug
build_flags = 
  ${common.build_flags}
  -D STM32F407VG
  -D stm32f407vg
  -D DEBUG
 ;-Wl,-T"scripts/controllers/stm32f407vg/STM32F407VG.ld"

upload_protocol = stlink
upload_port = /dev/cu.usbmodem14103
debug_tool = stlink


[env:lpc1768]
platform = nxplpc
board = lpc1768

src_filter = 
  ${common.default_src_filter} 
  +<controllers/lpc1768/>

build_type = debug
build_flags = 
  ${common.build_flags}
  -Wl,-T"scripts/controllers/lpc1768/LPC1768.ld"
  -D LPC1768
  -D lpc1768
  -D MCB1760 
  -D DEBUG

extra_scripts = scripts/controllers/lpc1768/firmware_patch.py

# J-Link Probe
upload_protocol = jlink-jtag
debug_tool = jlink


# ULINK-ME Probe - the probe that comes with the development board, literally not usable
;upload_protocol = custom
;upload_flags =
;    -f
;    scripts/interface/cmsis-dap.cfg
;    -f
;    scripts/board/mcb1700.cfg
;
;debug_tool = custom
;debug_server =
;    $PLATFORMIO_CORE_DIR/packages/tool-openocd/bin/openocd
;    -f
;    ../scripts/interface/cmsis-dap.cfg
;    -f
;    ../scripts/board/mcb1700.cfg


# Blackmagic Probe - open source is sometimes not the best solution, as it took ages to find a working BMP firmware that works with the board.
;upload_protocol = blackmagic
;upload_port = /dev/cu.usbmodem79AC68971
;
;debug_tool = custom
;debug_port = /dev/cu.usbmodem79AC68971
;debug_init_cmds =
;  target extended-remote $DEBUG_PORT
;  monitor swdp_scan
;  attach 1
;  set mem inaccessible-by-default off
;  $INIT_BREAK
;  $LOAD_CMDS


[env:atmega328p]
platform = atmelavr
board = ATmega328P

src_filter = 
  ${common.default_src_filter} 
  +<controllers/atmega328p/>

build_type = debug
# build and debugging flags
build_flags = 
  ${common.build_flags}
  -D ATMEGA328P
  -D atmega328p
  -D DEBUG

# upload port.
upload_port = /dev/cu.SLAB_USBtoUART
upload_protocol = avr911
upload_speed = 19200
upload_flags = -e

I don’t know if the recent updates might have caused this breaking change?

Really weird, after a day off, the problem has fixed itself.
Might be a computer restart, Visual Studio Code Restart or anything else, I don’t know.

1 Like