Skip to content

Commit d8558eb

Browse files
committed
getImu reads OK
1 parent 2710d45 commit d8558eb

File tree

3 files changed

+43
-15
lines changed

3 files changed

+43
-15
lines changed

examples/firmware_i2c/firmware_i2c.ino

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,8 +90,17 @@ void publishVersion() {
9090
}
9191

9292
void publishImu() {
93-
uint8_t msg_size = packeter.packetC6F('i', alvik.getAccelerationX(), alvik.getAccelerationY(), alvik.getAccelerationZ(), alvik.getAngularVelocityX(), alvik.getAngularVelocityY(), alvik.getAngularVelocityZ());
94-
sendMessage(packeter.msg, msg_size);
93+
float acc_x = alvik.getAccelerationX();
94+
float acc_y = alvik.getAccelerationY();
95+
float acc_z = alvik.getAccelerationZ();
96+
float gyr_x = alvik.getAngularVelocityX();
97+
float gyr_y = alvik.getAngularVelocityY();
98+
float gyr_z = alvik.getAngularVelocityZ();
99+
100+
size_t msg_size = sizeof(float)*6;
101+
102+
float buf[6] = {acc_x, acc_y, acc_z, gyr_x, gyr_y, gyr_z};
103+
sendMessage((uint8_t*)buf, msg_size);
95104
}
96105

97106
void getData(size_t size) {

examples/firmware_i2c/unoq/AlvikI2C.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,23 @@ class AlvikI2C{
5454
return versionStr;
5555
}
5656

57+
void getImu(float &ax, float &ay, float &az, float &gx, float &gy, float &gz) {
58+
size_t arr_size = sizeof(float) * 6;
59+
float data[6];
60+
61+
wire.beginTransmission(address);
62+
wire.write('I');
63+
wire.endTransmission();
64+
wire.requestFrom((uint8_t)address, (uint8_t)arr_size);
65+
wire.readBytes((uint8_t*)data, (uint8_t)arr_size);
66+
67+
ax = data[0];
68+
ay = data[1];
69+
az = data[2];
70+
gx = data[3];
71+
gy = data[4];
72+
gz = data[5];
73+
}
5774

5875
};
5976

examples/firmware_i2c/unoq/unoq.ino

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,25 @@ void setup() {
2222

2323
void loop() {
2424

25+
Monitor.print("VER = ");
2526
Monitor.println(alvik.getVersionString());
2627
delay(1000);
2728

28-
alvik.rotate(10.0);
29-
delay(1000);
30-
31-
alvik.rotate(-10.0);
32-
delay(1000);
33-
29+
// alvik.rotate(10.0);
30+
// delay(1000);
3431
//
35-
// wire.beginTransmission(address);
36-
// wire.write('I');
37-
// wire.endTransmission();
38-
// //delay(20);
39-
// wire.requestFrom((uint8_t)address,(uint8_t)29);
40-
// wire.readBytes(msg,29);
41-
// print_msg(29);
32+
// alvik.rotate(-10.0);
4233
// delay(1000);
34+
35+
float ax, ay, az, gx, gy, gz;
36+
alvik.getImu(ax, ay, az, gx, gy, gz);
37+
38+
Monitor.print("accX: ");
39+
Monitor.print(ax);
40+
Monitor.print(" | accY: ");
41+
Monitor.print(ay);
42+
Monitor.print(" | accZ: ");
43+
Monitor.println(az);
44+
4345
}
4446

0 commit comments

Comments
 (0)