Skip to content

values of KX132 accelerometer are for x,y,z axis still at 255,000g #9

@problem00

Description

@problem00

Hello everybody,
I connected the ESP32 with the KX132 accelerometer. While measuring with the accelerometer, the values of x,y,z axis are still 255,00g. While compiling, there are following mistakes/warnings:

In file included from C:\Users\prename.name\Documents\Arduino\libraries\SparkFun_KX13X_Arduino_Library\src\SparkFun_Qwiic_KX13X.h:23:0,
from C:\Users\prename.name\Documents\Arduino\libraries\SparkFun_KX13X_Arduino_Library\src\SparkFun_Qwiic_KX13X.cpp:18:
C:\Users\prename.name\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\libraries\Wire\src/Wire.h: In member function 'KX13X_STATUS_t QwiicKX13xCore::readMultipleRegisters(uint8_t, uint8_t*, int16_t)':
C:\Users\prename.name\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\libraries\Wire\src/Wire.h:102:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int, int)
uint8_t requestFrom(int address, int size, int sendStop);
^
C:\Users\prename.name\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\libraries\Wire\src/Wire.h:98:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint16_t, uint8_t, uint8_t)
uint8_t requestFrom(uint16_t address, uint8_t size, uint8_t sendStop);
^
C:\Users\prename.name\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\libraries\Wire\src/Wire.h:102:13: note: candidate 1: uint8_t TwoWire::requestFrom(int, int, int)
uint8_t requestFrom(int address, int size, int sendStop);
^
C:\Users\prename.name\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.6\libraries\Wire\src/Wire.h:100:13: note: candidate 2: uint8_t TwoWire::requestFrom(uint8_t, uint8_t, uint8_t)
uint8_t requestFrom(uint8_t address, uint8_t size, uint8_t sendStop);

I loaded up following code:

/*********************************************************
Author: Elias Santistevan @ SparkFun Electronics
Date: 5/2021
Library repository can be found here:
https://github.com/sparkfun/SparkFun_KX13X_Arduino_Library

Basic example for reading back accelerometer values using I2C.

This code is released under the MIT License.

Please review the LICENSE.md file included with this example. If you have any questions
or concerns with licensing, please contact techsupport@sparkfun.com.

Distributed as-is; no warranty is given.
*******************************************************/

#include <Wire.h>
#include "SparkFun_Qwiic_KX13X.h"

QwiicKX132 kxAccel;
//QwiicKX134 kxAccel; // Uncomment this if using the KX134 - check your board
//if unsure.
outputData myData; // This will hold the accelerometer's output.

void setup() {

while(!Serial){
delay(50);
}

Serial.begin(115200);
Serial.println("Welcome.");

Wire.begin();
if( !kxAccel.begin() ){
Serial.println("Could not communicate with the the KX13X. Freezing.");
while(1);
}
else
Serial.println("Ready.");

if( !kxAccel.initialize(DEFAULT_SETTINGS)){ // Loading default settings.
Serial.println("Could not initialize the chip.");
while(1);
}
else
Serial.println("Initialized...");

// kxAccel.setRange(KX132_RANGE16G);
// kxAccel.setRange(KX134_RANGE32G); // For a larger range uncomment

}

void loop() {

myData = kxAccel.getAccelData();
Serial.print("X: ");
Serial.print(myData.xData, 4);
Serial.print("g ");
Serial.print(" Y: ");
Serial.print(myData.yData, 4);
Serial.print("g ");
Serial.print(" Z: ");
Serial.print(myData.zData, 4);
Serial.println("g ");

delay(20); // Delay should be 1/ODR (Output Data Rate), default is 50Hz

}
I hope somebody can help me, I dont know what I do wrong.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions