OpenBCI_GUI icon indicating copy to clipboard operation
OpenBCI_GUI copied to clipboard

Folder convention differs between "Custom" and "Default" file save location setting

Open bobthefairycat opened this issue 2 years ago • 1 comments

Problem

Behaviour for saving recording files differs (unexpectedly) between "Default" and "Custom" file locations. In "Default" file location settings, the GUI backend generates subfolders based on the unique session name, allowing the same overall top-level folder to be used across multiple sessions. When using "Custom" settings, the user is required to manually create a new subfolder for each session themselves.

The issue source is likely at OpenBCI_GUI/DataLogger.pde

public void setBfWriterFolder(String _folderName, String _folderPath) {
    fileWriterBF.setBrainFlowStreamerFolderName(_folderName, _folderPath);
}
public void setBfWriterDefaultFolder() {
    fileWriterBF.setBrainFlowStreamerFolderName(sessionName, settings.getSessionPath());
}

Where under setBfWriterDefaultFolder, the sessionName variable is used to generate new subfolders, but only the user-provided _folderName is used in setBfWriterFolder.

Additionally, the GUI dialog box when selecting a Custom folder is confusing as the popup asks for a "file name" rather than a folder, and the entered "file name" is actually generated as a folder.

For now, I will just change the hardcoded default directory (so that we can deploy on a set of educational machines for student use).

Expected

Ideally, file organization paradigms would be identical when saving through "Default" folder locations and "Custom" selected folder locations. Session name information should be used to automatically generate subfolders in the "Custom" user-selected folder.

A few nice-to-haves:

  • Being able to change the Default folder location to persist across sessions (I tried locally, but my Java knowledge is simply nonexistent so I gave up) via some config file or setting in the GUI.
  • Alternatively, option to persist Custom folder location across sessions (after closing and reopening the software).

bobthefairycat avatar Jun 24 '23 18:06 bobthefairycat

May be related to https://github.com/OpenBCI/OpenBCI_GUI/issues/1104

retiutut avatar Aug 30 '23 16:08 retiutut