Often, when any low-cost computer peripheral device is sold, it is sold with a CD containing the device's controlling firmware. Why can't it simply be sold with the firmware pre-installed by the manufacturer so that it does not rely on the host system itself to do this task? Does this have to do with price/memory constraints of the device, and if so, does it really impact the cost so much that firmware must be distributed on CDs?
-
5I think you're confusing drivers and firmware. – Dan Wilson Apr 29 '20 at 23:35
-
1To be fair, sometimes firmware can be included on CD's along with help files and such. The idea is that a CD is a "lowest common denominator" (almost everyone has one in their computer, because they like the ability to play media disks like music CDs and DVDs). But most peope (at least in urban areas) now have wideband Internet, so it makes more sense to get drivers and firmware from the vendor's website. – Robert Harvey Apr 29 '20 at 23:47
-
Other reasons: it takes the burden of finding the correct driver/firmware on the vendor's website from the customer. It works offline or behind a firewall. It works even next year when the vendor has vanished from the market and dropped their website. It gives the customer a cheap backup in case the newer software version does not work correctly. There may be legal reasons in some countries not to sell a hardware incomplete, without manual and required software. – Doc Brown Apr 30 '20 at 13:56
-
For _some_ firmware, the firmware installer has to be booted from the CD to a standalone environment [sometimes a lightweight OS (e.g. DOS)] so that the installer can talk to the device _before_ a heavyweight OS has had a chance to talk to the device and make it unable to load new firmware. Some vendors will allow a `.iso` image to be downloaded from their website, so it can be burned onto a CD [some allow the image to go to a USB stick]. If the device has been shipped from a distributor, it will have firmware pre-loaded, but this can be downrev, so an update may be needed. – Craig Estey Apr 30 '20 at 22:43
2 Answers
Hardware is made in Taiwan and software is made in the US. While the hardware bounces around in a shipping container the code monkeys come out with yet another software version. This new version is lovingly installed at the distribution center by dropping a CD in the box. Or by posting it on a web site.
Why the new version? Because software is never finished. Only abandoned. Always room to improve. This is why our probes let us update software even in deep space.

- 102,279
- 24
- 197
- 315
This is a very broad question, so there are multiple possible answers.
First off, I want to challenge your assumption that devices ship without firmware pre-installed. Typically, the code that initializes the device such that it can be detected by the host is part of the firmware, so if there were no firmware pre-installed, then the host wouldn't detect the device and you couldn't update the firmware.
Likewise, the code for updating the firmware is often part of the firmware itself, so again, without firmware pre-installed, you wouldn't be able to update the firmware.
One or both of these is the reason that typically, when there is an error during firmware update, the device will be bricked and needs to be sent in for repair.
Secondly, there is this part of the question:
Why can't it simply be sold with the firmware pre-installed by the manufacturer
And the answer is that often, the manufacturer of the device is not the manufacturer of the firmware. In fact, specifically for cheap and simple peripherals, it is quite common to have the manufacturing outsourced to a third party in a different country where manual labor is cheap, but the distinguishing features of the product are part of the firmware, and are written in-house. Some of these third-party manufacturers are in a country where there is, let's say, a very "flexible" interpretation of intellectual property, so the company whose name is on the packaging may not actually want to give the manufacturer access to the firmware.
Then there is the fact that hardware evolves much slower than firmware. It's easier to throw an updated CD into the package than to update the firmware image used in the manufacturing process. Especially if devices are expected to sit on the shelve for some time.

- 101,921
- 24
- 218
- 318