Musing #63: McWatchFace II for Gear Fit2/Pro

I had created and released the original McWatchFace just days after purchasing the Gear Fit2 Pro as I couldn't find a watch face that contained what I was looking for. Thus, it would be an understatement to say that I have been pleasantly surprised by the response to it since its release on the Galaxy Apps Store.

The original watch face, in its two forms, has clocked an average download of 100 per day to rack up a total of over 15000 downloads in less than 6 months. I have no idea of the number of Gear Fit2/Pro users who actively download watch faces, but I find this to be beyond expectataions.

While I haven't released anything new for months, I have been tweaking the design in the background all this time with the aim of pushing the information envelope even further. The result thus, is the McWatchFace II. The changes are pretty much evident at first glance, but the following image sums it up pretty well.

Since these incremental but time-consuming changes were made over many weekends, stealing time from other activities, I decided to put it up as a paid watch face while still retaining the original one for free. It is also an experiment to see whether a paid market for watch faces really exists or people are just content with what they get for free. This decision, unfortunately, makes the watch face unavailable on the iOS app since Samsung has not implemented any means of purchasing watch faces on iOS.

If you happen to purchase this watch face and have feedback to share, then feel free to drop a comment. For others, the watch face can be seen in action in the following video and perhaps it would tempt you to give it a whirl.


Musing #62: Deleting Facebook account


It shouldn't really be a thing, but I felt the need to mark the day I deleted my Facebook account. Seldom are people able to destroy (traces of) their (digital) life with complete knowledge of its consequences and hence this occasion warrants a mention.

Facebook has been in the news for all the wrong reasons for the past few years, but the latest hack was the last straw that broke the camel's back. I had already dialed up the privacy settings to "11" few years ago and the only reason for the account to exist was for acquaintances to get in touch. However, as I realised over the course of time, most people yearn for a wider, if irrelevant, audience.

As far as connectivity is concerned, my mobile number as well as my current email address predates Facebook by over half a decade so those who want to get in touch, still can. It is no coincidence that a lot of account deletion guides have popped up again but it would be best to refer to the one from Facebook itself. Going through the downloaded data is a trip down the memory lane but it is also an instant realisation of how much information Facebook has accumulated and retained over the years, despite using their highest privacy settings.

As a final relic, I have included the cover photo that I maintained at Facebook for nearly 3 years prior to deletion. I had no misapprehensions of what Facebook was all about but it was unfortunate to see the evil and greed quotient increase exponentially thereafter. As is the case for every decision that Facebook makes, account deletion is based on cost-benefit analysis. For me, the former far outweighed the latter. The cost may have always been invisible but the price paid definitely was not. It's time to move on to a brave new world without Facebook.

Musing #61: Adapting apps for Gear Fit2 (Pro)

While the original post was about the 2048 app, I feel it would be best to have a single post for all my adapted Gear Fit2 (Pro) apps. The original article is still present below for any guidance it may provide in installing the apps on the device. I will be listing the apps along with a screenshot and the link to download the *.wgt files. A short description has been included along with references to the original source/app.

1. 2048: Based on the latest source (Oct 2017) for 2048 posted on Github with suitable interface/colour modifications for Gear Fit2 Pro. Uploaded on Sep 11, 2018.

2. SciCal: Based on an app called 'Kalkulator' or 'Calculator Net 6' for the Gear S, I have renamed it to SciCal as it is a scientific calculator while adding a catchy icon from Wikimedia. The dimensions of all the "pages" of the calculator have been modified so that no scrolling is present. Unfortunately, the interface stays as it is due to the large amount of information involved. Uploaded on Sep 23, 2018.

Original Article (Sep 11, 2018):

It is no surprise that Samsung has artificially stifled the Gear Fit series for it to not steal the limelight from their flagship "S" series. Consequently, Galaxy Apps store submissions for the Gear Fit2 and Pro are only limited to watch faces with partners like Spotify being the only ones allowed to publish apps for the device.

This doesn't imply that the device itself is incapable of running third-party apps. Samsung provides the necessary tools to create, install and run applications for the Tizen platform as a whole and this benefits the Gear Fit2 devices as well. However, without a centralised distributor, it takes a lot more effort to get an app distributed and installed on the device.

The Gear Fit2 is capable of running web apps which are essentially websites stored on the device. Hence, for my first Tizen app, I decided to go with the sliding-block puzzle game 2048 which is freely available on GitHub under MIT license and presents an everlasting challenge, even on the wrist.

