Jump to content

Recommended Posts

Geschrieben

Hello ,

 

I'm using Python 3.6.

 

I can run the example to emunerate my device.

When I'm using example_simple.py from IMU brick 2.0.

I have an error message from  imu.get_quaternion()

 

in get_quaternion

    return GetQuaternion(*self.ipcon.send_request(self, BrickIMU.FUNCTION_GET_QUATERNION, (), '', 'f f f f'))

 

  File "C:\Users\JPannetier\Anaconda3\lib\site-packages\tinkerforge\ip_connection.py", line 1194, in send_request

    return unpack_payload(response[8:], form_ret)

 

  File "C:\Users\JPannetier\Anaconda3\lib\site-packages\tinkerforge\ip_connection.py", line 251, in unpack_payload

    x = struct.unpack(f, data[:length])

 

error: unpack requires a buffer of 4 bytes

 

Thank you

Best regard

Geschrieben

I'm using a Brick IMU 2.0 with its example :

https://www.tinkerforge.com/en/doc/Software/Bricks/IMUV2_Brick_Python.html#simple

 

When I opened the source of Brick IMU 2.0, i can notice :

Into communication.c :

 

void get_quaternion(const ComType com, const GetQuaternion *data) {

GetQuaternionReturn gqr;

 

gqr.header        = data->header;

gqr.header.length = sizeof(GetQuaternionReturn);

gqr.x            = sensor_data.qua_x;

gqr.y            = sensor_data.qua_y;

gqr.z            = sensor_data.qua_z;

gqr.w            = sensor_data.qua_w;

 

send_blocking_with_timeout(&gqr, sizeof(GetQuaternionReturn), com);

}

 

And into communication.h

 

typedef struct {

MessageHeader header;

int16_t w;

int16_t x;

int16_t y;

int16_t z;

} __attribute__((__packed__)) GetQuaternionReturn;

 

 

 

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...