Skip to main content
Andrew Neil
Super User
January 26, 2022
Question

What do "Download" and "Upload" mean?

  • January 26, 2022
  • 7 replies
  • 4424 views

In the Good Old Days, "Download" always meant sending stuff to the Target (ie, programming), and "Upload" meant getting stuff from the Target (reading).

But the ones at Arduino have messed that up, saying "Upload" for programming the Target.

eg, https://docs.arduino.cc/software/ide-v2/tutorials/getting-started/ide-v2-uploading-a-sketch

:confounded_face: :\

Please clarify what STM32CubeProgrammer means when it says, "Download" and "Upload".

The terms should probably be avoided now.

:\

This topic has been closed for replies.

7 replies

Dana Myers
Senior
January 26, 2022

Based on my experience, "Download" means programming the STM32, and "Upload" means reading it.

Tesla DeLorean
Guru
January 26, 2022

Yes, but as Andrew points out Arduino uses it differently, and Upload/Download are frequently used interchangeably. Perhaps also because Upgrade and Update are regularly used as terms too.

If I understand Andrew's request, it is that "Download/Write To Device/Target" and "Upload/Read from Device/Target" be stated more explicitly and in a non-ambiguous manner.

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
Andrew Neil
Super User
January 26, 2022

@Community member​ "If I understand Andrew's request"

Yes, you got it exactly! :ok_hand: :thumbs_up:

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
waclawek.jan
Super User
January 26, 2022

Burn!

That's because I have problem with "program" (as a verb).

OK, it's radical, I get it. Write and Read (and Verify) are unambiguous and IMO already generally accepted.

JW

PS. I also have a problem with the generally childish (a.k.a. "modern") design of CubeProgrammer's UI. ST, please get some adults to explain the programmers the merits of hierarchical menus and conventional placement of controls.

ssipa.1
Visitor II
January 27, 2022

The download means to download from your PC to the Arduino board

and upload is from the board to the PC

Andrew Neil
Super User
January 27, 2022

@ssipa.1​ "download means to download from your PC to the Arduino"

not according to Arduino documentation, it doesn't!

That's my point: the term is ambiguous and, therefore, either needs to be clarified or avoided.

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
DMcGo.1
Associate II
March 22, 2022

I think Arduino got it right. When you download something you are transferring something from there to here. When you are uploading something you are transferring something from here to there. Try using file transfer software for FTP/SFTP for example. Upload means transferring a local file to a remote server. Download means transferring a remote file to the local computer. So when you upload code from your IDE you are transferring code from here (the computer) to there (the device being programmed).

Andrew Neil
Super User
March 22, 2022
A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
WMart.2
Visitor II
March 23, 2022

While exploring the Internet, you've probably encountered the terms downloading and uploading. Downloading means receiving data or a file from the Internet on your computer. Uploading means sending data or a file from your computer to somewhere on the Internet.

Andrew Neil
Super User
March 23, 2022

But, again, that is "down" from the "Bigger System" (the Internet) to the "smaller" (your computer).

So, taking that analogy, it should be down from your PC to a target microcontroller.

Which just brings us back to the point that it's ambiguous, so is best be avoided - especially as there are clear, easy, and unambiguous alternatives available.

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
waclawek.jan
Super User
March 23, 2022

This - and the messy controls, and "modern look and feel" - are probably generations problem.

For young people everything is new and they have to adopt to changes often, they find it natural and good to reinvent the wheel.

For most people it takes time and painful experience to grow to appreciate clean, unambiguous design sticking to traditional layouts and paradigms.

JW

PS. In case my previous post was not clear enough: Read, Write, Verify.