/** * Start the device through address with offset's informed * @param address * @param xGyroOffset * @param yGyroOffset * @param zGyroOffset * @return boolean */ bool MPU6050::dmpStartDevice(uint8_t address, int xGyroOffset, int yGyroOffset, int zGyroOffset) { setAddress(address); initialize(); setXGyroOffset(xGyroOffset); setYGyroOffset(yGyroOffset); setZGyroOffset(zGyroOffset); if (testConnection()) { // load and configure the DMP if (dmpInitialize() == 0) { // turn on the DMP, now that it's ready setDMPEnabled(true); dmpStatus = getIntStatus(); // set our DMP Ready flag so the main loop() function knows it's okay to use it dmpReady = true; // get expected DMP packet size for later comparison dmpPacketSize = dmpGetFIFOPacketSize(); timeReset(); resetFIFO(); return true; } } return false; }
bool MPU6050::dmpPacketAvailable() { return getFIFOCount() >= dmpGetFIFOPacketSize(); }
bool MPU6050_6Axis_MotionApps20::dmpPacketAvailable() { return getFIFOCount() >= dmpGetFIFOPacketSize(); }