Issue downloading voice model on GrapheneOS

Hey folks! Curious if anyone else has tried or experienced this. I am running the official Core Pebble app (downloaded from the Play store) on GrapheneOS on my Pixel 7. The experience has been great, with no differences from the stock version of Android except one - the app doesn’t seem to be able to download any of the speech models for local voice processing.

GrapheneOS is great, because it allows for more hardened security features/defaults, and additional privacy protections. But on occasion, these features can cause issues with how some apps behave, as they may be expecting stock Android. I suspect that may be the case here. When I try to enable local voice processing, the Pebble app does prompt me to select which model - but no matter which I choose, it just seems to give the spinning download animation without actually doing anything. The download never completes, and voice dictation remains broken until I switch back to the “fallback” cloud option.

As a troubleshooting step, I did enable Graphene’s “exploit protection compatibility mode” for the app, which disables some of Graphene’s protections and allows the app to function more like it would on stock Android, but the issue persists. I wonder if anyone else has experimented with this and found a solution? Thanks in advance!

1 Like

Unfortunately, it’s hard for us to support non-Android or iOS OSes, as much as we’d love to! The mobile app is open source, though, so if you want to dig in and understand how it works, you might be able to make some progress on figuring out why it doesn’t work with Graphene - GitHub - coredevices/mobileapp · GitHub

2 Likes

Thank you for the reply Eric! I completely understand your & the team’s priorities right now on continued successful hardware launches and mainstream OS support. Unfortunately I am not well suited for exploring code or programming, otherwise I’d love to contribute.

I really, really love the approach you are taking with opensource-ing all the software. As you’ve said many times, there are a few core reasons people love their Pebble watches:

  • Always on display with amazing battery life
  • Real, good feeling buttons which help with accessibility and ease of use
  • Good looking, fun, perhaps non-conventional hardware designs that allow personalization with aftermarket bands, vinyl stickers, etc
  • Extremely hackable and easy to develop software for. Even better now that everything is open-source.

That last bullet I think has the potential to draw more folks in to an already awesome community. There’s a growing movement of folks online who are looking to get away from many proprietary and cloud-only systems and instead bring their data and services to run at home - which offers total control over your data and greatly increased privacy. That movement is present in subreddits like /r/degoogle, /r/selfhosted, and /r/foss as well as in other forums and corners of the internet. For these folks’ every day devices, there are already great FOSS options for their OS and other software - Linux distros for workstation computing, GrapheneOS and other custom ROMs for mobile devices. But for wearables, really the only option that has any promise is Pebble - and thank god for that. I have been wearing one on my wrist for 13 years now. :slight_smile:

Again I just want to reaffirm the decision to stick to mainstream support for now. But perhaps somewhere down the line, as Core’s product launches continue to succeed and (god willing) the team grows, consider leaning even more into the FOSS/security/privacy aspects and marketing of Pebble. It’s clear even now that it’s a big part of the current philosophy, but when resources allow you to expand further, I think Pebble (and Index 01, and future products) could be “THE” brand of wearables for that growing community.

Anyway, just wanted to share those thoughts. They’ve been tumbling around in my head for a while. Thanks for reading - big fan, and wishing you and the team continued success. :slight_smile:

1 Like

Thanks for the note, Silent_Noodle! I played around with Graphene in the past and definitely had some fun installing ROMs and that kind of thing back in the day. If someone in the community wants to take it up and get it working on Graphene, we’d happily accept PRs back into /mobileapp!

2 Likes

Hi!

I have the same issue on Pixel 9 running GraphineOS. I had a similar issue when it came to getting offline transcription working with the Recorder app. Basically, I needed download separately and grant Google Speech Recognition and Synthesis network permissions temporarily for to allow the Recorder app to download the language pack. It wasn’t obvious the two things were connected. Is downloading the offline models tied to a separate app or service that needs permissions granted or maybe doesn’t come stock with GrapheneOS? If so, a fix might be super easy, barely an inconvenience.

Thanks!

1 Like

Hey,

So got this working on my phone. What I had to do was turn off my VPN and the download worked fine. For some reason the sever was blocking my VPN, though with the same VPN on the iOS app it’s fine. If you’re also using a VPN maybe give that a shot.

2 Likes

Omg, thank you so much! Same for me, I was using a wireguard always on VPN to tunnel back to my home network. When I disable it, I can download the voice models - then turn it back on and all is well. Stoked to use this feature, thanks for the tip and hope others find this thread!

1 Like

If you have any sort of filtering software, whitelist *.memfault.com. A lot of telemetry and privacy lists block it and it causes updates and voice model downloading to not function. I had it blocked in Pi-Hole and didn’t realize it and thought my watch was broken when I got it :melting_face:

1 Like