Site menu:

Cyclocross For Roadies: How and Why to Get Started - Buy Now!

Site search


More ANT+ USB Key Options

Two years ago, I wrote a posted titled “Why You Need a ANT+ USB Key,” which has been one of my more popular posts. If you train indoors at all, I recommend you give it a read, and see how this little gizmo will make riding inside much more effective and, dare I say, fun!

Since the time of my original post, there have been a few changes in the market, with more options now available.  The ‘standard’ is still a Garmin unit, but they now make a smaller, more compact version than they did in 2013. It’s similar to, but more readily available than the more expensive Suunto Movestick Mini I mentioned in the last post, in that it doesn’t stick out as far, and thus has a much lower chance of getting broken off or pulled out by mistake. This makes the updated Garmin my recommended buy at this point if that’s an issue to you.

Garmin USB ANT+ Stick

Garmin USB ANT+ Stick

For those not wanting to spend quite as much, there’s also a cheaper version now available on Amazon. It’s called the Docooler USB ANT+ Stick, and costs only $15! It’s the ‘larger size’ (like a USB Thumbdrive, or the older style Garmin) which means it’s more prone to getting bumped or broken, but at the price, it may be worth a shot! Reviews are limited, but mostly good, with only a couple reports of driver issues. In theory,  ANT+ should always work with ANT+ (it’s a standard), so this should work in any application where the other sticks work. I think if I break or lose my Garmin stick, I’ll be getting one of these. Why spend more? This makes the Docooler USB ANT Stick my current recommendation!

Docooler USB ANT Stick

Docooler USB ANT Stick

Dissolve Shapefiles using OGR

Quite often, I’ll run across a large or complex shapefile that causes issues (crashing, very poor performance, etc) in QGIS or other desktop GIS.

However, sometimes you have to find a way to deal with these files, and not spend a lot of time worrying about them. Often, the best way is to head back to the mysterious black box that is the command line, and use the ultra-stable suite of tools available there. My favourite for spatial work is GDAL/OGR

I was recently struggling to do a simple dissolve on a large and complex shapefile. I didn’t want to bring it into a database, but QGIS would crash trying to dissolve the shapefile. Of course, OGR had no problem with the file!

Here’s how to turn this (nine features with three different attributes):

Input to dissolve - 3 attributes

Input to dissolve – 3 attributes

Into this (three attributes, three multi-part features!):

Dissolved shapes

Dissolved shapes

Simply use this command (substituting your file names and field names as appropriate) into ogr, and you’re all set!

ogr2ogr outputfile.shp inputfile.shp -dialect sqlite -sql “SELECT dissolvefield,ST_Union(geometry) as geometry FROM inputfile GROUP BY dissolvefield”


Recording Power from CycleOps 300 Pro Indoor Bikes

I recently started an indoor cycling program at a studio that uses the CycleOps 300 Pro Indoor Cycles.

CycleOps 300 Pro Indoor Cycle

CycleOps 300 Pro Indoor Cycle

These bikes have a built in power meter, which is fantastic for training. However, they don’t use a ‘standard’ ANT+ protocol to transmit the data. They in fact use a ‘subset’ of the ANT+ frequency, that only CycleOps products can detect. This limits you to using the Joule line of head units. Unfortunately, this means that the bikes will not transmit a power and cadence value that you can pick up on a Garmin or other much more common head unit. Don’t get me started on how annoying this is, and how shitty of a business model it is to advertise your product as ANT+ when in fact it is not compatible with other ANT+ products…

However, being annoyed led me to do some research. Thinking that there had to be a way, I scoured the internet. I found one reference on the Cyclops Virtual Training website that listed the IC300 bikes as compatible with their VirtualTraining Android and iOS Apps. I emailed their tech support, who first said told me that the bikes are compatible with any ANT+ device (they are not). When I pressed them for confirmation, they retracted that statement, saying:

‘Sorry.  That generation of bikes were designed well before the explosion on handlebar mounted technology.’

