Strava Cycling Climbing Challenges

Strava is a popular service for logging bike rides and other activities, which provides a way of comparing one’s achievements with those of other cyclists and runners. Competition is a powerful stimulant and a main driver behind the success of the service. Monthly “challenges”, such as a Gran Fondo (a ride of at least 100 or 130 km, depending on the time of the year) or a monthly cumulative distance or elevation gain challenge, are particularly popular on Strava.

While I regularly participate in the Cycling Distance and Gran Fondo Challenge, I do not normally sign up for the Cycling Climbing Challenge, which is meant to encourage you do ride hilly courses. I love hilly courses. In fact, most of my weekend rides are hilly, usually going from close to sea level to over 900 m and back.

Last year I averaged one century ride (at least 160.9 km / 100 miles) about every other week, so the Gran Fondo challenge is not really that much of a challenge for me. My typical centuries are about 170-190 km with 1800-2100 m of elevation gain. Yet at 7500 to 8000 m the goal for the Cycling Climbing Challenge is set so high, I could do a hilly century ride four Saturdays in a row and still miss the climbing goal. So how do other people, who do not ride 170 km into the hills every other weekend complete the climbing challenge?

I think the Strava climbing goals are designed for people who record their rides with phones or other GPS devices that rely only on satellite data for elevation. GPS-based elevation data is much less precise than lattitude-longitude data. Other popular GPS units like the Garmin Edge 1000, Garmin Edge 520 (or my o_synce Navi2coach) use a barometer for more precise elevation tracking. The problem with GPS-based elevation is that it’s noisy, it will go up and down pretty randomly but all those little ups will be added up by Strava, resulting in a considerably inflated climbing total. If you’re using a GPS device measuring relatively accurate barometric elevation, you can’t really compete against all that noisy data 🙁

I could confirm this in group rides with other people who were using mix of equipment, where I had a chance to compare the posted stats on Strava afterwards. The iPhone or Android-app recorded totals were often 50-100% higher than the Garmin-recorded totals, for one and the same course.

Here is one random example of 4 people doing the same course up a volcano in Tenerife, Gran Canria yesterday. Note, this not my ride, I just randomly stumbled on it while looking at high scorers in the March Cycling Climbing Challenge on the Strava website. Two of these cyclists were using the Strava iPhone app, the other two were using a Garmin Edge 520:

Strava iPhone App:

Strava iPhone App:

Garmin Edge 520:

Garmin Edge 520:

As you can see, the two cyclists using the phone app posted almost double the total climbing for the course as the Garmin users, despite riding the very same roads and posting the same elevation profile for the activity (i.e. no hill repeats).

Based on evidence like that, I don’t think elevation gain competitions on Strava are happening on a level playing field! 😉

Huawei Nexus 6P Battery Upgrade

I’ve had my Huawei Nexus 6P for about two years now. The combination of a great camera, an excellent screen, good performance and decent battery life has made this my best smartphone ever.

However, a couple of months ago something happened as the battery capacity appeared to have collapsed dramatically. Sometimes the phone would shut down only 5 hours after I had disconnected it from the AC charger when I left home, starting off supposedly fully charged! I had to always carry a USB battery and cable with me to not risk losing the use of my phone in the middle of the day.

Attempts to recalibrate the capacity indicator helped only insofar as the phone would shut down at 14% charge instead of say 55% charge, so there was slightly more warning, but the number of hours was still too short. This actually seems to be a common problem with the Nexus 6P, which otherwise is still a great phone.

It’s not uncommon for Li-ion batteries to significantly lose capacity after about about three years, but if it happens after less than two years as in my case, that’s not very good. Fortunately, replacement batteries are available and any competent phone repair shop will be happy to do the necessary surgery to replace a battery that is on its way out. Unfortunately the days when you could simply pop open the phone case without any tools and swap the battery yourself are long gone. This is a trend started by Apple and almost every other phone maker has since followed suit. I think it’s meant to get people to buy a new phone sooner, which is good for Apple and its competitors, but bad for consumers and for the planet.

There are Youtube videos that will show you how you how to open the Nexus 6P case and disassemble the phone to swap the battery. This involves the use of a hairdryer or heat gun to soften the glue that holds it all together as well as a plastic card and a small screw driver. As I did not feel adventurous enough to attempt this myself, I contacted several phone repair shops here in Tokyo. Repair King Japan replied. Though they they didn’t have the Nexus 6P battery in stock they were happy to order one for me. Once they got it, I dropped the phone off and two hours later I could have it back with a new battery. So far it’s looking good: It’s been 40 hours since the last full charge (with battery saver mode inactive) and it’s still showing 64% with about 3 days of power left 🙂

