Denis Rovinskiy


kn. 2.0, 2024

Interactive knot light and sound object
LED rope light, modified bells, motors, acrylic box, circuit board, RGB color sensor, electronics
aprx. 10" x 10" x 10"
kn. 2.0 is the second iteration of kn., *new and improved*. The main differences are under the hood:
- Circuit board has been upgraded to M4, to allow for more memory to run lighting effects that were not possible on the previous prototyping board.
- I took advantage of the possibility to use Adafruit animations for LED rope light and created a different one for each of the colors. As the wavelength frequency increases from red to purple so does the speed of the lighting effect.
- Now after a color is detected instead of just displaying a solid color, an animation in that color stays on.
- Added a rainbow comet to be the default light animation before the color is sensed, after the initial intro sequence.
- The most important improvement over the original prototype was the color sensor code. The original kn. used RGB values and was only successful in detecting the primary colors. Switch to HSL system (Hue, Saturation, Lightness) was a game-changer. RGB values of the color sensor were transcoded to the HSL values and that allowed for a much more reliable recognition of color. kn. 2.0 makes a lot less mistakes and does not confuse colors of a different spectrum like the original prototype did.
- Tolerance introduction to improve color detection, specifically not to detect color when none is presented, such as 'phantom' color detection from the ambient lighting conditions. Set s > .6 and sensor.gain = 16 and it really improved performance.
- 3D-printed triangle support pillars for the second level of acrylic box placed in 4 corners for stability.
Ongoing issues and future development:
- HSL color sensor code is much more stable and reliable. However, the color sensing in general appears to be a complicated technology, with light itself affecting the color sensing. Color temperature of the light can trigger the sensor to detect a color, warm light or low light triggers yellow or orange, while day light bulbs make it sense blues. The code's tolerances need to be adjusted depending on the lighting in the location of kn. for it to sense the colors reliably. The remaining issue is that even in the same location, changes in light, such as day/ night can make kn.'s color detection problematic.
- Expand code to include black and white as detectable colors, which is very complicated in HSL, but could be used to introduce ‘wild card’ effects in addition to color modes.
- Research and fine-tune the HSL color range code for detection of specific colors and noise filter for the ambient light, possibly introducing new ways to filter out unwanted interferences.