Apart from scaling the game to fit the 216x432 screen, I have made a couple of tweaks to the interface so as to optimise the experience for the device. The first is switching the colour scheme to darker colours to preserve battery life on the SAMOLED screen as against the default lighter colour scheme. The second tweak, apart from adjusting the font size and spacing, is to switch the 'New Game' option higher up and to the left to prevent accidental resetting of the game when swiping up, as has happened to me on more than a few occasions.

I have uploaded the 2048.wgt file, as installed on my Gear Fit2 Pro. This implies that the file is self-signed and hence will not install on any other device. Thus, you will have to sign it specifically for your device prior to installation. Detailed instructions on the same can be found on XDA. After self-signing, the app can be installed using the Tizen Studio SDK by connecting to the device using "sdb connect <ipaddress>" and then issuing the command "sdb install 2048.wgt". Details on that command can be found here.

So, test it out and let me know how you feel about it in the comments. You may also share the details of any other web applications that you would like to adapted for the Gear Fit2 devices.

Musing #60: PC Overclocking



Having grown up through the megahertz and subsequently the gigahertz war, I can only say that speed matters. Over the years, I fought to get the last ounce of performance out of the system that was "machinely" possible. This was the case until Sandy Bridge arrived. On one hand, it offered the most value for money in an eternity and on the other, set a trend where overclocking meant buying in to the most expensive processors and motherboards.

Hence, it was a practical decision at the time to go with the i5-3470, a processor with locked multiplier, along with a H77 chipset motherboard that was not meant to assist overclocking. It still offered the option to run all the cores at the turbo frequency of 3.6 GHz instead of the base frequency of 3.2 GHz and that is how it ran for nearly 6 years. It met every requirement I had of the system and a bit more so as to not be concerned about upgrading.

However, as is always the case, my hand was forced, like it was in the past when I upgraded to the GTX 1060. Only this time, I had no intention of upgrading the trio of processor, motherboard and RAM considering the inflated memory prices as well as with AMD's Zen 2 and Intel's 10nm processors around the corner. For the first time, I was left in a rather peculiar situation where I needed to change a component for a platform that has been discontinued for years.

Luckily, there is always the web that one can turn to. Scourging the tech forums for a desired motherboard is akin to hitting the lottery and sure enough I didn't luck out. Then, I decided to go with one of the B75 chipset motherboards that were still mysteriously available on Amazon, only to discover that they were OEM boards with a locked BIOS and lacking compatibility with my RAM. So, after I made the most of Amazon's gracious return policy, I decided to uptake the final resort and go ahead with the purchase of a used motherboard, admittedly with my fingers crossed, on AliExpress.

The shipment had its fair bit of drama over a period of 3 weeks but finally made its way through and was surprisingly well packaged. The absence of dust was a welcome sight, though the rusted socket screws immediately gave way to the fact that the board was used. All things considered, the motherboard was in good condition and thankfully the mounting bracket was included.


The board, an Asus P8Z77-V LX, opened up CPU overclocking opportunities in ages, albeit limited ones on account of my existing hardware. Overclocking can't be thought of in isolation as due consideration is needed to be given toheat. Intel's stock cooler is anything but the perfect foil for overclocking and hence I had to first stock up (pun intended) on an after-market cooler. For this, I again first turned to the used market and amazingly found an open box Deepcool Gammaxx 300 for INR 1200 ($17) as opposed to a new unit price of INR 2000 ($29). It isn't something on any ardent overclocker's wishlist but it gets the job done with its 3 heat pipes and a ginormous 120 mm fan.


To capture the difference that even a budget after-market cooler can make, I ran the stock cooler back-to-back with the Gammaxx 300 on the exposed motherboard. To check the stress temperatures, I simply bumped up the CPU multiplier over the default settings. Even in this setup, the Gammaxx 300 lowered the temperatures by over 20 degrees when under load while also ensuring a much lower idle temperature.


The bigger test however is ensuring lower temperatures in a constrained environment. In that sense, my cabinet (a generic old one at that) is not located in the most optimum position due to cabling constraints. Hence, I was expecting the temperatures to be much worst than they actually turned out to be. It also indicates that using the stock cooler was not even an option, unless you are looking for fried eggs and expensive paperweights.


