cancel
Showing results for 
Search instead for 
Did you mean: 

I was wondering about the term "Download" in STM32CubeProgrammer. Download normally means transferring something from the device to the computer. Upload means transferring from computer to device. Why is it named the opposite in this tool?

DMcGo.1
Associate II
 
10 REPLIES 10
Peter BENSCH
ST Employee

Welcome, @DMcGo.1​, to the community!

Well, it is not named the opposite - that's always a question of point of view.

In your example, it is the download from a host to the computer "below" in the imagination.

In the case of the STM32Cube programmer, it is the host and the STM32 to be programmed is your computer, so to speak.

Does it answer your question?

Regards

/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
DMcGo.1
Associate II

To me the terminology is very backwards. The active operation is performed by the host, not the device. The host is uploading code to the device, nothing is being downloaded. Compare with a computer uploading a file to a server, it is the computer (the active role) that is uploading, not the server that is downloading.

But fair enough, I suppose you could have different views on this even though it seems clear cut to me!

Nikita91
Lead II

Interesting terminology question. ST is a company of French origin, and in French the two terms upload and download have the same translation: "télécharger".

But in general it is true that in English, upload indicates transfer from here to another place, and download to transfer from elsewhere to here.

So in the ST terminology, it may be necessary to consider the point of view of the device: CubeProgrammer allows the device to download an application!

TDK
Guru

To me, it's clear from context clues which way the transfer is going. TI uses read/write instead of upload/download, which seems less prone to confusion. ST also uses "Read" in some instances instead of download.

This question pops up here occasionally.

https://community.st.com/s/question/0D53W00001KTcr9SAD/what-do-download-and-upload-mean

If you feel a post has answered your question, please click "Accept as Solution".

@Andrew Neil​ has mentioned this in the past

https://community.st.com/s/question/0D53W00001KTcr9SAD/what-do-download-and-upload-mean

What annoys me more is the awkwardness of the Read vs Save As interface, clunky UI and that the whole thing frequently locks up when slightly stressed, indicating corner conditions haven't had any QA attention.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Andrew Neil
Evangelist III

@DMcGo.1​  "Download normally means transferring something from the device to the computer"

You're coming from an Arduino background, then?

That is, indeed, the way Arduino sees it - but the more traditional view is that a download is from Host to Target.

As the others have said, I've raised this ambiguity before.

PS

Please don't put the entire question in the title.

MM..1
Chief II

Or simply understand this two as question Who is bigger boss?

PC and develoiper is bigger boss as MCU , that is under level then download to it is put code in.

And upload back is get from ...

Indeed, that's the traditional view - but it's not the view that Arduino takes.

The term is ambiguous and, therefore, best avoided.

Download has traditionally always meant transferring from a remote location to a local computer, and upload has traditionally always meant transferring from a local computer to a remote location. This terminology was set early in the internet days.
Analogous in telecommunications, downlink is the direction of transfer from remote to local and uplink is from local to remote.