An non-official advanced controller for blinkstick
A package to ease the control of the blinkstick nano
Source code is at https://github.com/weshouman/advanced_led_control
Save this example as
test.py then run it as in the Usage section below
import advanced_led_control.models.colors as c from advanced_led_control.models.leds import * from advanced_led_control.models.ValueIndication import * from advanced_led_control.models.Indicator import * from advanced_led_control.models.Procedure import * def indic1_func(): # Indication values are best shown between 1 and 10 value_indication = ValueIndication(c.RED, 10) return value_indication def indic2_func(): value_indication = ValueIndication(c.BLUE, NO_FLICKER) return value_indication indic1 = Indicator(m_col=c.GREEN, func=indic1_func, i_time=4) indic2 = Indicator(m_col=c.GREEN, func=indic2_func, i_time=4) stick = blinkstick.find_first() procedure = Procedure(stick=stick, mode_led=LED_2, quiet=10, sync_duration=10) # Append all indicators to be run procedure.indicators.append(indic1) procedure.indicators.append(indic2) # Run the specified procedure procedure.run()
This utility needs
sudo to execute, as required by the
If you are using a virtualenv, run
virtualenv -p python3 venv pip install advanced-led-control source venv/bin/activate # Follow this [answer](https://stackoverflow.com/a/50335946/2730737) for why we need to use fully qualified path with sudo sudo venv/bin/python test.py
m_col: the indication mode color, based on any of the color types defined below
func: a callback that will be called to evaluate the color and flickering for the value led.
brightness: a value in range [0, 1] that gets multiplied by both the mode and value indication.
i_time: indication time, is how much time is allocated for this mode.
color: the indication value color, based on any of the color types defined below
NOTE: CSS names don't work with flickering, follow this report
flickering: an integer that shows the speed of flickering of this color, the higher the value the faster the flickering. Recommended Values are in range [1, 20]. Use
1001to set the led on without flickering.
An indication color is either one of the 3 types
RGB: a list of 3 vals in RGB ie. [0, 10, 0].
HEX: a string ie. '#00ffff'.
- ```CSS_NAME````: a string ie. 'aliceblue'.
mode_led: Choose between
LED_1isn't supported as the blinkstick doesn't allow flickering the second led while the first is set constantly.
Follow this report.
quiet: A percentage to be taken from the indication time for the stick to shutdown.
quiet=0will disable this feature, and force all the indications to run consecutively.
quiet=100is useless, as it will take all the indication time as a break!
sync_duration: Allows starting the procedure at a specific second, as this package is made to run for multiple machines/RPis that are working separately, and to avoid using communication to control the led, we allow sync based on real time.
sync_durationof at least 1.2 total indication time to count for the delay the pulses make, and if it's less than the total indication time, it will be almost useless.
sync_duration=0to disable this feature.
sync_durationto say 8 will start at every eighth second, In example, [0, 8, 16, 24, 32 ...]
- This project was inspired by the Pi Dramble
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size advanced_led_control-0.3.0-py3-none-any.whl (12.9 kB)||File type Wheel||Python version py3||Upload date||Hashes View hashes|
|Filename, size advanced-led-control-0.3.0.tar.gz (9.3 kB)||File type Source||Python version None||Upload date||Hashes View hashes|
Hashes for advanced_led_control-0.3.0-py3-none-any.whl
Hashes for advanced-led-control-0.3.0.tar.gz