Connect IQ & Shimano STEPS

Currently loving using my Edge 1030 with a Shimano STEPS e-bike - I've actually removed the bikes built in display and exclusively use the Edge 1030 now.

What I'd really like to do now is create a custom display for the information, but some of the Shimano STEPS data is not currently available through Connect IQ (only though built in datafields) - so just posting here to say it would be great if a future version of Connect IQ could give access to the data! (Note that Shimano STEPS uses a private ANT protocol, so I don't think any of the standard ANT profiles work for reading the values if I tried it that way).

Currently look to be available in Connect IQ:
  • Speed = Toybox.Activity.getActivityInfo().currentSpeed
  • Cadence = Toybox.Activity.getActivityInfo().currentCadence
  • Rear Gear = Toybox.Activity.getActivityInfo().rearDerailleurIndex

Currently only displayed through built in datafield:
  • Assist Mode
  • eBike Battery

Currently only displayed through built in Shimano STEPS Metrics data screen:
  • Assist Percentage
  • I haven't looked into it but I thought there were public Ant+ profiles for this. Have you looked at ThisIsAnt - somewhere down in the docs they have pages showing the Ant+ specs for most profiles - ie HR, Power, Tracker, ...

    If it's Ant+, and part of the Ant+ standard, you can always role your own using the low level Ant Interface in CIQ, Ant.GenericChannel. You are responsible then for parsing all the 8 byte pages that get sent, but everything you'd need would be right there.
  • Hi ekutter, thanks for the post and suggestions!

    Yep I've had a browse around the ThisIsAnt site, in particular looking at the device profiles listed there: https://www.thisisant.com/developer/ant-plus/device-profiles/#527_tab. I believe Specialized use the LEV (Light Electric Vehicle) profile for their e-bikes, but unfortunately Shimano STEPS does not appear to - Shimano specifically state they use a private ANT+ protocol.

    So I think Garmin must have special permission and knowledge from Shimano to be reading the STEPS ANT communication. That's why I'm having to rely on Garmin adding a way for developers to access the values (which they must already be getting, in order for them to be displayed in the built-in datafields).