Support

Application: 3D Seg/Joint Angles
Platform: iOS (iPhone)
Developer: Boyi Dai
Last Updated: March 28, 2026
For questions or issues, contact us at daiboyi@gmail.com. We aim to respond within 7 business days.

Getting Started

Step 1 - Grant Motion Permission

On first launch, iOS will ask permission to access Motion & Fitness data. Tap Allow. Without this permission, the app cannot read the sensors and will display no angles.

If you accidentally denied permission, go to Settings → Privacy & Security → Motion & Fitness and enable the toggle for 3D Seg/Joint Angles.

Step 2 - Select a Rotation Sequence

Choose the Cardan/Euler rotation sequence that matches your measurement protocol using the picker at the top of the screen. The default is X-Z-Y, which is recommended for most lower-limb joint measurements. The sequence determines the mathematical order in which rotations about each axis are applied, which affects the angle values.

Step 3 - Set the Initial Position

Place the iPhone on the body segment you wish to measure. Hold it still, then press Set Initial Position. This captures the current device orientation as the zero-degree reference frame. All subsequent angles are measured relative to this position.

Tip: Make sure the phone is completely still and in the intended anatomical reference position before pressing Set Initial Position. Any movement during calibration will introduce an offset into all subsequent measurements.

Step 4 - Measure Angles

Move the phone (or the body segment it is attached to). The X, Y, and Z angles update in real time at 60 Hz, showing the 3D rotation from the initial position to the current position.

Step 5 - Record and Export (Optional)

Tap Start Recording to log angle data over time. Tap Stop Recording to end the session. The recorded angles are plotted on screen. Tap Export CSV to share the data file via email, AirDrop, Files, or any other app.

Understanding the Phone Axes

The app measures rotations about the physical axes of the iPhone:

AxisDirection on PhoneBiomechanical AssociationPositive Rotation
XPoints to the right side of the phoneMedial-lateral axis (flexion/extension)Right-hand rule about +X
YPoints toward the top (Home button end or top edge)Longitudinal axis (internal/external rotation)Right-hand rule about +Y
ZPoints out of the screen face (toward you)Anterior-posterior axis (abduction/adduction)Right-hand rule about +Z

Positive and negative angle signs follow the right-hand rule: curl the fingers of the right hand in the direction of rotation; the thumb points in the positive axis direction.

Understanding Rotation Sequences

A Cardan (Tait-Bryan) rotation sequence defines the order in which three successive rotations are applied. The order matters because 3D rotations are not commutative - rotating X then Y gives a different result than Y then X.

SequenceRotation OrderCommon Application
X-Z-YRotate about X first, then Z, then YLower-limb joints (knee, ankle, hip) - recommended default
X-Y-ZRotate about X first, then Y, then ZGeneral biomechanics
Y-X-ZRotate about Y first, then X, then ZUpper-limb joints, trunk
Y-Z-XRotate about Y first, then Z, then XSpine, thorax
Z-X-YRotate about Z first, then X, then YFoot, ankle complex
Z-Y-XRotate about Z first, then Y, then XHead, cervical spine

Regardless of the sequence selected, angles are always displayed on screen in X, Y, Z order.

Frequently Asked Questions

The app shows no angle readings

Check that Motion & Fitness permission has been granted: Settings → Privacy & Security → Motion & Fitness. Enable the toggle for 3D Seg/Joint Angles and restart the app. If the problem persists, restart your iPhone.

Angles do not return to exactly zero when I return to the starting position

Small errors accumulate in the gyroscope over time (sensor drift). This is a hardware limitation common to all MEMS IMU sensors. For long measurement sessions, press Set Initial Position again at the start of each trial to reset the reference. Keeping sessions short also reduces drift.

The Z-axis angle seems inaccurate or unstable