UPDATE: At 72 hours, it still had 23% charge left. At that point I connected it to a charger.

Hopefully with the new battery my Nexus 6P will be a great phone again for a few more years!

Getting Rid of the EMUI Launcher on the Huawei P9 Lite

Last time I switched mobile provider here in Japan, I signed up for a contract that included a Huawei P9 Lite. My biggest grip about it is its non-standard EMUI interface that runs on top of Android 6.0.1.

Previously I was using a Nexus 5, which had worked OK for me, though the picture quality of its camera was rather mediocre. One nice thing about the Nexus 5 was that it runs stock Android, with no customization. Its user interface is identical to that of my other phone, a Nexus 6P.

I really prefer stock Android without OEM customization. For one, stock Android means you can get version upgrades sooner and for longer (or at all!).

I found the EMUI launcher confusing. For example, I did not see any easy way to launch an app that didn’t have a desktop link.

It’s possible to switch from EMUI to the standard Google launcher. Here are the steps I performed:

1) Install “Google Now Launcher” via Play Store.

2) Swipe down, select Shortcuts and then Settings

3) Enter “def” into the search box at the top (may have to scroll up first)

4) Select “Default app settings”

5) Select “Launcher” and pick “Google” instead of “Huawei Home”. Ignore the warning that tries to scare you into sticking with EMUI (you can always change back by following the same steps and selecting “Huawei Home” again).

6) There you go!

The irritating long push home button

Another irritation that seemed to happen more on the Huawei than on my other phones was the Google screen that pops up (seemingly randomly) when I just try to go to the home screen. It has a “Want answers before you ask?” prompt at the bottom and a Google search box with voice search option at the top. I really don’t need this screen because the standard Android home screen already has a Google search bar at the top. I’d rather have the home screen with all my app shortcuts come up reliably whenever I push the Home button!

It took me a while to figure out that this Google search screen comes up on what the phone thinks is a long push of the Home button, which has a different meaning from a regular short tap. If that happens, just tap again and it will go to the home screen. Or just make it your habit to double tap the home screen to go to the home screen, then this should never happen 🙂

Nexus 6P Flashing Charge Icon

Recently the USB-C quick charger that came with my Huawei Nexus 6P appeared to stop working. I normally leave the phone charging over night, but one morning I found its battery charge was low and it hadn’t been charging. When I disconnected and reconnected it to the cable (which is reversible with USB-C connectors on both ends), the lightning bolt inside the battery charge indicator kept blinking (flashing on and off), rather than being solid on as it normally would while the device is charging.

Disconnecting and reconnecting the device or unplugging and reconnecting the charger to the wall socket made no difference whatsoever. Reversing the cable direction did not help either.

My only way to still charge the phone was to use a USB-A to USB-C cable that draws power from a PC USB socket, which is a much slower way to charge the phone. So I decided that the charger must have failed after less than a year of use. I already started looking for USB-C quick chargers on Amazon (they exist but are much more pricey than USB-A chargers), but didn’t order one yet.

Today I decided to Google for the problem and found others who had the exact same issue. It turned out that simply powering down the phone and powering it up again will fix the problem: Yepp, it will charge again!

I’m not sure what the fundamental issue is, but it seems I won’t have to rush out and buy a new charger (which wouldn’t have helped anyway!), as the issue is on the phone side.

If a simple phone reboot fixes it and it doesn’t happen too often, I guess I can live with that. The Nexus 6P has worked great for me so far.

Google Maps Engine brings back custom routes

Last year I stopped updating Google Maps on my Android phone because Google had dropped important functionality with Google Maps 7.x. Google Maps 6.x for Android was a great tool for following mapped routes on long bicycle rides, especially randonnes of 200 km and more. After an update I had to revert to Google Maps 6.x to get it back. This also meant I could no longer allow Android to install all available updates in one go. I always had to manually confirm all updates except Maps to not lose 6.x again.

Finally Google has brought this functionality back. There are still missing bits, but at least the product seems usable again for my purposes.

On Android there is an app called Google Maps Engine, which supports loading custom maps. Select “Open a map” in the menu. You’ll get a list of maps created by you or shared with you.

This menu can be populated from a desktop machine. There you can import existing maps created for Maps 6.x. Go to and select “Open a map” (you need to be logged in to your Google account). Select “Classic My Maps”. You’ll be able to select one of your existing maps and import it in to Maps Engine. After that it will become available to the Google Maps Engine app on your Android and you can use it for navigation. The route will show as a blue line and special locations, such as my brevet PCs (“points de controle”, route check points) will show marked with a pin.

