CoSpaces can be used in almost all types of STEM activities: students can analyze, model, simulate, communicate. The only area where CoSpaces can not be used is experimentation.
The ideal for me would be to be able to do everything with CoSpaces (except upload the .hex file to the board), at least for simple cases:
. to model and simulate a whole system managed in part by a BBC micro:bit board,
. to generate the .hex file executable by the BBC micro: bit (.hex) board.
I consider here a system with a servomotor actuating a mechanism, with a button, a BBC micro:bit board connected to the button and to the servomotor.
Behavior to model:
When you press the button then the actuator activates the mechanism in a defined sequence (for example turn the axis 45 degrees, wait a second, then return to the initial position).
With MakeCode I can only partially model this system. I can not simulate the mechanism driven by the servomotor, whereas I can do it with CoSpaces (but I do not really know how to do it right now).
With MakeCode I can generate the executable file (.hex) for the electronic board, and experimentally test the behavior of the complete system, whereas I can not do it with CoSpaces.
(the mechanism does not transmit any movement here, because I do not know how to do it actualy!)
The same example with Microsoft MakeCode:
To simulate with MakeCode, or to édit the code:
The problem is that you have to model in both applications (CoSpaces and MakeCode) the fact that when I press the button, a certain movement have to be controlled.
It would be great to be able to use in CoSpaces at least some basic blocks of MakeCode, to model the inputs/outputs of the electronic board, then that CoSpaces generates the executable file (.hex) by the BBC micro:bit board corresponding to these few blocks only.
Virtual Universe Pro with Scenario for mBot robot (60 € TTC for a license valid one year for all the PCs of a school) allows to simulate and program mBot robot, with mBlock: