The Yocto-3D-V2 is a USB 3-axis accelerometer, gyroscope and compass. If you need to detect an orientation, a movement or a magnetic field, the Yocto-3D-V2 is what you need. This USB device provides a 3D accelerometer, a 3D magnetometer, a 3D gyroscope to measure angular velocity, a 2D inclinometer (tilt sensor), a tilt compensated compass and an inertial estimation of the orientation based on the 3D gyroscope.
All maths required to use this kind of sensors are handled directly by the device. You can mount it in any position, as the reference frame can be configured and taken into account internally by the Yocto-3D-V2. The device automatically computes tilt angles and the estimated device attitude (using a quaternion, with an optional conversion to Tait-Bryan angles in the API). No additional computation is required in the application to determine the device orientation.
You can move away the sensor part as required, in particular if you want to avoid electromagnetic interferences from other devices.
Caution: if you intend to use the compass function, you should not use classical Yoctopuce enclosures, as they include steel screws and magnets. Instead, use the YoctoBox-3D-Black/Transp enclosures, which do no include magnets.
If you are just interested in measuring tilt angles, you may want to have a look at the Yocto-Inclinometer
Contrarily to the Yocto-3D, this new version can perform auto-calibration to compensate for hard-iron interference caused by nearby sources of magnetic fields that move along with the sensor.
To Pokemon GO users: Yoctopuce products work only with applications specifically designed to use them. On an Android phone, the Yocto-3D-V2 does not appear as a generic embedded gyroscope. If your Android phone doesn't feature any embedded gyroscope, the Yocto-3D-V2 can't help you to play with Pokemon GO.
If you are just interested in measuring tilt angles, you may want to have a look at the Yocto-Inclinometer, which has a much better absolute precision.
This device can be connected directly to an Ethernet network using a YoctoHub-Ethernet, to a WiFi network using a YoctoHub-Wireless-n and to a GSM network using a YoctoHub-GSM.
USB cables and enclosures to be ordered separately.
To rotate 3D box as shown in virtualhub what parameters to take from 3D v2 tilt1 and 2, compass or quternion values?
What is the latency of this sensor?
What is the bias stability (or in-run bias stability) in degree/h ?
@vm1: That parameter is inherited directly from the BNO055. You might find your answer here: https://electronics.stackexchange.com/questions/239749/bosch-bno055-gyroscope-bias-stability
What is the magnetometers heading accuracy in degrees?
I see the resolution is 0.1░ but no accuracy
Magnetometer heading accuracy is highly dependent on the environment and on the calibration, so it would not make much sense to specify an accuracy. The BNO055 sensor does not actually specify a heading accuracy, so we cannot make one.
What is the sampling frequency for the sensors ?
@udar: the attitude estimation is refreshed at 100Hz, but other sensors like the accelerometer are averaged at 7Hz for greater stability (MEMS accelerometer tends to be noisy). You can however change the "bandwidth" parameter if you prefer to have higher rate and lower stability
Can you provide more info about what was changed in firmware 35944? What problem was fixed?
@mitchellh: handling of compass bearing parameter has been fixed. Note that release notes for each firmware are available from the firmwares page: www.yoctopuce.com/EN/firmwares.php
@martinm Thank you for your reply, I saw those release notes but was hoping for some extra detail. I have been using this device for nearly a year now and want to confirm the change in behavior before I update the firmware. Thanks.
Object is unstable while using quaternion values for rotation . Can you please publish how to use quaternion values in unity. Even when when configuring in your website it's unstable through quaternion. We are not getting any rotation.
@shiva: Did you implement the method explained in this article: https://www.yoctopuce.com/EN/article/how-to-correctly-use-a-yocto-3d-v2-in-unity ?
@mvuilleu ya we had seen your article , but your using euler system where we face gimble lock problem. so how to diectly do transformation of object based on quaternion
is it possible to get a acceleration compensated value from the tilt sensors?
@mtc: can you explain what do you mean exactly? The tilt value returned by the Yocto-3D-V2 is the result of a fusion algorithm, so it is supposed to be as much as possible acceleration-compensated.
@mvuilleu I move an object with wheels on a flat surface. Even if i move the object slow, the tilt sensor moves between 1-2 degress. If the tilt sensor is already compensated, and this is the best possible result, than it's ok.
I see that the magnetometer auto-calibration is happening under all fusion modes including "M4G" which I activate through "refFrame->setFusionMode(Y_FUSIONMODE_M4G)" from my code. I would like to have access to unaltered "raw" 3-axis magnetometer readings directly. Is there any way for this? I have read through all the manual and the blogs but could not see anything promising other that the "M4G" fusion method mentioned in one blog. But that does not work either, along with all the rest of the fusion methods which I tried. I can easily trick the device by starting it in the vicinity of heavy magnetic interference and after moving it away all the magnetometer readings remain very large. Please note I am not interested in the sensor fusion output and instead just the raw sensor readings as I do the visual inertial sensor fusion myself.
@tara: Magnetometer auto-calibration is handled directly by the BNO055 chip, unfortunately we don't have control on it. According to BNO055 spec it is supposed to be "unavailable" in M4G mode - which I understand as "always disabled". However if the sensor is subject to a large magnetic field beyond its spec, the sensor might be left in an unknown state that requires a power cycle.
Note that the Yocto-3D-V2 is not designed to be used with an external fusion algorithm: you will not be able to get 9D data at the desired rate to perform an external fusion.