One drawback of Maps Engine on the Android compared to the old Google Maps 6.x is that it doesn’t seem to support displaying a ruler on a map yet. Thus when you zoom in or out you won’t be able to tell how far you are from any point you see on the map, whether one cm on the screen corresponds to 100 m or 10 km on the map. This is the same problem that Google Maps 7.x had when it was launched last year. Hopefully it will be fixed soon. Still, it is disconcerting that Google misses out such basic functionality when launching products. Are all their eyes on monetization these days?

Google does an “Apple Maps” to its own Maps

Last night Google proved to me that you don’t have to be Apple to shoot yourself in the foot with a major Maps application release.

Naturally, online maps are a big feature on mobile devices, which is why it’s important to get them right.

Not too long ago Apple ended up with egg on their faces when they introduced their own Maps application to replace Google Maps. Google has just done the same. They rolled out a completely new Maps app starting from the middle of July and yesterday it landed on my Android phone. I was just preparing for a 280 km bicycle trip and had mapped out the route to follow, which I usually use Google Maps for. Imagine my surprise when I found that following an externally mapped route file was no longer supported on the latest Google Maps app: It doesn’t support the “My Maps” feature any more. With “My Maps” you can map a route using a number of third party products and highlight key locations, such as restaurants or shops on the map and assign a name to this. Google Maps then marks these points of interest with asterisks and highlights the route with a coloured line that you can follow easily. Simple but powerful. Well, that’s how it used to be before the “upgrade”.

This is what they say on their official blog:

Finally, My Maps functionality is not supported in this release but will return to future versions of the app.

Sounds to me like they were keen to release a new version of the product, even thought it wasn’t ready yet — just like Apple. Interestingly enough, the iOS version of Google Maps didn’t have the “My Maps” feature either. So what Google has done is to dumb down its flagship product to the level of the inferior version it ships on its competitor’s operating system!

Another annoying omission was the ability to display a scale bar (ruler) illustrating distances on the map, at whatever zoom level. This option has gone. It was quite useful to be able to estimate distances on the map. Without it, I simply don’t have a clue about distances unless I’m totally familiar with the area, in which case I presumably wouldn’t be using Google Maps in the first place.

My temporary fix was to uninstall Google Maps, reverting back to the factory installed version of Google Maps. This gets Google Maps working again, but it’s not sticky. After uninstalling it, the “upgrade” (i.e. downgrade) was back again the following day. Therefore it is important to disable automatic updates in the Google Play settings. Once you do that you will have to manually confirm all updates for apps other than Maps (and you need to avoid confirming Maps updates, which will still be offered).

Other problems that caused user complaints:

  • No more offline maps – the new version only supports map viewing with a mobile data or WiFi connection
  • Removal of +/- (zoom buttons) – zooming in and out now takes two fingers
  • Fewer and less relevant local search results
  • No more green/red/yellow lines along roads to indicate congestion levels
  • Removal of Google Latitude (which I never used)

UPDATE (2013-08-16): Version 7.1.0 appears to have brought back the scale bar. However, I won’t be installing it until My Maps also comes back.

Garcinia Cambogia weight loss spam from hacked Yahoo accounts

I’m seeing another round of weight loss spam that abuses third party Yahoo accounts for sending. It is similar to the earlier “Raspberry Ultra Drops” weight loss spam that also used compromised Yahoo accounts.

Here is one of the advertised domains, which is hosted on many different servers: 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A 1439 IN A

The domain is registered through Ukrainian registrar using forged WHOIS contact details.

The buy link on that site redirects to, a domain registered last July, with the owner hidden behind a WHOIS proxy.

Other domains hosted on the same servers, some of which are part of the “Work from home mom” scam series:

The “work at home mom” scam series also used hacked Yahoo accounts for advertising websites that are made to look like network TV news sites, so these scams are probably related.

The spam senders are often abusing mail interfaces meant for mobile phones. The Yahoo message IDs of the spams contain some of these strings:


Probably “.androidMobile” is for use by the Yahoo Mail for Android app, though the spam is not necessarily sent from Android phones. More likely it is just using the servers provided for Android, but accessing from a PC.

The “BPMail” IDs are an interesting one. I suspect the “_noncarrier” variants involve IP addresses not connected to one of the phone carriers that bundle Yahoo mail with their service, while the “_carrier” variants mean the IP address is part of the provider’s address pool, though it could be used by a PC accessing via a wireless broadband modem.

