Unsolved [SOLVED] How to detect USB devices
-
My aim is to save a txt file from my Qt app to an external device (SD card, USB pendrive...). The app is created for an embedded system.
My problem is: how detect which USB device is connected when I inserted a USB pen, in such a way that I can save my file in it?
Which is the best method using Qt? -
Usually, mounting storage devices is handled by the OS.
What is the target OS for which you are developing? -
I'm developing on Ubuntu 14.04 for a Single Board Computer Variscite (its OS is Linux-embedded)
-
If your goal is only to store data, use this command QFileDialog::getSaveFileName(); If your goal is only to store data, use this command. Do not forget the file header #include <QFileDialog>
-
@alsa
Does your eLinux mount newly attached storage devices automatically to a mount point or does it only create a device file?I had the same task on eLinux as well. My system did create the device file only (busybox with mdev). I used a QFileSystemWatcher to detect changes in /dev, ie. attached sdan and acted on that with mounting/unmounting the device.
-
It only creates a device file
-
@alsa
Then look into QFileSystemWatcher. -
To start:
// prepare FS watcher to detect added USB memory FSwatcher = new QFileSystemWatcher(this); FSwatcher->addPath("/dev"); connect(FSwatcher, SIGNAL(directoryChanged(QString)), this, SLOT(showModifiedDirectory(QString)));
HTH
McL -
This post is deleted! -
@McLion Would you currently prefer this approach over Qt D-Bus for it's simplicity?