Arm Mbed and Pelion Device Management support forum

Suggestions to reduce project size

I’ve been using the Mbed online compiler in an educational setting for a number of years. This year I am planning to start using Mbed Studio.

I’ve noticed that when I create (or import) a new program, it downloads several hundred MB of source code which can take a while.

I’m envisaging the scenario when there are ~80 students in a lab. When they all create a project, it will probably put a huge strain on the network.

Additionally, each student only gets 1 GB of network storage, which is probably only enough to store 2 or 3 Mbed projects (or less considering they will already have files stored).

Are there any workarounds/alternative workflows that anyone can suggest? e.g. a compiled Mbed source that can be linked with the student source code?

Any suggestions appreciated!

You can download mbed-os only once and have each project point to the location.

You’ll find more info here: https://os.mbed.com/docs/mbed-os/v5.14/tools/working-with-mbed-cli.html

In the " Managing multiple Mbed projects" section.

We don’t currently support that feature in Mbed Studio, but do plan to.

1 Like

Thanks for the replies.

I think for the moment I will provide the students with a single project that has all the libraries etc. and then get them to create a different main.cpp for each laboratory activity. They can then archive the different main.cpp files (or commit to version control) when they move onto a new activity.

Not ideal, but should be sufficient until Mbed Studio is fully featured.

Same issue for us. 80 students in a lab, not only uses a lot of disk space but also hits the network quite hard.
For us, I’d be happy to have all project use the same version of the mbed-os library.

Have you developed any workarounds?

I’m going to do some more testing this week, but as I said above, at the moment I envisage a single project with single main.cpp. At the end of each activity, they can rename the main.cpp e.g. main.cpp.lab1.task3 and then create a new main.cpp

I’m hoping the re-named extension will prevent the makefile from trying to compile it, but will only know for sure after testing.

Hello all,

I maybe have a spare solution for you , until MbedStudio team not finish it in the future.
Currently I have 4 projects with one separete Mbed OS linked by simple command MKlink.

mklink /d “C:\Users\USERNAME\Mbed Programs\mbed-os-empty\mbed-os” "C:\Users\USERNAME\MbedLib\mbed-os"

If you are interested, check the sources.

It looks functional but I do not know what will happened when new version of MbedOS will come.

BR, Jan

1 Like

Thanks, looks like it could be useful, will check it out!

sadly not