12 Replies
      Latest reply on Oct 16, 2019 4:38 AM by Claude31
      jumbopilot Level 1 Level 1 (0 points)

        Hi Guys,


        since at least 2 years and usage of CMAltimeter, the method startBarometerUpdatesToMotionQueue(withHandler handler: @escaping CMAltitudeHandler) does not support modifying the core update interval fixed at 1 Hz (i.e. updates are output every 1 second).


        This update rate is not sufficient for sport applications. The embedded hardware (MEMS) of well-known suppliers actually supports higher update rates than 1 Hz.


        Why does Apple limit the update rate to 1 Hz and does not provide a similar update interval configuration interface as for accelerometer?


        I've posted this as a new feature request 2 years ago without any apple feedback (via Feedback Assistant): Aug 31, 2018 at 4:35 PM – FB5637206 CMAltimeter: fastest update rate is limited to 1Hz (no configuration of update interval) 43939295


        How can I start a discussion with Apple engineers to check feasability?

        I'm missing an interface or method parameter like byInterval interval:TimeInterval in below method


        Code snippet

           open func startBarometerUpdatesToMotionQueue(withHandler handler: @escaping CMAltitudeHandler) {




        Apple CMAltimeter Documentation: developer.apple.com/documentation/coremotion/cmaltimeter



        • Re: CMAltimeter update interval not sufficient for sport applications
          KMT Level 9 Level 9 (15,785 points)

          I'd suggest it's best to remember that an iphone is not only a phone first, it is a consumer-level product, in which case you may need to align your expectations accordingly.


          If your suggestions have indeed gone unheeded, it may be because Apple either sees a conflict with their own internal goals, and/or those goals simply do not target the specific market you have in mind.


          Otherwise their may be a market waiting for an improved resolution smart-phone hybrid/add-on that needs to be grassrooted.. Don't wait for Apple

            • Re: CMAltimeter update interval not sufficient for sport applications
              jumbopilot Level 1 Level 1 (0 points)

              iPhone hardware teardowns show the embedded barometer sensor (mems) supports much higher data update rates, up to 200Hz.

              Why does Apple support Accelerometer update rates down to every millisecond, all by sufficient resolution?


                  open func startAccelerometerUpdatesToMotionQueue(byInterval interval:TimeInterval, withHandler handler: @escaping CMAccelerometerHandler)

              Why not supporting also barometer data update rates up to every 100 milliseconds, which would already be more efficient than current configuration and within hardware limits/architecture.


              If Apple wants to increase application range of their devices and not limit the barometer usage to weather/meteorological atmospheric pressure trend, but support instant changes on pressure and therefore, even increase 3D positioning/elevation and indoor location (under difficult/weak GPS signal reception), I think consumer market and related applications are welcoming the innovation.

              • Re: CMAltimeter update interval not sufficient for sport applications
                AncientCoder Level 1 Level 1 (10 points)

                The TI SensorTag has a barometer that provides configurable update intervals, from 100ms to 2.5s in 10ms steps.  The device is BLE, costs only a few dollars ($40?), is small and rugged; plus has various other sensors e.g. temperature, humidity.  It's (relatively) easy to incorporate in iOS apps.  I used one for years for running-course altitude profile, before my phone/watch had a CoreMotion altitude function.

              • Re: CMAltimeter update interval not sufficient for sport applications
                jumbopilot Level 1 Level 1 (0 points)

                My original question remains unanswered: How to reach Apple Engineers to start a discussion?

                • Re: CMAltimeter update interval not sufficient for sport applications
                  junkpile Level 6 Level 6 (2,485 points)

                  I would argue that there's no reasonable scenario where the altitude would change enough in 1 second to measurably affect the barometric pressure. Change my mind.


                  If you're writing an app for sky divers / BASE jumpers... or anything else involving flight... I think they'd have to be certifiably insane to rely on a phone instead of a professional instrument.


                  Can't you just use the accelerometer? It should be way more accurate over short intervals anyway.

                    • Re: CMAltimeter update interval not sufficient for sport applications
                      jumbopilot Level 1 Level 1 (0 points)

                      The embedded sensors support pressure changes/sensitivity around +/- 10 cm with an acceptable resolution, especially on last generation hardware.


                      Currently, with the fixed update rate of 1s, I do observe a time lag in barometric measurements under fast elevation changes around 0,5 m/s. The measurement is therefore unprecise and delayed.


                      Increasing the data output/update rate by factor 4 (interval of 0.25 seconds compared to fixed built-in update rate) would already satisfy multiple applications with more accurate measurements.


                      Yes, the accelerometer is helpful to detect an elevation movement, but due to measurement imprecision, an integrated acceleration as speed in e.g. m/s is difficult to reliably use.