Jump to content
View in the app

A better way to browse. Learn more.

Tinkerunity

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Geschrieben

First of all, hello everybody! I am new to this board and hope my question hasn't been asked a hundred times already (I did search).

 

I have a problem with a newly arrived IMU brick. Simply: Brickv shows the data, but if I try to use the C example, I don't get any data.

 

More specifically, after turning on the return codes (imu_set_response_expected_all), I seem to know that I get timeouts.

 

Any ideas what could be wrong? (I already flashed a new firmware, etc.)

 

Bests

Boris

 

Code:

    // Enable debugging, i.e. turn on return codes
    imu_set_response_expected_all(&imu, true);

    // Set period for quaternion callback to 1s
    ret = imu_set_quaternion_period(&imu, 10);
    if (ret != E_OK)
    {
        fprintf(stderr,"Error: imu_set_quaternion_period (%d)\n",ret);
        exit(ret);
    }

Returns:

Error: imu_set_quaternion_period (-1)

 

Geschrieben

imu_set_response_expected_all is new in protocol v2, so you're using the C bindings for protocol v2 here. Did you do this on purpose, or accidently by getting the latest code from git?

 

You need to use brickd, brickv, firmwares and bindings in either for protocol v1 or v2, you cannot mix them. Currently v2 is still in beta.

 

If you got the C bindings in v2 by accident then just get the latest v1 version from here: http://www.tinkerforge.com/doc/Downloads.html

 

If you decided to use v2 on purpose then ensure that brickd, brickv and the firmware flashed on the IMU Brick is v2.

 

If that's already the case then you might be using the wrong UID, ensure that you use the UID shown for the IMU Brick in brickv.

Geschrieben
  • Autor

Ah, thanks. I thought about trying the 2.0 beta, but I didn't expect it to be the master of the regular trunk (I used the GIT code in combination with the .deb of brickd). I have looked for version information in the code and only found the API version information in imu_create, which was set to 1.0.1 (afterwards I was just assuming that it would be related to the version of brickd/brickv). Same version information is also in the "old" code that you pointed me to, maybe it would be nice to have some kind of "general" version match/check/information.

 

Thanks for the fast help, now it works like a charm,

Boris

Geschrieben

The 1.0.1 is the API version of the IMU Brick. We have plenty of version numbers: the API version, the bindings version, the firmware version, etc :)

 

We should raise the API version to v2 too, thanks for reporting this.

 

You can still use git to get the bindings for protocol v1 you just need to switch to the v1.x.y branch using 'git checkout v1.x.y'.

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...

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.