I recently stumbled upon a peculiar issue that's causing automatic reboots on the iPhone 15 Pro and iPhone 15 Pro Max. It appears that setting an extremely high value for gyroUpdateInterval can lead to this problem, but interestingly, the iPhone 15 doesn't exhibit the same behavior. Here's the code in question: - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { self.motionManager = CMMotionManager.new; self.motionManager.gyroUpdateInterval = 3600; // The problematic line [self.motionManager startGyroUpdatesToQueue:NSOperationQueue.mainQueue withHandler:^(CMGyroData * _Nullable gyroData, NSError * _Nullable error) { NSLog(@Gyroscope data: %@, gyroData); }]; } It's worth noting that when I set gyroUpdateInterval to a more reasonable value like 60 (or omit it, as it uses a default value in that case), the reboots don't occur on the affected devices. I have tested this behavior on both the iPhone 15 Pro and the iPhone 15 Pro