In OpenCat when I try to compile I am getting 'class MPU6050' has no member named 'dmpGetQuaterion'
What should I do?
Arduino: 1.8.13 (Windows 10), Board: "Arduino Uno"
In file included from C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:41:0:
sketch\WriteInstinct/OpenCat.h: In member function 'void Motion::loadDataFromI2cEeprom(unsigned int&)':
sketch\WriteInstinct/OpenCat.h:538:51: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:
Wire.requestFrom(DEVICE_ADDRESS, skillHeader);
^
In file included from C:\Users\aj_el\Documents\Arduino\libraries\I2C_MPU6886_IMU\src/I2C_MPU6886.h:4:0,
from C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src/Wire.h:68:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int)
uint8_t requestFrom(int, int);
^~~~~~~~~~~
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\Wire\src/Wire.h:65:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t)
uint8_t requestFrom(uint8_t, uint8_t);
^~~~~~~~~~~
In file included from C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:41:0:
sketch\WriteInstinct/OpenCat.h: At global scope:
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '-9.0e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
};
^
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '2.25e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '-9.0e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '2.25e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '-9.0e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '-2.25e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '-9.0e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
sketch\WriteInstinct/OpenCat.h:732:1: warning: narrowing conversion of '-2.25e+1' from 'double' to 'int8_t {aka signed char}' inside { } [-Wnarrowing]
In file included from C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:44:0:
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:276:32: error: no 'uint8_t MPU6050::dmpInitialize()' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpInitialize() {
^
In file included from C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:44:0:
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:385:34: error: no 'bool MPU6050::dmpPacketAvailable()' member function declared in class 'MPU6050'
bool MPU6050::dmpPacketAvailable() {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:412:66: error: no 'uint8_t MPU6050::dmpGetAccel(int32_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetAccel(int32_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:420:66: error: no 'uint8_t MPU6050::dmpGetAccel(int16_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetAccel(int16_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:428:67: error: no 'uint8_t MPU6050::dmpGetAccel(VectorInt16*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetAccel(VectorInt16 *v, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:436:71: error: no 'uint8_t MPU6050::dmpGetQuaternion(int32_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetQuaternion(int32_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:445:71: error: no 'uint8_t MPU6050::dmpGetQuaternion(int16_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetQuaternion(int16_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:454:71: error: no 'uint8_t MPU6050::dmpGetQuaternion(Quaternion*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetQuaternion(Quaternion *q, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:469:65: error: no 'uint8_t MPU6050::dmpGetGyro(int32_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetGyro(int32_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:477:65: error: no 'uint8_t MPU6050::dmpGetGyro(int16_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetGyro(int16_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:485:66: error: no 'uint8_t MPU6050::dmpGetGyro(VectorInt16*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetGyro(VectorInt16 *v, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:495:91: error: no 'uint8_t MPU6050::dmpGetLinearAccel(VectorInt16*, VectorInt16*, VectorFloat*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetLinearAccel(VectorInt16 *v, VectorInt16 *vRaw, VectorFloat *gravity) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:503:92: error: no 'uint8_t MPU6050::dmpGetLinearAccelInWorld(VectorInt16*, VectorInt16*, Quaternion*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetLinearAccelInWorld(VectorInt16 *v, VectorInt16 *vReal, Quaternion *q) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:515:68: error: no 'uint8_t MPU6050::dmpGetGravity(int16_t*, const uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetGravity(int16_t *data, const uint8_t* packet) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:526:61: error: no 'uint8_t MPU6050::dmpGetGravity(VectorFloat*, Quaternion*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetGravity(VectorFloat *v, Quaternion *q) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:537:56: error: no 'uint8_t MPU6050::dmpGetEuler(float*, Quaternion*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetEuler(float *data, Quaternion *q) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:555:85: error: no 'uint8_t MPU6050::dmpGetYawPitchRoll(float*, Quaternion*, VectorFloat*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetYawPitchRoll(float *data, Quaternion *q, VectorFloat *gravity) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:576:67: error: no 'uint8_t MPU6050::dmpProcessFIFOPacket(const unsigned char*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpProcessFIFOPacket(const unsigned char *dmpData) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:586:84: error: no 'uint8_t MPU6050::dmpReadAndProcessFIFOPacket(uint8_t, uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpReadAndProcessFIFOPacket(uint8_t numPackets, uint8_t *processed) {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:611:40: error: no 'uint16_t MPU6050::dmpGetFIFOPacketSize()' member function declared in class 'MPU6050'
uint16_t MPU6050::dmpGetFIFOPacketSize() {
^
C:\Users\aj_el\Documents\Arduino\libraries\MPU6050/MPU6050_6Axis_MotionApps20.h:617:55: error: no 'uint8_t MPU6050::dmpGetCurrentFIFOPacket(uint8_t*)' member function declared in class 'MPU6050'
uint8_t MPU6050::dmpGetCurrentFIFOPacket(uint8_t *data) { // overflow proof
^
C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino: In function 'void getYPR()':
OpenCat:206:11: error: 'class MPU6050' has no member named 'dmpGetQuaternion'
mpu.dmpGetQuaternion(&q, fifoBuffer);
^~~~~~~~~~~~~~~~
OpenCat:207:11: error: 'class MPU6050' has no member named 'dmpGetGravity'
mpu.dmpGetGravity(&gravity, &q);
^~~~~~~~~~~~~
OpenCat:208:11: error: 'class MPU6050' has no member named 'dmpGetYawPitchRoll'
mpu.dmpGetYawPitchRoll(ypr, &q, &gravity);
^~~~~~~~~~~~~~~~~~
C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino: In function 'void setup()':
OpenCat:331:21: error: 'class MPU6050' has no member named 'dmpInitialize'; did you mean 'initialize'?
devStatus = mpu.dmpInitialize();
^~~~~~~~~~~~~
initialize
OpenCat:360:24: error: 'class MPU6050' has no member named 'dmpGetFIFOPacketSize'
packetSize = mpu.dmpGetFIFOPacketSize();
^~~~~~~~~~~~~~~~~~~~
C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino: In function 'void loop()':
C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:438:31: warning: 'bool IRrecv::decode(decode_results*)' is deprecated: Please use decode() without a parameter. [-Wdeprecated-declarations]
if (irrecv.decode(&results)) {
^
In file included from C:\Users\aj_el\Documents\Arduino\libraries\Arduino-IRremote-master\src/IRremote.h:177:0,
from C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:83:
C:\Users\aj_el\Documents\Arduino\libraries\Arduino-IRremote-master\src/IRReceive.cpp.h:1332:6: note: declared here
bool IRrecv::decode(decode_results *aResults) {
^~~~~~
C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:535:40: warning: invalid conversion from 'const char*' to 'char*' [-fpermissive]
char* list = inBuffer.c_str();
~~~~~~~~~~~~~~^~
C:\Users\aj_el\Desktop\Bittle\OpenCat\OpenCat.ino:704:47: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
skillByName("balance", 1, 2, false);
^
Multiple libraries were found for "MPU6050.h"
Used: C:\Users\aj_el\Documents\Arduino\libraries\MPU6050
Not used: C:\Users\aj_el\Documents\Arduino\libraries\MPU6050-0.2.1
Multiple libraries were found for "I2Cdev.h"
Used: C:\Users\aj_el\Documents\Arduino\libraries\I2Cdev
Not used: C:\Users\aj_el\Documents\Arduino\libraries\MPU6050-0.2.1
exit status 1
'class MPU6050' has no member named 'dmpGetQuaternion'
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Have you installed MPU6050 before? Maybe there's a conflicting library? Can you try removing them from Documents/Arduino/Libraries and reinstall them?
Multiple libraries were found for "MPU6050.h" Used: C:\Users\aj_el\Documents\Arduino\libraries\MPU6050 Not used: C:\Users\aj_el\Documents\Arduino\libraries\MPU6050-0.2.1 Multiple libraries were found for "I2Cdev.h" Used: C:\Users\aj_el\Documents\Arduino\libraries\I2Cdev Not used: C:\Users\aj_el\Documents\Arduino\libraries\MPU6050-0.2.1 exit status 1