GoPlus2 Module and Core2 for AWS
-
@ajb2k3 This is the one I have: https://docs.m5stack.com/en/module/goplus2
-
Hello @ciconde
I've tried your code with UIFlow 1.8.7 and my M5Core2 (firmware 1.8.7) and M5GoPlus2 and it works as expected.
Did you make sure your M5Core2 and M5GoPlus2 are firmly stacked together? Sometimes the modul's pins are a tad short and maybe not all of them make proper contact. The only other thing at this point I can think of is defective hardware.
Thanks
FelixP.S. I had to rebuild your code from the picture as the 'file' you posted couldn't be read by UIFlow properly.
-
Hello @ciconde
ok, I think I found the real reason it might or might not work. The M5GoPlus2 uses the same I2C address (0x38) as the touch screen in the M5Core2.
That also explains as to why for me when I use servo output 1 the touch screen stops working. See thread here.
In other words the M5GoPlus2 module is not really compatible with the M5Core2.
Thanks
Felix -
-
Hello @ciconde
I don't know for sure, but I don't think you can change the I2C address of the GoPlus2. We had this discussion before in this thread. It seem like the GoPlus2 firmware is not re-programmable and there are no provisions (like dip switches) to change the I2C address.
BTW: I've read through the touch IC datasheet, but I have not found anything which would allow to change its I2C address.
BTW: I think M5Stack knows about this issue (same I2C address) as for M5Core2 there is no GoPlus2 Arduino example in github (only for M5Stack devices).
Thanks
Felix -
@felmue M5stack store just confirmed the incompatibility:
In the GoPlus2 product page:
-
-
@ciconde I have an M5Stack Core2 AWS working with the GoPlus2. I'm using Arduino not the UIflow. The issue I worked around was that the Wire Bus there are two I2C buses on the Core2. The demo code is set for Wire.begin() which is the wrong bus for the Core2. I changed the code in my copy of GoPlus2.cpp which was on GitHub and changed all references of Wire to Wire1 although to make it easy to swap it back I made a #define WIRE Wire1 and replaced all the Wire.function with WIRE.function. For example WIRE.begin() or WIRE.write(angle).
I've tested this with 9 volts into the GoPlus2, running two different 180 degree servos. -
Hello @Hyperspherical
just curious. Are you using the touch screen in your project? If so, does it still work?
Thanks
Felix -
@felmue There's no exact information on compatibility in your links.
I found problems, then contacted directly M5 and they explained that Core2 and GoPlus2 are not compatible in a direct message.
Hope this thread helps next people.
BTW, I bought a new Core Gray device (Core1, not Core 2) but still GoPlus2 is not recognized.
I'm starting to think I'll never make it work... :'(