Being out of the overclocking game for so long, I read up on the motherboard's features while the board was still in transit to fathom some of the newer terms and pretty much decided on a list of settings I would go around changing in my pursuit of performance with the lowest power consumption and heat generation. Thankfully, up until Ivy Bridge, Intel provided limited unlocked multipliers 4 bins above the maximum turbo frequency. This meant that my i5-3470 with a base multiplier of 32 and turbo multiplier of 36 was capable of being run at 40 multiplier. This doesn't imply that all 4 cores can simultaneously hit the 4 GHz mark as it is limited to 3.8 GHz by design. However, what it means is that it can certainly hit the magical 4G mark when one or two of the cores are loaded. I suppose there is some satisfaction in finally getting an old horse to learn new tricks.


Setting the multiplier at its maximum is easy and can even be done using the Auto or XMP overclock option. The difficult part is controlling the temperatures while also finding the limits of the RAM. To that end, I found the Load-Line Calibration to be an indispensable tool in tightening up the voltages and thereby lowering the offset. After much trial and error, I was able to set a stable CPU offset of -0.045V with the high (50%) LLC option which lowered the temperatures by a few more degrees and ensured next to no vDroop.

Running quad-channel RAM from different manufacturers is always a tricky proposition, even when the timings are the same. I had my initial CAS 9, DDR3-1600, 2 x 4 GB Corsair Vengeance teamed up with a similar GSkill RipjawsX set from 4 years later. This meant the job of overclocking the RAM was anything but easy and involved numerous failed boots. Eventually, I was able to get them to run stably at 1800 MHZ, CAS 10 with only a minor bump up in voltage to 1.53V. However, the impact on memory performance was not insignificant.

I suppose it makes sense to go all-in when you have entered the game. Hence, I decided to overclock my GPU as well. For over 2 years, I never overclocked the Zotac GTX 1060 Mini, being as it is, a single fan device. Size can be misleading though and the added CPU cooler certainly aids the overall air flow. It didn't take me long to figure out the memory isn't going to be up to the task, which is understandable considering it is not protected by a heat sink. In the end, I conservatively increased the memory clock by 100 MHz and the core clock by 200 MHz without touching the voltage.

A final tool available in pushing the clock even further is the base clock. Unfortunately, after setting up the overclock for all the other components, I found that the base clock increment to even 101 caused significant instability. Increasing the CPU and RAM voltage brought some modicum of stability but inexplicably reduced the performance across all benchmarks while simultaneously raising the temperature. Thus, there was no use pursuing this path any further.

The performance comparison presents of the overclocked system with the default one certainly provides some satisfaction. The XMP overclock is set to use the maximum CPU multiplier of 40 but it was unable to run the RAM at 1800 MHz at the same time. Going by the incredibly higher temperatures, it is obvious that the XMP overclock pushes the voltages a lot higher. The only upside here is that it is capable of running all the cores simultaneously at 4 GHz which produces a minuscule performance advantage. However, the manual settings are more than a match and come with a significant upshot in memory performance with much better thermals.


While the upshot in CPU and RAM performance is quite evident looking at the table, the GPU performance is not. As it happens, PCMark doesn't stress the GPU much whereas Hitman seems to be constrained by the CPU. Thus, the need of the hour was a GPU intensive benchmark which came in the form of Heaven. As can be seen in the results, the overclock results in an FPS improvement of over 8% compared to the stock speeds. At the same time, it makes sense to set a custom fan curve as it can keep the temperatures down under full load.


To round up the post, no overclock is worth its salt without a stress and torture test. The idle CPU temperature of 27 is pushed up to 63 by AIDA64's stress test and then stratospherically to 77 by Prime95's torture test. However, this is well within the processor's specifications and represents the worst possible scenario that normally doesn't manifest itself in the most taxing of daily use cases.


To conclude, this entire episode was brought about by an unforeseen failure in ageing hardware and hence the overclock exercise is strictly incidental, but the thrill of it as much as anyone would get when setting up a new system.

P.S.: If you followed my earlier post on Meltdown and Spectre, then you'd know it is something I thought of when buying the motherboard. Like with the ASRock boards, there was a helpful soul patching the unsupported Asus boards as well. However, when I went about flashing the BIOS, I found it to be incompatible due to the way it was packaged. Thankfully, Microsoft has fully patched Windows to support the latest microcodes from Intel (1F in the case of the i5-3470). It wasn't auto installed over Windows update and I had to manually install the KB4100347 patch for Spectre.

Musing #59: Waterproof Socks!