The Z-axis orientation relies on the magnetometer (compass) to define the heading reference. Magnetic interference from metal structures, electronic equipment, medical devices, or ferromagnetic materials can disturb the magnetometer and cause inaccurate Z-axis readings. Move away from interference sources and recalibrate. In laboratory settings with metal equipment, consider using rotation sequences that minimize reliance on the Z axis for your primary measurement.

Angles jump suddenly during measurement

Sudden jumps can occur near a gimbal lock condition - a mathematical singularity that occurs when the second rotation in the sequence approaches plus or minus 90 degrees. If this is a problem, try switching to a different rotation sequence where the singularity is not in the range of motion you are measuring.

The angles do not match my expected anatomical convention

Ensure the phone is oriented on the body segment so that its physical axes align with your intended anatomical axes before pressing Set Initial Position. The X axis points to the right side of the phone, Y toward the top, and Z out of the screen. Attaching the phone consistently to the same surface of the segment (e.g., always the anterior surface) and in the same orientation will ensure consistent results across trials.

Which side of the phone should face the body?

This depends on your convention. A common approach is to place the screen face away from the body (so Z points away from the skin). Document your placement convention and apply it consistently across all measurements. The app computes angles relative to whichever orientation you set as the initial position, so the absolute placement matters less than consistency.

Can I use the app for two-segment joint angle measurement?

Yes. Use one iPhone per segment. Set the initial position on both phones with the segments in the reference anatomical position. The relative motion between the two phones represents the joint angle. The difference between the two phones' angle readings gives the joint angle for each axis. A future version of the app may automate this calculation.

Can I use the app for spine or upper-limb measurements?

Yes, with appropriate sequence selection. For the trunk and spine, Y-X-Z or Y-Z-X are commonly used. For the shoulder or elbow, consult your institution's biomechanics protocol for the recommended sequence. Always validate the output against a known motion before data collection.

The angles drift when the phone is held still

A small amount of slow drift (typically less than 1-2 degrees per minute) is normal due to gyroscope bias. The app uses Apple's CoreMotion sensor fusion, which applies corrections using the accelerometer and magnetometer to minimize drift. If drift is excessive, try restarting the app. Extreme temperatures can also affect sensor performance.

The app shows angles even before I set the initial position

Before calibration, the app displays raw orientation angles relative to the global reference frame (gravity and magnetic north). These readings are not clinically meaningful until you press Set Initial Position to define your reference frame.

Can I export data to Excel or MATLAB?

Yes. The exported CSV file (Time in seconds, X, Y, Z in degrees) can be opened directly in Microsoft Excel, Google Sheets, Numbers, MATLAB, Python (pandas), R, or any application that reads comma-separated values.

How long can I record for?

Recording duration is limited by your device's available RAM. In practice, recording sessions of many minutes are supported. For very long sessions (e.g., gait analysis over many minutes), consider using shorter recording windows per trial and exporting between trials.

Is the app suitable for clinical or research use?

The app is designed for research, education, and rehabilitation purposes and provides measurements consistent with standard IMU-based goniometry. It is not a certified medical device and has not been evaluated by the FDA, CE, or any regulatory authority. Results should be validated against gold-standard instrumentation before use in formal research or clinical decision-making.

Does the app work with iPad?

The app is designed and tested for iPhone. It may run on iPad but is not officially supported and has not been validated on iPad hardware.

Does the app work in the background?

No. Angle computation and recording require the app to be in the foreground. If the screen locks or you switch to another app, motion updates will pause.

Does the app require an internet connection?

No. The app works entirely offline. No internet connection is required at any time for any feature.

How do I reset the app if something goes wrong?

Force-close the app by swiping it away from the App Switcher and relaunch it. If you need a full reset, delete and reinstall the app from the App Store. No data is stored, so reinstalling does not cause data loss.

Tips for Accurate Measurements

Known Limitations

Contact Support

Boyi Dai
Email: daiboyi@gmail.com

When reporting an issue, please include: We aim to respond within 7 business days.

View Privacy Policy