Riiight. And yet you still advertise them as ANT+ compatible? I should note here that the newer CycleOps “Phantom” line of bikes claim to actually be fully ANT+ compliant, so this applies only to the older bikes (IC 300 and IC 400).

However, by this point I had already ordered a USB OTG (On The Go) Adapter cable for my phone (you can get them very inexpensively) in the faint hope that the VirtualTraining app might work. It arrived the day after my next class (of course!) so I had to wait until last night to test it out. I plugged my trusty USB ANT+ Key (see my post about why you need one here!) into the OTG cable, and plugged that into my phone. Using the VirtualTraining app (Android, iOS) I was able to start a “Free Ride” session, and connect to the bike to get cadence and power! Awesome!

USB OTG Adapter Cable

USB OTG Adapter Cable

I  should note that I also tried the IpBike app to see if the “only compatible with CycleOps products” statement held true. It does appear to be true, as IpBike did not recognize any devices. CycleOps must have done something special in their software to pick up the frequency that others do not since the ANT+ key itself seems to have no problem seeing it, thus ruling out the hardware as the issue. Very odd.

So! It is entirely possible to record the data from a CycleOps 300 Pro bike without using a Joule head unit. It can be done fairly inexpensively.. However,  having said all of this, there are a couple of issues:

  1. You will need a phone that is capable of USB OTG. See how you can determine if your phone is compatible here.
  2. You’ll have to install the ANT Radio Service and ANT USB Service apps from the Play Store (not sure how this works on iOS, but it may not be necessary)
  3. The VirtualTraining app is not free. It costs $6 per month after the initial 14 day trial period–which of course just ran out for me :(
  4. The VirtualTraining app, quite frankly, kind of sucks:
    • It’s very hard to connect to a specific device (which is an issue in a studio environment with multiple bikes) – it appears you have to just keep doing consecutive ‘searches’ for devices, and it will pick one up randomly. Another search may or may not yield a different device, while a third search may turn up a different one, or one of the original two again. I think I had to do about 10-15 searches for it to pick up the bike I was on. It would be ideal if you could manually type in a known ID, and have it just connect to that sensor, but I found no way of doing that.
    • I couldn’t get it to connect to my ANT+ heart rate monitor at all. I’ll have to try that at home when there are less other devices present to confuse it. Again, the ability to manually enter an ID would likely solve this issue.
    • The app interface is junk. The button to ‘stop’ a ride is not obvious (a little x in the corner that to me looks like it should delete something, making me hesitant to push it,) and the app itself just behaves in non-intuitive ways
  5. Saris/CycleOps clearly doesn’t care to play by standards. This makes me really not want to pay them for their app, as that reinforces their decision to make ‘vendor specific’ products, then charge for them in a world where everyone else is moving towards completely open protocols. I’m going to decide before next Tuesday if a month of data recording is worth $6 to me.

Video Player Blank in Golden Cheetah?

Are you trying to get the “Train” view of Golden Cheetah set up so you can suffer all winter, but the Video Player is not working? Well yesterday I decided to set up Train View, and experienced exactly this problem.

I opened up Golden Cheetah on a new Windows 8 laptop (that I have yet to run Train view on), and noticed that the default Train View setup doesn’t include the Video Player ’tile.’ I easily added the Video Player to the layout by going to the View Menu > Add Chart > Video Player.

Add Video Player to Train View

Add Video Player to Train View

I then started a workout, and although the sensors were all properly detected, recording, and the .erg file was working properly and showing target wattage, the video was not playing. The “Video Player” tile was just a black box. Weird!

I did a search of the Golden Cheetah website, and the user group, and didn’t find much info. However, one post in the user group mentioned trying to open the video in VLC Media Player to see if the video works. I normally have VLC installed, but apparently I had yet to install it on this new laptop.  It turns out that VLC is required for Golden Cheetah to play videos. I installed it, and right away everything worked perfectly!

Train View with working video!

Train View with working video!

Note that I used the very useful Sufferfest ERG Spreadsheet to create an .erg file for the video — it works with all of the Sufferfest videos, and makes them much more useful! The spreadsheet allows you to correlate what’s happening in the video with target power zones based on your personal FTP.  That’s what is driving the “Target Power’ and blue graph you see above. Also, if you have a CompuTrainer or Wahoo Kickr, Golden Cheetah will control the resistance based on this file as well. Sadly, my workout was terrible. I couldn’t reach any of the target power zones (despite setting my FTP to a ‘lower’ estimate than it should be) and my heart rate was sky high the entire time. Bizarre, but an issue for another day!

Review: Kali Phenom Helmet – aka Why to never buy a Kali Protectives Product

About this time last year, I was looking for a new road helmet. I did some research, and decided I wanted to get something that had some more ‘advanced’ protection than the usual helmets. However, I also wanted it to look like a normal road helmet. At that time, MIPS was really not available in a road helmet. However, my research lead me to discover Conehead Technology, which uses an advanced foam construction, shaped with cones and using dual-density foam to provide greater protection. I really liked the idea and the research seemed sound, so I began looking for helmets using the technology. Kali Protectives and SCOTT are the only two authorized users of the technology, and SCOTT (at that time) did not make a road helmet. I also closely investigated the POC Octal; although it doesn’t use Conehead Technology, it has increased coverage and protection and is safer than other helmets.

Kali Phenom

Kali Phenom

I was able to find a POC Octal to try on at a local shop, and despite it being very comfortable and light, I balked a bit at the cost… quite a bit more than I was hoping to spend, and the look, which–despite being popularized by Team Garmin, didn’t really do it for me! So I did some more research, and decided that it was worth the trouble to track down a Phenom from Kali Protectives.

Let me put this out there: they are very difficult to find in Canada. I emailed a bunch of shops that dealt with the distributor, and they either a) didn’t deal with Kali any more, b) didn’t have/couldn’t get a Phenom, or c) would have to special order and then ship to me. I then looked at the typical online stores, and only Art’s Cyclery seemed to have them in stock. Unfortunately, at that time, they only had black, and I wanted white. I then turned to Amazon, where I found a US dealer that would ship to Canada (most will not!) I ordered one for myself. My helmet arrived in time for spring riding.