Soggy socks can be an arduous affair. It is a memento of the monsoon's dreariness that you are compelled to carry with you and there is certainly no escaping it in a sinking city with crumbling infrastructure. The fault of this plight lies in no way at nature's doorstep but rather on the nefariousness of human nature, but that musing is left for another day.

How ought then one waddle through the inland pools of blight resembling water without the fear of being infected? Bare foot spares the sogginess but at the risk of ending up on a hospital bed. Luckily, homo sapiens causeth and homo sapiens giveth, at a price of course.

The marvel of keeping water at bay while slaloming between potholes lies in getting oneself a pair of waterproof socks. Oh yes, they do exist! They have been lying in the burrows of e-commerce for years and it is for the needy one to dig it up, especially if you happen to be in a country where the product has no retail existence. Accordingly, yours truly got a pair, and a trekking one at that.

The proof lies in the pudding and I can only describe it as a miraculously feeling when squeaking boots are not in cohort with shrivelled skin. Of course, prior to testing them on the roads, I had my feet immersed in a tub full of water, only to be oblivious of the existence of the second state of matter. It is like being dissociated from reality, though not in the sense of nirvana.

Of course, all is not hunky-dory since there is no ignoring the weight of the additional layers and the heat build-up in the dry. This one is certainly best saved for a rainy day. Then, there is the small matter of the price and my fingers are not enough to count the number of ordinary pairs that I could have purchased in lieu of this.

On the whole, I can't state how much I appreciate the dryness brought forth by this item, as much as I abhor the same in a human being. Sometimes, it just the little experiences that make a high price seem totally worth it.

Musing #58: Mutual Fund (SIP) Portfolio Overlap Analyser



Being from a finance background, I made it a point to invest in SIPs early on. Over the years, while the investment amount has increased steadily, the number of funds being invested in has remained more or less constant. Hence, I need not emphasis how important it is to know where exactly the money is going.

Too often, the choice of a fund is made simply on returns and diversification is achieved by selecting a different fund class. However, it provides no indication of the extent of value creation. I prefer to keep an eye out on what's happening with my portfolio and it is not only when selecting a new fund but also for keeping tabs on what's going on with the existing investments.


My search for websites/files providing this information yielded a few options that were quite limited in nature, dispensing basic overlap information between two or three funds. Unable to find the requisite information, I decided to go on my own and create an Excel workbook that provides overlap analysis for up to six funds. The other target I had set for myself was to do so without the use of VBA, so the only permission required is to access the external data source - moneycontrol.com.

The workbook is structured in to distinct sheets for input and detailed analysis. The 'Input' sheet is pretty straightforward and is essentially a two-step process requiring the funds and investment amount to be entered along with the selection of the fund that would form the basis of checking the overlap. It would be a good idea to read through the notes prior to using the workbook. The sheet has some safeguards built in to alert the user about inconsistent inputs, like missing investment values/funds and failure to refresh the 'base fund' selection. At the same time, it is robust enough to still function immaculately when any of the selected funds are deleted.


Note that although the sheet includes funds with equity holdings from various classes, some of them do not have their holdings listed on moneycontrol.com which may cause an error illustrated above. As such, there is nothing that can be done about it. Also, to state the obvious, the default funds selected in the sheet are for illustration and are not suggestive.


The 'Analysis' sheet provides the primary analysis of the portfolio. Besides listing the fund class and the equity holdings of each fund, it provides the percentage overlap of the base fund with all the other funds in the portfolio, both, in terms of the number of stocks and the value invested. The charts in turn provide 'Top 10' visualisations for individual stocks as well as the different sectors.


The 'Detail' sheet provides the tabular information that form the basis of the analysis and lists all the values as against only the Top 10 in the charts.


The 'MFx' sheets list the holdings of each fund, as retrieved from moneycontrol.com and is subsequently used for the overlap calculations.


Finally, the 'List' sheet is a list of the funds retrieved from moneycontrol.com and covers the various equity fund classes. It is easy to add any new funds to the list in the specified format and the information can be scraped en masse from the MoneyControl site.

As is often the case, I have created something to primarily fulfil my needs but with the intention of sharing it with other netizens. Consequently, I am open to any suggestions for improvement which you may leave in the comments section.

Link: Download from Google Drive

Musing #56: My First Smartwatch Face (McWatchFace)


