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 

  • I would like them both to work at the same press of an option e.g solid or flashing 

    Unfortunately that is not possible to achieve, as Flare RT and Varia use different numbers for solid and flash light modes. Currently, you can only control Flare RT and Varia by using two data fields (Smart Bike Lights #2). For each configuration you will need to set the serial number otherwise you will get Error 3. For more details, please check the documentation: https://github.com/maca88/SmartBikeLights?tab=readme-ov-file#control-multiple-lights-of-the-same-type

  • Will I need to set the serial number of the Flare RT in smart bike lights #1

    Then set the serail number for the Varia in smart bike lights #2 

    And have x2 data field 

    Or do I just need the serial number for the Varia on smart bike lights #2 and not the Flare RT in smart bike lights #1

    Thanks

  • Will I need to set the serial number of the Flare RT in smart bike lights #1

    Then set the serail number for the Varia in smart bike lights #2 

    And have x2 data field 

    Correct, you need two data fields and each data field needs a configuration for one light with the serial number set

  • Thanks for developing this cool app. I am a bit confused by the Lights Configurator. Could you please provide the configuration for a Varia 515 and Edge 530 so that the Varia 515 only flashes when an approaching vehicle is detected? Otherwise, the Varia 515 light should remain off.

    Question: If I pair the Varia 515 directly to my phone for use on another bike where I do not use the Edge 530, will the settings from the Lights Configurator still apply?

  • Sure, here is the configuration:

    ###0,73535488::1#2,2!CAR:1:7:0:0I]-1]0!:1:0:0:0D=1##5:Varia 515!Off:0!Solid:4!Peloton:5!Day Flash:7!Night Flash:6#0::#0:0#0#0#B3121##3#0#0

    make sure that the light is in the Smart mode ("S" displayed inside the light icon). 

    If I pair the Varia 515 directly to my phone for use on another bike where I do not use the Edge 530, will the settings from the Lights Configurator still apply?

    No, the settings will not work if you are not using Edge 530 as Smart Bike Lights runs on your Edge device.

  • Hi! I have Garmin 840 and two lights - Trek/Bontrager Ion 200 RT and Flare RT. I use a quite simple and basic configuration:

    #4587520,196641::1#1,1!:1:0:0:0D=1#6291461,1409482753::1#1,1!:1:0:0:0D=1#7,6:Ion 200 RT:16777045:0!2,:-2,Off:0!1,High:1!1,Medium:2!1,Low:5!1,Day Flash:63!1,Night Flash:62#7,6:Flare RT:16711680:16777215!2,:-2,Off:0!1,Day Steady:1!1,Night Steady:5!1,Day Flash:7!1,All-Day Flash:8!1,Night Flash:63#0::#0:0#3!0,63,62:3!0,8,63#0#0#B4062#2#1#0#0

    It seems that after update 20.19 of my device I face issue with "error 3", not sure why. The "small" data fields appear only after turning on the device and I'm able to control the lights. After sweeping to the data field with all possible options I see "error 3". A return to the "small" data fields also causes "error 3". Only restart of the device restores the possibility to control the lights using small data field.

    To be sure that there are no other obstacles, I've removed Garmin's lights widget after the update. I've check the change of the configuration from my configuration to a default one (secondary, not configured) and the data field with all options appears but with those default numbers (instead of lights' names).

    @maca88, do you know where the problem is?

  • Hi,

    error 3 means that the light mode numbers do not match with the expected ones. I suspect that one or both of your lights are emitting wrong light mode numbers, which is something that can happen with Bontrager lights.
    What numbers do you see on the buttons when leaving the "Lights Configuration" app setting empty? These should be the numbers that you are suppose to see:

    ION 200: 0, 1, 2, 5, 63, 62
    Flare RT: 0, 1, 5, 7, 8, 63

    For some unknown reason, you most likely have 13 or 14 instead of 63 or 62, which triggers error 3. In order to fix the issue, you need to do a factory reset on the lights that do not have the same light mode numbers as mentioned above. To perform a factory reset, press and hold the light power button for 15 seconds (release after the second flash). You need to do it twice as the first factory reset will disable ANT/Bluetooth. This should solve the issue.

  • Hi,

    You're right, there was something wrong with the numbers for ION 200 (I omit "0" as I believe it's for "off" and I don't see it on the screen):

    ION 200: 1, 2, 5, 8, 63

    Flare RT: 1, 5, 7, 8, 63

    After a factory reset of ION 200 I see the numbers you provided.

    I didn't mention it but I tried reconnecting them (so I did a factory reset for both) before my comment - unfortunately it failed to get the app to work properly. now it works! thank you!

  • Hello maca88

    I have just installed your widget Bike Lights Control on an Edge 1030. Thanks for all the work you put into it.

    My lights are a Bontrager Ion Pro RT and a Flare RT. Things seem to work fine so far except for the default light mode the lights start in when starting a new activity.

    The Ion Pro RT starts in high beam steady while the Flare RT starts in Night Flash mode. Is there a way to set the default / start mode for both lights to Day Flash?

  • created a 1 data field data screen. loaded some basic configuration (via ConnectIQ iOS app) and it seemed to work well.
    a day later, the data screen just shows "error 1"
    Any idea what to do?