Garmin watchface example that shows color interpolation. It uses linear RGB interpolation, but with the ability to specify a middle color to imitate HSL style colorspace. Supporting HSV / HSL directly would not be optimal for performance because of the calculations required to convert between colorspaces. Hopefully someone will find this code useful and come up with some interesting uses, e.g. changing the color of a battery icon based on charge %, progress bars, etc.
This site is useful to see how different colorspaces interpolate and finding a middle color: https://colordesigner.io/gradient-generator