← index #9204Issue #17052
Related · medium · value 0.658
QUERY · ISSUE

tools/mpremote Copy folder content creates folder on board

openby lhoff94opened 2022-09-03updated 2025-09-05
bugdocstools

Hi,

i noticed a behaviour with mpremote that doesn't seem right. I try to copy the content of a complete folder to the board. But instead of putting the folder content in the root of the device it creates a folder on the device and copies everything there.

Example:

Assume if have to following folder setup:

~/test$ tree mpy-project/
mpy-project/
├── boot.py
├── lib
│   └── urequests.py
└── main.py

I want to put the content of mpy-project on my empty board.
My first attempt was using this command:
mpremote connect /dev/ttyUSB1 cp -r mpy-project/* :
It transferred all files to the board but it was all in a folder called "mpy-project". It looked like that:

~/test$ mpytool -vp /dev/ttyUSB0 tree
./
└─ mpy-project/
├─ lib/
│  └─ urequests.py
├─ boot.py
└─ main.py

That seems counterintuitive for me since the *should be expanded and then the files should be copied.
There is also no use case where that behavior would make sense. If I wanted the complete folder copied I would leave /*out.

Or do i miss something?

Information about the version of MicroPython you're running

  • Micropython 1.19.1
  • mpremote 0.3.0
  • ESP32
CANDIDATE · ISSUE

mpremote fs cp fails and I don't understand why.

closedby ZacharyACoonopened 2025-03-31updated 2025-09-05
bugtoolsneeds-info

Port, board and/or hardware

mpremote 1.24.1

MicroPython version

mpremote 1.24.1

Reproduction

copy a directory of files to root :/

Expected behaviour

No response

Observed behaviour

(emdr-v1-firmware) PS C:\Users\Zac\PycharmProjects\emdr-v1-firmware> mpremote fs cp -r .\root. :/
cp .\root. :/
Up to date: ././app.py
Up to date: ././config.json
Up to date: ././emdr.py
Up to date: ././hardware_config.py
... copying 59% [###########---------]mpremote: Error with transport:
Traceback (most recent call last):
File "<stdin>", line 1
SyntaxError: invalid syntax

Additional Information

No, I've provided everything above.

Code of Conduct

Yes, I agree

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied