Hi Fixman. Glad you got it sorted. I’ve been coding for nearly 40 years (gulp! I started writing Fortran on punched cards!!!).
I too found it difficult and frustrating that there was so little information for the coder. It took me some time to figure it all out and decided to write it all down for others as best I could.
To be fair, the Mbots are designed for use with Mblock, and Arduino is just a side effect of that, so I guess that’s why there’s so little of the kind of documentation I’d expect to see for coders (i.e. proper API documentation), the effort goes into the simpler interface, but even that isn’t easy when adding add-ons to the base robot. Again step-by-step simple instructions would be great and a set of plugins and extensions for every additional module for each robot kit would be helpful, but doesn’t exist. It’s pretty simple if you stick to one standard robot and mblock, go away from that and it all gets a bit “experimental”
In term of C++/Arduino, the examples are a bit of a mix - they assume some knowledge, i.e. that the main boards are all different in terms of how they’re wired up, so an Orion isn’t compatible with an Auriga etc etc, they are all written for a specific board (and that not all examples will work on the board they specify out of the box), and in order to figure it out you need some ability to read schematics and translate that into information into code.
A good example of this is motors - with Ranger, you get two motors, but the firmware includes the following libraries:
#include “MeDCMotor.h”
#include “MeStepper.h”
#include “MeEncoderMotor.h”
#include “MeEncoderNew.h”
and there’s no official documentation that I could find to say which you need for the base model.
Some of my information came from an instructables article I linked to in the document (https://www.instructables.com/id/Advanced-Makeblock-Sensors-DIY/) which really kick started me in the right direction. Without that, I might still be struggling
Enjoy the journey, you’ll get there!