Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm working with a legacy embedded system that uses a USB thumb drive to bootload new firmware. The system powers up, mounts the drive, loads code, etc. All is happy.

I'm looking to reuse this platform to use for multiple products and I'd like a way to keep the factory line from having to juggle thumbdrives and remember which one is the right load for the right device. The device's bootloader is very skeleton and can't be configured with a type ahead of time (so it could pick the correct file off the thumb drive).

Using one of those magic USB A-to-A adatpers and a cheap Linux laptop (or PC running Vbox), is there some way I can make the laptop look like a thumbdrive to something plugged into it?

share|improve this question
Are your sure that the laptop will make things less messy? It's easier to pick the wrong file on the laptop than to pick a wrong thumb drive (especially if the thumb drives are clearly labeled, color-coded, physically controller). YMMV. – Nick Alexeev Dec 5 '12 at 2:10
@NickAlexeev - I would imagine that the problem with thumbdrives is that managing a lot of thumbdrives is much more of a pain then managing a bunch of files. – Connor Wolf Dec 5 '12 at 7:55
With the laptop, I can write a simple GUI for the factory line that will run the show. There will also probably be a barcode reader that scans the serial # of the device, chooses the appropriate firmware load, and then presents the correct virtual-thumbdrive for the device to load. It's the simplest way I can think to make this process easy for semi-skilled assembly staff. – zydeco100 Dec 5 '12 at 14:46

Many embedded linux boards and possibly some laptops can be configured to do this (as can Android devices)

USB devices that act like external hard drives or flash drives implement the USB Mass storage class

You need a board or device that has a USB On-The-Go compatible USB port . Here's an example of a suitable linux board that should give you some pointers.

You will need to write the software to select and present your disk images to the system.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.