“High” and “low” could be an internally assigned spam rating, though that is mere speculation. However, “.BPMail_high_noncarrier” is the most common Google hit of these 4 that comes up when searching for information about this type of spam. When investigating a pool of spam samples, this was the order of declining frequency: “.BPMail_high_noncarrier” was by far the most frequent, followed by “.BPMail_high_carrier” and finally relatively small numbers of “.BPMail_low_noncarrier” and “.BPMail_low_carrier”.

The spam recipients (common numbers: 1, 3, 9 or 10) tend to include the last addresses the legitimate owner of the Yahoo account has emailed. So perhaps the spammers are harvesting email addresses from the “Sent” folder of the Yahoo account after gaining access to it.

I find it amazing that Yahoo has yet to find a away to close the vulnerability that allows this spam and fraud to continue, despite the months and years since it was first observed.

Garmin Edge 500 with Heart Rate and Cadence

I’ve had my first week with my new Garmin Edge 500 with cadence sensor and premium heart rate monitor strap, so it’s time for a review. I bought it on Wiggle for about JPY 24,500 ($274).

Around the time I bought the Garmin Edge 500, the new Edge 510 came out. It adds a touch screen, wireless connectivity to a smartphone and various nifty new features, but is also more expensive, so I went for the existing 500.

I switched to the Garmin after more than a year and over 8,000 km of GPS logging using Android phones, mostly my Google Nexus S. Here are my first impressions (the cadence sensor in the bundled set is installed on my son’s bike for use with his 500, so it’s not part of this review):

  1. I really love being able to use a heart rate strap and it’s nice to be able to see the HR figure without having to push a button (daylight permitting). I can ride at a consistent effort level, avoiding both effort too light to build stamina and extreme effort that would lead to premature exhaustion. If money were no object, a power meter would work best (which the Garmin supports). A heart rate monitor is an inexpensive alternative that works for most cyclists wanting to improve their performance.
  2. Because of its barometric altimeter the elevation totals are much more meaningful on the Garmin than on the GPS-only phone, where they may be exaggerated by a factor of 2 to 3. Current altitude data on the Android is OK, but small variations add up too much and grades on climbs and descents may be overestimated.
  3. I love the 90 degree turn quick attach / quick release of the Garmin. It feels both secure and convenient. It is more confidence inspiring than the Minoura iH-100-S phone holder for my Android, which is generally reliable, but not 100% bulletproof. Even after using a bumper for the phone, which has improved the grip of the holder, I’ve had a few instances where on bumpy roads only the USB cable attached to the phone saved my day. I would never entrust my $300 phone to the Minoura without some kind of backup method of attachment, while I feel safe about the Garmin’s mode of attachment.
  4. Importing the rides into Strava or Garmin Connect after the ride is really easy. I just connect the Garmin to the USB cable of the PC and click “upload” on the website in the browser and the browser plugin finds the fresh tracks and uploads them. Assigning a name is marginally easier with a real keyboard than a soft keyboard on the Android Strava app. With the smartphone I could also upload rides while I’m on the road, but why do that if I’ll still add more kilometres until I get back home? That would only be a benefit on a multi day tour without laptop.
  5. One drawback of the Garmin is lack of direct Linux support. My son runs Ubuntu on his laptop, while Garmin only officially supports Microsoft Windows and Mac OS X, so he asked me to upload his activities on one of my PCs. There’s a workable solution though. When you connect the Garmin to a USB port on an Ubuntu machine, it gets mounted as a removable volume named “GARMIN”. In there is a folder called Garmin, with another folder Activities inside which contains all logged rides as .fit files. Copy those to your hard disk and then upload them manually from a browser (Strava supports .gpx, .tcx, .json, and .fit files).
  6. When leaving the house, both the Garmin and the Android take a short while to lock onto the satellites and the Android seems to have something of an edge (excuse the pun) over the Garmin, which does seem to take its time. Maybe that’s because the Android pull pull satellite position data off the web, while the Garmin can only use whatever data it captured before. In one unscientific test, I took my Android and my Garmin outside in the morning. The Android had a satellite lock in 15 seconds while the Garmin took a more leisurely 44 seconds. This is a minor issue to me compared to the next one, GPS precision.
  7. While I have seen better GPS results on some rides from the Garmin than the Android, switching from the latter to the former has not been a dramatic improvement. I think their results are still in the same class, i.e. far from perfect, especially in built-up areas. Neither is like my car GPS, which is pretty solid. Both my son and I have been riding on Strava segments in Tokyo, expecting to be ranked but found the segment didn’t show up because the plotted route was slightly off to the side, so the segment start or end didn’t match up.
  8. Having temperature data on the Garmin is nice, but not really important to me. Unlike heart rate and cadence it’s not feedback that you can use instantly in how you cycle. Your body is a temperature sensor anyway and how you dress is at least as important as the absolute temperature.
  9. The Garmin 500 battery is supposed to last “up to 18 hours”, which would cover me on everything but 300 km and longer brevets, but on any significant rides I tend to take my Android phone, which I use for Google Maps, e-mail, SMS and yes, even the occasional phone call. Using an external 8,000 mAh battery for the Android, battery life has not really been an issue. The same battery will charge either device (one at a time), provided I take both a mini and micro USB cable with me.