The watch face has registered an average of 100 downloads a day since it was published, despite the fact that I have not publicised it anywhere else. It is simply through discovery on the Galaxy App Store and I am humbled by its popularity.

A smart life deserves a smartwatch, or perhaps it is smarter to be without one. Setting wisdom aside, I purchased my first one earlier this week - Samsung Gear Fit2 Pro. By being 1/3rd as expensive as a WiFi-only Series 3 Apple Watch, it won my wallet, if not my heart. I will reserve judgement on the device for the review, which isn't likely to materialise until I have used it extensively.

This post, then, is about a watch face, to be precise, my first creation of it. Kudos to Samsung for making available an easy-to-use designer, utilising which I was able to create the watch face in hours and survive the royal wedding. Having not found what I was looking for, I decided to create one for myself. The focus in this case was on information density and making the most of the colours on the AMOLED display without straining the battery life excessively.


The result is a crowded watch face that includes all the details that I could wish for. Besides the inclusion of all the fitness information, the icons for weather, music, settings, calendar, step count, floors and heart rate are all tapable with the date redirecting to the 'Today' view.


I was also inclined to keep the display "always-on" and hence chose a minimalist approach for this scenario. It fulfils the purpose of telling time while making it possible to keep an eye on the ever-draining battery. As per the analysis available within the designer, the current on pixel ratio is 1.5% with the minimum being below 1%.

I will mostly publish this watch face in the Samsung Galaxy App Store in the coming week, so be on the lookout for that. On the other hand, if you have some suggestions for future watch faces, then don't hesitate to leave a comment.

(Originally published on May 19, 2018)

Update #1 (May 20, 2018): The higher than expected battery drain in the "always on" mode over the past few hours made me investigate the possibilities of reducing the power consumption while still retaining this mode. A little bit of digging brought up this article which indicates that the next best thing to black is green. Effecting this change for the "always on" mode produces the following result:


The maximum 'Current on Pixel Ratio' is now 1/3rd (there's that ratio again!) of the original one. In fact due to the usage of green, this ratio now remains more or less constant and drops to 0.4% on certain occasions. Finally, I am not open to compromising the "Active" mode too much for power saving, but I have demoted the white to "seconds" which should help a bit.


Update #2 (May 22, 2018): A few more tweaks and optimisations went in to the watch face over the past couple of days and I assume that it can't get any denser than this. With the audience of one being satisfied, I have submitted the watch face to the 'Samsung Galaxy Apps' store and hope that it makes its way through to countless others. For now, I shall leave you with a cover image.

Update #3 (May 24, 2018): The watch face has been approved and is now available on the Samsung Galaxy App store. As an homage to Boaty McBoatface, I have named it as McWatchFace, so you know how to find it.

Update #4 (June 2, 2018): v1.0.2 was published earlier this week and it introduced the option of choosing the 'Distance Unit' besides squashing some bugs. I had started off with the intent of having a single watch face but a bug in Gear Watch Designer prevented me from implementing the 12/24H toggle. Moreover, since the toggle is dependent on the phone, it might be a good idea to have separate watch faces. I might revisit this idea later but for now I suppose I could move towards experimenting with the other features available in GWD.

Update #5 (June 10, 2018): v1.0.3 ushers in animation, starting with the weather icon. I have also published a YouTube video depicting the features of the watch face, as of this version.


Yours truly has also presented own self with a 'signature edition', remarkably named 'MyWatchFace'. Unfortunately, there is no means for user customisation, so this one remains in my sole possession.


Update #6 (June 12, 2018): Samsung seems to have a really inconsistent policy. While v1.0.3 of the 12-Hour version was published without any issues, the similar 24-hour variant was rejected for not supporting Chinese and Arabic.

It would  make sense if the issue was replicable but the emulator as well as my Gear Fit2 Pro show the date just fine in all languages including Chinese and Arabic. It should be mentioned that the language on the Gear Fit2 Pro mirrors that of the phone, so testing the languages implies changing the  primary language of the phone which gets ridiculous real fast.

So, to take the ridiculousness up a notch, I have submitted the same file once again as one can't resolve an issue that doesn't exist. May be I will catch a break and the watch face will pass through as-is or otherwise some minor tweak might be in order.

Update #7 (June 14, 2018): Unsurprisingly, the watch face was published as submitted and with that I have decided to bring the development of this watch face to an end. Hopefully, I will have time further down the line to create other unique watch faces, in which case they should eventually end up at the Galaxy App Store.