My first impressions of the helmet were…just OK. It was nice and light, so that was a major plus. When I put the helmet on, wow! It fit me VERY WELL. The retention system comes very far down along the ears/side of the head compared to most helmets, but it allowed for the helmet to lock down rock solid. It didn’t move around at all on my head, and felt very solid. Awesome! On the first ride with the helmet, I noticed that it sits very low on the head, and actually becomes visible in the peripheral vision while riding. This is a bit of a ‘different’ sensation at first, but something I quickly blocked out and it didn’t become an issue.

By this point, Krystelle had tried on my helmet, and liked it so well (it also fit her perfectly!) that I ordered another one for her–this time from the only other vendor I could find that would ship to Canada. It also arrived in time for the start of her riding season; thus we both started 2014 with new Kali Phenom’s on our heads. I vowed to take good care of this helmet, as it was quite expensive, and I was putting more thought to protecting my brain. As such, I bought a helmet pod to transport the helmet, and was extremely careful with the helmet any time it wasn’t on my head to avoid any impacts, bumps, scrapes, etc. I wanted the helmet to be in perfect shape should it unfortunately be called into service to do its job of saving my brain.

So overall, my first impressions of the Kali Phenom were pretty good. However, there were some issues. Firstly, the helmet is advertised (even on the Kali website) to come with an ‘Included Aero/Winter cover’ – mine did not come with one. I wrote to the seller, who agreed to give me a bit of a refund to make up for it, but it was still a bit disappointing. I expected that when I ordered Krystelle’s helmet, it would come with said cover, and I could just use that one. Unfortunately, her helmet also did not come with an Aero/Winter cover. I suspect this cover does not exist (see below for more on this), and no Kali ever shipped has come with one. Please correct me if I’m wrong! This was not a deal breaker for me though, as it was only a ‘nice to have’ anyway–I would have only worn it on those rare cold and wet rides that I do maybe once or twice a year.

