Smart Bike Lights (Data Field) / Bike Lights Control (Widget)

I've made two open source CIQ applications to control ANT+ lights:

- Smart Bike Lights (data field): https://apps.garmin.com/en-US/apps/0d9fd828-c932-4470-9c37-fd2828881888 

      Configurator: https://maca88.github.io/SmartBikeLights/ 

- Bike Lights Control (widget): https://apps.garmin.com/en-US/apps/fa3c2332-76e3-4ba1-8528-32a0fd617ab1 

     Configurator: https://maca88.github.io/BikeLightsControl/ 

Smart Bike Lights features:
- Automatic light control (Smart mode) based on the configured filters (sunset, sunlight, speed, ...)
- Manual light control (only for Edge devices with a touch screen or devices with CIQ 3.2 and more than 32KB memory)
- Records lights modes that are displayed in Garmin Connect

Bike Lights Control features:
- Manual light control (available to all devices)

Both applications can be installed on the same device, which can be useful for low end devices (e.g. Edge 520) where "Bike Lights Control" can be used to change light modes manually and "Smart Bike Lights" for automatic light control.

Currently registered ANT+ lights:
- Bontrager Ion Pro RT
- Bontrager Ion 200 RT
- Bontrager Flare RT
- Garmin Varia RTL500
- Garmin Varia RTL510
- Garmin Varia RTL515
- Garmin Varia HL500
- Garmin Varia UT800

in case your ANT+ light is not on the list you can help by doing the following:

1. Install Bike Lights Control
2. Pair your bike light with your Garmin device
3. Open the widget:
- Edge with a touch screen: post which numbers are displayed on the buttons and what mode each button represents when pressed
- Other devices: Select the "Light modes" menu and post which numbers are displayed in the menu and what mode each menu item represents when selected

Example for Bontrager Ion Pro RT:


1 -> High steady beam
2 -> Medium steady beam
5 -> Low steady beam
63 -> Day flash
62 -> Night flash

There are some features that could be possible to add in the future, but would require Garmin to add them to the CIQ api. In case you are interested in any of the below features, consider upvoting their feature request thread:

1. Control lights based on the ambient light sensor available on some devices:
https://forums.garmin.com/developer/connect-iq/i/bug-reports/ambient-light-sensor-api-access 

  • Hi maca88,

    Many thanks for all your hard work on this very useful app.

    Is there a reason that the Edge 530 is not on the Bike Lights Control widget's list of Compatible Devices, and will it be possible to include it?

  • Hi,

    the support for Edge 530 was removed due to bad reviews as it is a stripped down version of Smart Bike Lights data field. As Edge 530 has CIQ 3.2, you can manually set the light modes with the “Smart Bike Lights” data field by using the data field menu. If you think that it would still make sense to include it, I can re-add it. 

  • With the newly released Smart Bike Lights version (0.16.0), the "Minimum active time in seconds" option was replaced by "Deactivation delay in seconds" and a new option "Activation delay in seconds" was added.

    The "Minimum active time" option was removed because it was unpredictable and hard to understand. The new "Deactivation delay in seconds" option, will prolong the group filter light mode for the set time. For example, if it is desired that filter group used braking should still be active for 2 seconds after braking, set value "2" for "Deactivation delay in seconds".

    "Activation delay in seconds" can be used for delaying a filter group to be activated when all filter conditions are met. For example, if someone wants to turn off the lights only after the timer was paused for 60 seconds (e.g. avoid turning off the lights while waiting for the green traffic light), set 60 for "Activation delay in seconds" option.

    NOTE:
    As the default value for the replaced filter "Minimum active time in seconds" was 1, now all filter groups created before 0.16.0, will have "Deactivation delay in seconds" set to 1 as it inherited the value. In order to restore the to previous behavior, you will need to update your configuration and either remove the value for "Deactivation delay in seconds" or set it to zero. I do apologize for the inconvenience.

  • Thank you so much for making this great widget.  Do you mind if I ask you a question?

    I've previously used my RTL510 radar with my Edge 830 and it works great (without your widget) - including automatically starting the day flash mode at beginning of ride and turning off the light at the end of the ride.

    I recently tried my Fenix 6 pro and the stock garmin code doesn't seem to turn off the light at the end of the activity.  (or I'm missing something?)

    Will using your widget on my fenix 6 give me such a feature?

  • I recently tried my Fenix 6 pro and the stock garmin code doesn't seem to turn off the light at the end of the activity.  (or I'm missing something?)

    I cannot tell for Fenix, but for my Forerunner 245 this is not possible without an IQ application. On my forerunner the light will be turned off when an indoor activity is started and be turned on when finishing it. For the Bike activity, the lights are just turned on all the time even after finishing the activity and there doesn't seem any setting for it.

    Will using your widget on my fenix 6 give me such a feature?

    The widget will not give you such feature, but the "Smart Bike Lights" data field will, as it has a smart mode where you can configure when the lights should be turned on. The configuration for turning to day flash only when the activity is recording is the following:

    1,1!:1H]0###0,73404416#1,1!:1:7:0:0D=1##4:Varia 510!Off:0!Solid:4!Day Flash:7!Night Flash:6#0::#0:0#B3290##2#0#0

    you can edit it in the Lights Configurator in case you want to add additional filters or light modes.

  • Hi - just a quick feature suggestion - is it possible to access the gradient in the API? I could be going at the same speed around pedestrians in a shared use area and when struggling up a hill with cars behind me; I'd like to be able to turn it down/off for the former up up for the latter. So being able to control based on gradient would be really useful.

  • Hi,

    thanks for the suggestion. Unfortunately, grade/slope is not accessible via API, but there is a thread that contains the code for calculating it. Based on the amount of code, I will most likely add the grade filter only for high memory (32KB+) devices.

  • Lo siento. Mi inglés no es bueno. 

    Tengo un Garmin Edge 830 y un Flare RT. 

    Esta aplicación ha estado funcionando correctamente pero ahora, con la misma configuración, dice "error 4".

    ¿Que puedo hacer? 

    Si el campo de configuración en Garmin Connect está vacío, funciona en mi Garmin, pero solo con números. 

    Esta es mi configuración. 

    Thanks

    ###6291461,1409482753#1,1|:1:0:1D=1##7,6:Flare RT|2,:-1,Off:0|1,Flash Alto:7|1,Flash Día: 8|1,Flash Noche:63|1,Fijo Día :1|1,Fijo Noche :5#0::#0:0#B3122##1#0#0

  • Como no hablo español, este mensaje fue traducido con Google Translate.
    Tiene una configuración antigua que no funciona con la versión más reciente de Connect IQ, esto debería funcionar:

    ###6291461,1409482753#1,1!:1:0:0:0D=1##7,6:Flare RT!2,:-1,Off:0!1,Flash Alto:7!1,Flash Día:8!1,Flash Noche:63!1,Fijo Día :1!1,Fijo Noche :5#0::#0:0#B3122##1#0#0

  • Hola otra vez.

    Gracias por intentar ayudarme.

    Lo siento, pero tampoco me funciona. Esta vez me sale "error 3".

    Gracias otra vez.