OK, I went back and tested this again.
Connected mCore to computer.
Update Firmware
Reset Default Program > mBot
Connect > Serial Port > /dev/tty/wchusbserial
Now mBlock shows Serial Port Connected in the header bar. I’m ready to run a tethered program from mBlock.
Connect MeCompass to port 3
This was my test program for tethered mode.
The program runs, but the Panda only ever thinks “0”
Next, made an similarly simple upload-able program. No action other than reading and reporting data from MeCompass on Port 3.
Once the program is uploaded to the mCore, you have to reconnect the serial port using the Connect menu, and switch the reporting modes to Character. Then the serial write statements will show up in the tiny Serial Monitor window at the bottom right of the mBlock Arduino-mode screen.
As you can see, here MeCompass reports reasonable values. These numbers shift as I moved the sensor around. They may not be properly calibrated, but it at least demonstrates that the sensor is functioning and sending data.
This is where I landed a few months back. There’s some software issue at work here. Either the mBlock Compass Sensor block’s code (the javascript that runs and sends/recieves data to the mCore’s firmata variant) needs fixing
OR
There’s a hardware timing issue that prevents MeCompass (and other white-labeled sensors?) from operating in Scratch/tethered mode. If this is the case, Makeblock needs to say so loudly and clearly, preferably on the product pages for all such sensors.
Anyone else have MeCompass sensors to test? Any thoughts @tec_support ?
–andrew