There is a lot of confusion about how the bluetooth connection works.
What I have found is that on a Linux machine, bluetooth uses the SPP profile to create a serial port.
Then you can use this serial port as if it were a USB port. (I cant upload programs, but I can run them in live mode).
Mobile apps, on the other hand, seem to use the BLE mode and connect to the device directly without creating a system, wide connection (which explains as well why you need to reconnect each time you change app).
On top of that, I find the “firmware” terminology extremely confusing.
There seem to be 2 firmwares:
- factory / 6.01.009: this is just a sketch which allows to control the mBot with the IR remote
- online / 6.01.107: necessary if you want to use the live mode
There is some doc about 2) here
I would not consider 2) an update over 1), it is just a different thing.
Guys at MakeBlock: if I may suggest something: why don’t you add some clear technical documentation about all this.
Andrea