Some other, potentially more important issues, did exist though. Firstly, the overall construction of the helmet looked a bit ‘rough’ compared to the Giro helmets I’ve had in the past, and other high-end helmets I’ve tried on or inspected in stores. The foam was not nicely finished (rough along the edges, etc.) and it had a bit of a ‘cheap’ look to it. I attributed this to the different method that Kali has to use to mold in the ConeHead technology, and figured it was worth the tradeoff for the additional safety.

The other thing I noticed is that the straps were a bit thicker, stiffer, and heavier than high end helmets from other manufacturers. Not a big deal, and, as I mentioned above, the overall fit and feel of the helmet was very comfortable, so it didn’t really cause an issue so much as give the impression of a helmet bought in the late 90’s.

One other item that gave a poor impression was that the logo stickers were very cheap looking, and just kind of slapped on to the outside of the helmet, rather than nice printed logos like most helmets have. I suppose that’s good if you want to take them off, and probably looks OK from a distance, but from up close, it contributes to the ‘cheap’ feel of the helmet.

I must say though, that after all of this, I was still overall a believer in the helmet. It fit me fantastically, was nice and light, and (in theory at least) provided more brain protection than other helmets available. All good things!  As such, I rode the helmet for most of the 2014 season (until about September,) putting in about 5000km while wearing it. Until one day, I was putting the helmet on before a ride, and it felt…kinda loose. Thinking that perhaps the adjustment dial got shifted or something, I took it off my head, and noticed that the retention system had actually snapped in two, leaving it broken and dangling. What the hell? This was a ~6 month old helmet, with only 5000km of use, that had been babied and carried in a helmet pod for transport. How could this happen, and when did it happen without me even noticing? Did it break while on my head on the previous ride? While I was taking it off? Or while it was stored between rides? All of those situations should be unacceptable for a piece of safety gear! Luckily, I still had an older Giro that was in good shape, so was able to wear it for the remainder of 2014. Below are some pictures of the break in the retention system. You’ll also see the foam, straps and stickers in the images below.

helmet1 helmet2 helmet3 helmet4 helmet5

Broken retention system. Also note tacky stickers!

Broken retention system. Also note tacky stickers and rough construction of the foam portion.

Here is where things get messy. I still liked the Phenom, and, expecting the breakage to be a bit of a fluke, was willing to give them another shot. I did a quick search of their website for any warranty information. I found… nothing. Nothing at all about warranty on the website of a helmet manufacturer. Hmm.. not good! Finding nothing online, I took some photos of the break (those shown above,) and emailed Kali, asking about their warranty. Here’s the chain of emails:

Oct 24, 2014
From: Darren
To: Kali Protectives
Hi, I recently purchased two Phenom helmets (one for myself in May 2014, and one for my girlfriend in mid-June 2014.) I was quiet pleased with my helmet until it failed in early October, 2014. The failure has rendered the helmet unusable. Please see attached pictures of the failure in the retention system.I babied this helmet–it’s had only 5000km of on-road use, has never been dropped, and has been transported in a helmet pod when not on my head.  In my opinion, this is an unacceptable failure for a helmet, and very disappointing considering the trouble I went to to obtain these helmets in Canada, not to mention the cost.
On an unrelated but frustrating sidenote, both your own website and the two websites I purchased the helmets from list “included aero/winter cover’ as a feature of the Phenom. Neither of my helmets came with an aero cover (only the mesh bug liner–which is most certainly neither a cover, nor aero).

I see nothing on your website about warranty, but I’m sure you have some protocol to deal with these situations?

