I’ve been wearing WeLoop Hey 3S smartwatch for well over a year now, and I’m still very satisfied with it, but a small problem is that it does not support the Thai language, so when I receive messages it’s just blank, or only shows the ASCII characters part of the string. There’s also no real community for this watch, so customization options are limited, and readers recommended Amazfit Bip instead.
I’ve writing about this, because one person I know looked for a smartwatch, and first wanted to get an Apple Smartwatch, but where I live it’s over one month of the minimum salary and around two to three weeks of a typical office salary. So instead I recommended the much cheaper Amazfit Bip after I was told the requirements were support for Thai language notifications, and custom watch faces in order to install a Mickey Mouse watch face, and both of which appeared feasible after a (too) quick search on the net. I was eventually tasked with accomplishing those “features upgrades” since it was “too complicated” and I’ll report my experience in this post.
Changing the Watch Face in Amazfit Bip
Since changing the watch face looked the easiest part I start with that step. Note that while I’m using an Android phone, the end user relies on an iPhone. So I’ll explain the method for both, although the Android part will have more details.
In Android the easiest part if the install AmazFaces app that works with Amazfit Cor, Pace, Stratos, Verge, and Bip watches. The app can install the watch faces directly to the more expensive model, but it works slightly differently on the Bip since we’ll need to use Xiaomi’s Mi Fit app.
We’ll first need to select the Bip model in the app and tap on connect. We can then search for a watch face, and tap on download. Once it’s done, we’ll be asked to go to Mi Fit app, more exactly in the local watch faces section. The first time I went there I did not see anything, but after waiting a few minutes, it finally appeared there.
Tap on the new watch, and then Sync watch face, and after a few seconds to one minute, you should see the new watch face on your Amazfit Bip watch.
Adding Thai Language to Amazfit Bip
Amazfit Bip smartwatch will support English and Chinese by default, but languages with accentuated characters will have issues, and languages using a completely different script will show as question marks.
There are two parts in the photo above. A name using ASCII characters with three emotions which are also rendered with question marks, and text that’s supposed to show in Thai.
The procedure to add Thai language display support is documented in Github, but it’s a bit more complicated than installing a watch face. It should not be hard for readers of CNX Software, but for non-technical people, it may be more challenging.
I’m going to assume the watch is already synchronized with Mi Fit app, and with the latest firmware installed. I also unpaired the Bip from the phone, before doing the other steps. Once it’s done we can install GadgetBridge app from F-Droid, an open source watch application that offers an alternative to closed-source Android apps. Note there’s a version of the app on Google Play, but it may not be the latest.
Now download Mili_chaohu_uni.ft font in the Android phone, open a File Manager and select “FW/App installer” option to complete the Thai font installation.
At this point, if you plan on using Mi Fit, you could uninstall Gadgetbridge, and pair the watch again with Mi Fit app, configure notifications for the app you want to use. I setup LINE, sent a simple message to the watch, and success!
The emoticons won’t show up as expected, but the Thai text “โอเคร” meaning “Okay” shows up just fine, albeit with spacing that’s a bit wide.
But Thai is a very interesting language, as vowels don’t only come up on the left and right of vowels, but also on the top and bottom, and there are tone marks that are also placed on the top of letters. Those vowels and tone marks are all defined as separate characters in fonts and are displayed incorrectly since the watch firmware does not have explicit support for the Thai language.
So the text “สวัสดีค่ะ” will show as “สว ัสด ีค ่ะ”, and it’s really hard to read even for native speakers. Most words have some kind of top/bottom vowel or tone markers, so with hindsight I may not recommend Amazfit Bip to Thai users if reading notifications from the watch is really a must. You still get notified when a message comes up, so it’s not the end of the world, but expectations need to be managed.
For accentuated Europeans languages, there’ no such issue, and instructions and font for Italian, German, Turkish, Hungarian and Vietnamese languages can be found in GizChina forums.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
4 Replies to “Customize Amazfit Bip Smartwatch – Thai Language and Mickey Mouse”
You can use my app for watchfaces : https://play.google.com/store/apps/details?id=paolo4c.amazfit.watchfaces
Glyph rendering of Thai is not that difficult if harfbuzz library fits into your embedded project. The library calculates all glyph screen positions for you. More problematic is gramatically correct text wrapping as the language does not use space characters to separate words. There are dictionaries that help with that, but they take too much memory and CPU resources to fit into embedded systems.
One workaround would be to automatically insert zero-width space (ZWSP) characters in the Android app, then text wrapping should be OK in the watch itself, and you don’t need too much complexity in the watch firmware.