Given that the desktop studio is ~ 850 Mbytes and that in order to use it one must be connected to the internet and logged into ones ARM a/c what is the point of it??
Seems to me to be a total waste of ~850 Mb of disk space.
If I am using a local destop version I do nt expect to need to be connected to the internet!
armcc compiler free license for Mbed Enabled platforms, this means you get the best compiler that produces the smallest binaries for Arm Cortex M chips available.
Direct integrations with the Pelion Platform and full suite of cloud services. Makes everything easier to use
Priority feature integration for the future features of the ecosystem
Given the nature of IoT development a connection to the internet is assumed.
Please note that we still support Mbed CLI for command line use, as well as the Online Compiler (also uses armcc), so feel free to use whichever toolchain / setup you prefer!
PS: I like Mbed Studio for running workshops and having a great out of box experience that makes it easier to onboard new users / users that prefer GUI interfaces, though personally in my time I use Mbed CLI as my preferred interface.
Use of offline desktop version would be helpful for schools and demonstrations when internet access is not guaranteed to be available.
In the UK GDPR prevents schools asking pupils to sign up to external accounts. Group accounts proxy Radius authenticated via the school system may be possible.
Mbed Studio requires internet connection only for the first login. After that it works offline and most functionalities will work without internet connection. For example:
compilation (using ARM Compiler 6)
deploy a program on the board
debug
C/C++ intellisense
serial monitor
As Austin mentioned keep in mind that you will require internet connection for some functionalities, like:
Itās not about the space used on your PC, thatās just a flee bite nowadays, and if it works offline, its all about the experience and where you want to go.
Depending on where you are coming from, beginner, intermediate or pro(Commercial) Mbed offers different options.
Beginner, the on-line compiler is sooooo easy to use and is pretty quick to compile, I use it all the time if I need a ārapidā solution and sooner get a beer rather than spend hours tweaking an off line compiler.
Intermediate, thatās where the problem starts, you want to do more but the on-line compiler can not give you control on what you need to do, for instance, clock set up options, much like we could do with Mbed-dev. Mbed Studio gives you more flexibility to do some of these, but not enough and no small 32K or less flash support.
Pro, well lets be honest if you really and I mean REALLY do know what you are doing then the only option is to bite the bullet and and get a Keil licence. There are simply too many targetās supported on Mbed OS5 to be a reliable option for professional use, but still great to start out with.
(CLI, who uses that?? and why? command line program or its correct name DOS died in the early eighties. Nothing to do with particular post subject, but I do wonder why.)
Mbed Studio does give you a good off-line solution where you can tweak things but you must understand there is a commercial limit to consider. ARM will want to sell you a Keil licence and rightly so, would you work for nothing?
However I believe ARM should have a more balanced and affordable pricing structure to suit a wider range of customers.
Disk space is important when one has to set up 30 PCs in each of 4 teaching rooms and potentially a few hundred students.
School networks are notorious for going slow / down in the middle of a lesson so the ability to continue with most of the activity offline is important.
Also when doing demonstrations at other locations internet access is often not available so an offline version is useful.
I understand from another reply that mbed-studio can be run for the most part with limitations āofflineā after first time online startup. Online a/cs raise GDPR and pupil protection issues when they
are not via the school authentication services eg as used by MS Corporate school Onedrive.
I am mainly looking for my pupils to program BBC Microbits in C/C++ to extend the microbit capabilities.
Thatās a little different, 30 x 4 PCās is quite a task to install and maintain an off line solution for kids, I would be a little cautious here you may end up with a super sized headache.
Online compilations are generally less than 100k up and the return .bin file much the same, plus handshake and only occasionally, you would need a lot of PCās to slow that internet down.
Check with your IT department, it should be possible to manage traffic across different departments within the school. Better still get a separate fiber in just to your IT department and go for business fiber its faster and more reliable.
If each student has been issued with their own MicroBit which was the original intention then they āshouldā each have their own Mbed log in so in theory all the school has to do is provide a PC with internet. More importantly they can log in with ease and work at home something that will be difficult to do with an offline solution exporting and importing code.
Donāt forget the ARM compilers are big and do all the work very fast, you will need power PCās to keep up particularly on initial and full builds. Probably a far greater cost than an extra fiber?
What I am about to describe will be a massive pain to set up but would be a solution to your problem long term.
On the dev machines:
VS-Code + VS-Code Remote docker extension
The build server:
boot2docker or other docker āserverā OS
Installed In a docker image:
arm-gnu-emdedded toolchain
mbed-cli
whatever other dependencies are needed to do an mbed-os build
A vs-code remote development config file can be created such that vs-code will automatically connect to the docker server, start a container, and then attach vs-code to the container. The remote docker extension will allow the dev machines to build, compile, debug, etc. just like if the toolchain and sources were located on the dev machine.
Im very much simplifying this description but It is something my team and I have done successfully.
I am hoping @arekzaluski and team find some inspiration in this.
(CLI, who uses that?? and why? command line program or its correct name DOS died in the early eighties. Nothing to do with particular post subject, but I do wonder why.)
Literally every software engineer Iāve ever met in my entire lifeā¦ Besides, DOS is an operating system, synonymous these days I guess with the Windows command line. The acronym CLI is assumed to be OS-agnostic; i.e. I use the CLI on occasion on macOS and Win10
I think weāre digressing from Peterās original question here so this is the last input from me.
Yes I too have used command line operations many many times in the past, loads and loads of DOS command prompt stuff too dating back to the eighties (and dare I say it, pre DOS seventies with AIM-65 assemblers and even beyond that EEPROMās, 8 bit CPUās and DIP switches).
It is very necessary to have this ālow levelā option and definitely suits many people, but not for me thank you.
Give me āGUIā with a sprinkle of āRapidā any day, which is the original Mbed concept.
From a commercial point of view which is my background, all I need to know is what is the fastest solution to write/debug code, bare in mind I pay you by the hour? Personally I donāt think CLI is it.
Peterās task here is to be able to give his students todayās technology with the least faffing around.
So come on guys who has some ideas to help him use Mbed-Studio or Mbed-Online for his students ??? (not Microsoft Visual-Studio, that would be another forum).
Agree but I think it is moreso āleast amount of faffing around for his students but also for him on the installā
Iāve put ~weeks~ months of thought and faffing trying to build this and there is no 2 click path yet for the embedded developer to build and step debug.
When Mbed Studio takes its rightful place hosted in a server served up by a browser we will all probably breath a collective sigh of relief.
Till then I promise you, VS Code and a pre-built docker image or ssh plus some script magic are as good as it gets.
Thank you for your comments. There are many different topics in this thread. Iāll try to address most of them in this post:
Disk space - We realize that it is a big issue. We did the first step to address it. In Mbed Studio 0.8.0 installer on Windows has an option to install Studio for all users or only for the current user. It should help in setting up an environment for students. Donāt hesitate to take it for a spin. It can be downloaded from Mbed Studio | Mbed.
Another issue reported by users is a size of each program. We are still working on it. We have a few ideas on how to improve it.
Online version - @grit thank you. Yes, I can confirm that we are working also on the browser version of Mbed Studio. Having an IDE that can be run without any setup is very important to us. No exact release date is known yet but we will definitely be looking for beta users to try it before the release date. In the meantime we are still supporting Online Compiler.
Using CLI tools. From the next version of Mbed Studio we will allow to use tools shipped with Studio directly from terminal inside of the IDE. That includes Mbed CLI, mbed-ls, pyOCD, etc.