The reply, a very fair three days later:
Oct 27, 2014:
From: Steve Hays Territory Manager, California – Kali Protectives
To: Darren
Hi Darren.  Thanks for contacting Kali Protectives again. (note: I had contacted them earlier regarding Canadian dealers and availability)  That just looks like the retention system broke.  No problem.  Please send me your email address, and I can get you taken care of.
Huh.. not the type of response I was expecting. Firstly (and to go with my point way up near the top) – no response at all to the inquiry about the aero/winter cover. Why ignore that question? Perhaps because the cover doesn’t exist! At the very least, ignore me, but quietly change your marketing material to not mention the non-existent cover!  Secondly, and more importantly… ‘it looks like it just broke’ – as if that’s NO BIG DEAL in a HELMET.  A HELMET which has one purpose in life–to save your head! A completely unexplained, critical failure to the retention system in a new model in your product line should perhaps deserve a more detailed response. Perhaps “we’ve never seen that before–please send it in for testing” or “We have noticed similar problems, and are addressing them by doing XYZ” or.. anything other than ‘yup, that’s a failure.’ ‘That just looks like the retention system broke’ is not a comfort-inducing response from a manufacturer! Honestly, it makes it sound like an everyday occurrence, which is really not what I want in a helmet!   Also, Steve…you’re already emailing with me, so clearly you have my email address…hence my reply that same day (in retrospect, not as thorough of a reply as I should have sent):
Oct. 27, 2014
From: Darren
To: Steve Hays
Hi Steve,I assume you mean mailing address?  I’m at:
Darren Cope
At this point, I’m hoping that they just send me a new helmet (and still holding out a tiny sliver of hope that it would come with an aero cover). Then.. nothing….
Dec.1, 2014

From: Darren To: Steve Hays

Hi Steve,

Haven’t heard anything from you recently. How will you be taking care of this?

Brutal… but finally, a response!
Dec. 2, 2014
From: Steve Hays
To: Darren
Darren – Since you are in Canada, I can give you the contact point of the distributor in Canada.  It’s Passion Sports.  They do all distribution in Canada.
Huh.. so.. I assume that means that Passion Sports will deal with the warranty claim, and send me a new helmet. I mean.. what else could that mean? And I get it that Steve is a busy guy (?) and couldn’t, you know, just CC Passion Sports on the email and request them to deal with it. Or you know, at least provide a name, or a website, or an email address…. or something! But no. I had to Google them, find them (not the first hit, at–that would be too logical. It’s the gang over at I’m looking for…) and email their generic stupid ‘’ address.  Thinking that these guys will be cool, I take the friendly tone (the previous emails are all in a chain below this one so that Passion Sports can see the history and context):
Dec 2, 2014
From: Darren
Hi there Passion Sports!As per below, I’m trying to get a replacement for a broken Kali Phenom. Steve at Kali said you could help me out!


And again… nothing. Queue next round of emails, this time CC’ing Steve at Kali, so he knows the Canadian distributor is dropping the ball, and that I’m still out a helmet.
Dec 31, 2014
From: Darren
CC: Steve Hays at Kali
Dear Passion Sports,

As per the below chain of emails, I have a warranty issue with a Phenom helmet. Steve Hays at Kali told me that, as you’re the Canadian distributor, you’d take care of things for me. I have not heard from you in a month, and am concerned that Kali‘s warranty support is non-existent. Please let me know how this issue will be rectified.

Note that this is for the helmet with Serial No: 2014/02 000150

Thank you,

And so here we are. It’s now Jan. 13, 2015, and there has been no response or resolution to any of these emails. I have a broken helmet, that was used for one summer. The company is unresponsive and unable to answer questions about their product, and advertise features that don’t exist.  What do you think? Would you buy a Kali product? Should Krystelle even keep using hers, or it it unsafe? What do I do if I ever do get a replacement? Wear it? Or be scared of it? Can we trust Kali’s safety if their response to a critical failure is ‘it looks like it broke’?  That seems unacceptable to me!

In the year that this has transpired, Kali has lost their advantage in the ‘higher protection’ helmet market. The POC Octal is still around, and its ‘look’ is much more accepted than it was before, while the price has dropped a bit. Smith and Giro both have road helmets with MIPS (Smith with the Overtake, and Giro with the Savant MIPS) It seems like perhaps Kali is no longer a contender, and quite frankly, maybe it shouldn’t be.


