Default location for workspace

Is there a reason for locating the workspace directly under ‘username’ rather than the more conventional “Documents” folder?

I only ask because most backup programs won’t back up that location unless it is explicitly added to their list. Is there any harm in making my workspace under “Documents”? How do I tell Studio to use that new location (I know about opening existing workspaces in different locations; I’m talking about saving new workspaces to the new location).


That is a really good question. To be honest we were thinking about both folders as a default workspace location. In the end the main reason why we decided to go with ~/Mbed Programs as a default is the size of Mbed programs. As you mentioned Documents folder is often by default synced with OneDrive or other programs. We were trying to avoid sync of 1GB of files after program creation. We are working on solutions that will reduce the size of programs (for example on sharing Mbed OS across multiple programs). It is possible that in the future we will change it to Documents.

Until then you can still point Mbed Studio at a different workspace. What you can do is:

  1. Create a new empty folder in Documents folder or any other location
  2. In Mbed Studio go into File->Open Workspace... and select a newly created workspace

After that Mbed Studio will be using this folder as your workspace. It will also automatically open this workspace on Mbed Studio restart. There is also an option to easily navigate between workspaces previously used in Mbed Studio: File->Open Recent Workspace....
Unfortunately at the moment Mbed Studio does not allow to copy programs across workspaces. You can however do it manually by copying them outside of Mbed Studio to the new location. Mbed Studio should pick them up automatically.

Arek - Mbed Studio team

That’s a great reply - thanks, Arek!

In my workspace (under Documents) I’ve created the example blinky program, and I’ve imported the Flanger10 program from the online compiler environment, following the instructions in the documentation.

When I right click on Flanger10 it is not offering “Set Active Program”. Any thoughts on why ?


Can you share a screenshot with files that are inside that program? I guess that it may not be an Mbed OS 5 program. We support only Mbed OS 5.12.0 or higher. For a program to be recognised as Mbed program it needs to have a mbed-os.lib file inside. For example mbed.bld implies that a program is designed to work with Mbed OS 2.
This restriction is due to the compiler used in Mbed Studio. Arm Compiler 6 is officially supporting Mbed OS 5.12.0 and higher.
We are implementing a better UX for this case now. We will provide clearer message when unsupported version of Mbed OS is detected.

Arek - Mbed Studio team

Ah, thank you again, Arek.

You are right - there is an ‘mbed.bld’ file in there, so I must have built it to OS 2.


Is there an inbuilt way to convert OS 2 programs to OS 5? If not, it’s no problem - I can easily create a new, empty program and move my source code over.

Wow, yes, I see what you mean! 1GB of files for each program - 99% of which are going to be identical in each instance - is a serious problem, especially if you want to use automatic backups or syncs. I think this needs a fundamental rethink, to be honest, and fairly urgently.

Anyway, thank you for explaining it to me. And you are right - for now I think I’ll have to move my workspace to a non-synced area. :frowning: