Blog

Bugfixes in iOS and Android

Dear Reader,

The second round of Mooshimeters started arriving at their new homes the week before last, and we’ve had some new bug reports.  We’ve just released fixes for the two most troubling ones.

iOS App Bug Fixed: Sporadic Disconnection in AC Mode

How to get the fix:

Some iOS users were reporting that the Mooshimeter would disconnect from Bluetooth after a few seconds in an AC measurement mode.  This bug has been fixed via a firmware update.  To apply the update:

  1. Restart the Mooshimeter app (I recommend force-closing it to be sure)
  2. Remove the back from the Mooshimeter you want to update (so you can reach the reset button)
  3. Scan for the Mooshimeter you want to update
  4. Press the reset button on the Mooshimeter and tap the meter in the app while the Mooshimeter is in bootloader mode (indicated by long, slow blinks)

Better automation of firmware uploading is in the works, but that requires an iOS App update and another Apple approval cycle.

Technical Details on the bug:

The iOS app was disconnecting from the Mooshimeter at random after AC mode was selected.  The same Mooshimeters worked fine from an Android device.  This led us to believe there was a bug in the iOS app itself, but that was incorrect.

It turns out the bug was an interaction between some versions of iOS and the new firmware.  The new version of firmware takes ever-so-slightly longer to process samples than the old version.  It’s just long enough that it will sometimes cause the Mooshimeter to miss a BLE connection event with the iOS device, causing the iOS device to report the meter as disconnected.  By further breaking up the math-heavy parts of processing and spreading them out over multiple connection events, we can avoid skipping connection events.

Android App Bug Fixed: New Accelerated Firmware Upload Failing on Android < 5.0

 

The other road block users encountered was trouble in upgrading the Mooshimeter firmware.  In the last Android app release, the firmware upload speed was increased dramatically (from roughly 12 minute process to 2 minute process).  However, the accelerated process seems to fail with some Android phones running older versions of Android.  We added a checkbox option to the firmware upload screen to upload using the older, slower technique.

Screenshot_2015-11-14-17-07-20

Thank you to those who reported these bugs, especially the users in the forum who posted technical details (nidlaX, Dustin A, others), good feedback is very helpful in getting these issues resolved!

~James

9 Responses to “Bugfixes in iOS and Android”

  1. katho80 November 15, 2015 at 6:01 am #

    Hi James,

    today I installed the new App V. 1.0.17 (444) on Sony Xperia Z3 Model D6603 (Android version 5.1.1 Build 23.4.A.1.232). Normal connection to my mooshimeter works, but when trying to connect to the bootloader of my mooshimeter, the app crashes (reproduceable). I just send the app crash report. Please fix.

    Best regards
    Thomas

  2. James November 15, 2015 at 5:53 pm #

    Hi Thomas,

    I found your crash report, your description helps a lot. The app determines whether the meter is in “meter” or “bootloader” mode based on a process called service discovery, where Android probes the mooshimeter to see what types of data it offers. It looks like Android is wrongly reporting that the device is in “meter” mode through the service discovery process, and then crashing when the app tries to talk to the bootloader as if it were meter firmware.

    This is a documented Android bug that the existing android app tries to work around (using the solution found on this StackOverflow post) but it appears that the workaround doesn’t cover all Android versions. I’ll try to think of another way around it, or at the very least make the failure more graceful.

    Thanks again for your help, more soon.
    ~James

  3. Peter November 17, 2015 at 11:30 pm #

    I also get reliable crashes trying to update the firmware with app v1.0.17 (444) and Android 6.0.

    • James November 18, 2015 at 2:26 pm #

      Acknowledged, I see the crash report in Google Play. Diagnosing…

  4. Wayne December 9, 2015 at 11:10 pm #

    Reading the StackOverflow post gave me an idea for a work-around for Android which worked for me. You just need to make sure the BT cache doesn’t get in the way. So here is how to do it:

    1) EXIT the Mooshimeter app.
    2) Shut off Bluetooth on the phone.
    3) Launch the Mooshimeter app.
    4) It asks to enable Bluetooth, don’t do it yet.
    5) Reset the Mooshimeter and then immediately select “ALLOW” to enable Bluetooth.
    6) Connect to the meter and it should be in firmware mode.

    • James December 10, 2015 at 11:09 am #

      Thank you Wayne!

  5. katho80 December 11, 2015 at 2:46 pm #

    Hello Wayne,

    thank you very much, that trick worked for me, too.

  6. Shawn R December 24, 2015 at 10:46 am #

    Hi, My Mooshimeter is stuck in firmware mode. I can’t get it back to meter mode. I’ve loaded the new firmware about half a dozen times now and cleared my Bluetooth cache. I am running Android 4.4.4 on an XT1080. Firmware Ver.: 1 Build: 1447458797

    Is there a fix for this?

    Also, I didn’t have to do anything like reset it to intitially load the firmware. That option was available immediately after upgrading the APK.

  7. Shawn R December 24, 2015 at 11:05 am #

    I just saw James’ fix by replacing the batteries. I got my meter in January and my batteries are already at .9vdc. I replaced them and all is well.

Leave a Reply to James Click here to cancel reply.