This post was originally published on Jan 13, 2015. As usual, I tweet and link to new blogs posts from Facebook, Google+, etc. I did the same with this post, and the same day I had a reply to my tweet from @KaliProtectives, saying:

Hey Darren, we just read through your review. Could you DM me us email and we will get you sorted (for real this time)!

Interesting. Public bashing seems to be the best way to get a response!  I responded the next day, via DM:

Kali; You’ve already got my email, right? But just in case, it’s ****@***** Would love some explanations…

Again, the same day, this reply from Saris Mercanti at Kali:

Hi Darren,

My name is Saris and I’m the marketing coordinator at Kali Protectives. I read your review yesterday and am very disappointed you had such a crummy customer service experience. Due to the way we have our distribution setup, we are not supposed to send product to Canada from our US office, but I want to make sure we get you (or any of our customers) properly taken care of.
Could you please let me know what size helmets you ordered? The Aero/Winter covers are size specific. I have your address from your email chain with Steve Hays, and will get covers and a new retention system shipped right away.
Regarding your issue with the broken retention device, we have seen it before – but it is not common. We’ve warrantied roughly one retention system for every thousand of those helmets sold.
If you have any further questions about our technology, please feel free to call the office at 888-Pro-Kali and ask for me.
– Sincerely,
Good! Someone with authority to do something! I’m not sure what the ‘normal’ failure rate is for safety gear like helmets, but 1 in 1000 seems…not ideal to me. However, at least it’s a response to the question. And it sounds like Saris is going to make things right, so, there’s that! My response, also on the 14th:
Hi Saris,

The helmets I ordered were both Small/Medium sized Phenoms.  I appreciate you sending me the covers, but am still curious why the covers were not included with either of the helmets I ordered?

As for the retention system; I assume if you are sending me just that piece that it’s replaceable? Is it easy to do? Do I need any specific instructions?


And finally an explanation re: aero covers. Weird that it took so much questioning…

HI Darren,

The helmets you received were from the first batch of helmets produced, which were shipped from our overseas factory without the helmet covers included. This issue was not discovered until some helmets had been delivered to distributors, who may not have verified that their inventory was affected. We have not (note: I’m assuming this is an unfortunate typo, and Saris meant to say “now”)  added an additional quality check at our warehouse, to verify that every helmet that ships now includes all of the listed components.
The retention system is very easy to replace. You just need to pull the old one out, and the new one will snap right into place.
– Sincerely,
Interesting. I suppose it would be difficult to later distribute the aero covers to everyone who purchased a helmet; but it’s definitely something that should have been caught before it even got to that point. To me, that sounds like a lot of folks got missed and will likely never have an aero cover.
Then, on the 25th of January, this shows up for me:
Handwritten letter

Handwritten letter

Two replacement retention systems. Two aero/winter covers (they do exist!) and a brand new Kali Maraka helmet in red and white!KaliDelivery

I responded:


I received your package today. Thank you kindly for addressing my issues re: the aero covers and retention systems. The inclusion of a Maraka ‘on the house’ was unexpected! Thank you!  I’ll be sure to update my website with this latest experience.



So, I’ve replaced the retention system on my Phenom, and have a backup in case of another failure (hopefully unlikely) and an aero shell for both Phenoms we own now. The addition of the Maraka was unexpected (and unnecessary!)  I’ve resumed use of my Phenom, and the winter cover has come in handy on some of our recent cold Snirt (snow covered dirt) road rides this spring. I will certainly continue using the Phenom until it’s old, and I think I’ll use the Maraka as my ‘around town’ helmet.

I’ll leave it up to the reader to decide what to think here–clearly some things were dealt with poorly initially; however, is the follow up enough to rectify that? I’m still unsure personally, but will be using the helmet in the meantime!

Bookshelf 2.0 developed by