If my Android had an ANT+ chip or supported BTLE (BT 4.0) for using a heart rate monitor as well as a barometric altimeter, then it would still be my first choice for logging bike rides. Given the limitations of my phone and the reasonable price of the Garmin Edge 500 I am very happy with my purchase.

Android Gallery pictures are blank

I am not sure when this started to happen, but for some time I have been unable to use the Gallery app on my Google Nexus S (Android 4.0.4) phone to view my Picasa albums. It shows all the album names and how many pictures each album contains, but the pictures themselves are invisible. Each shows as a dark grey rectangle only. Only the “Camera” and “sdcard” albums (i.e. local pictures on the device) display correctly.

I tried all the fixes I could find, including these steps:
– Manage Apps, Gallery, Force Stop, Clear data
– Manage Apps, Google+, Force Stop, Clear data
– Manage Apps, Camera, Force Stop, Clear data

This didn’t do anything for me. It re-synced and showed the same blank images again.

So far the best solution has been to install the free app “Just Pictures!”. Upon connecting it to my Google identity, it initially showed only my public albums, but an article in their knowledge base explained how to add login credentials to enable it to manage private albums, too and after that I could view them all.

If anybody else figures out a way to fix the original Android Gallery problem, do let me know!

Using Sanyo Eneloop Ni-MH AA batteries to power your mobile phone

About two years ago I started using Sanyo’s rechargeable eneloop batteries. These relatively inexpensive Nickel-Metal Hydride (Ni-MH) cells are available in both AA (単3形) and AAA (単4形) sizes. They are low self-discharge cells that keep their charge for months when not in use. I’ve bought boxes of 8 cells of either type, for use in flash lights, bike blinkies, helmet lights and Bluetooth keyboards.

They are initially more expensive to buy than regular alkaline (primary) cells, but you only need to re-use them about three times before they work out much cheaper than primary cells, while you can actually recharge them hundreds of times before they start losing significant capacity.

Here are some nice gadgets that will take them, which I found sold in convenience stores here Japan.

These little cases (by take power from two or three regular alkaline AA or Ni-MH AA cells and provide a USB port for powering mobile phones and other small gadgets with a USB power cable. As you would expect, the three cell version is slightly more powerful, looking to my Google Samsung Nexus S as an AC charger (i.e. it provides more than 500 mA). For the two cell version, the phone shows “charging (USB)” as the status, i.e. it can draw up to 500 mA. The two cell version has a USB-A socket (female) for generic USB cables while the three cell version comes with an integrated micro USB (male) cable. A very similar concept has been around for a while as the MintyBoost.

The nice thing is, if you carry enough pre-charged eneloop cells with you, you can swap cells as needed and have virtually unlimited power. You could even buy primary cells to top up if desperate (one set came bundled with each device), but they would end up costing you more than re-usable eneloop cells in the long term. I’ll carry some Ni-MH cells as spares on long bike trips or hikes, which could come in handy with these little cases.

UPDATE 2012-04-04: I also tried using this adapter with alkaline (primary = non-rechargable) AA cells and it goes through them quite rapidly. Alkaline AA batteries have a notoriously poor performance in high drain applications because of their high internal resistance. You’re much better off sticking with Ni-MH batteries such as Sanyo Eneloop!

It says on the pack that a set of 3 AAs will boost the charge state of a smartphone battery by 30-40%, i.e. it would take you about 3 sets (9 cells) to fully recharge an empty battery. Or put another way, if the phone lasts 5 hours on one charge doing whatever you’re doing, you will consume a set of fresh AAs every 100 minutes to keep it topped up. To provide 500 mA at 5 V (2.5 W) on the USB connector at 80% efficiency would draw 3 W from the batteries, or 700 mA at 4.5 V (3 x 1.5 V). At that kind of load, an alkaline battery might only supply a quarter of its rated capacity, which is normally measured at a much smaller load (which is OK for alarm clocks, TV remote controls, etc. but not high powered electronics like digital cameras or smart phones).