Difference between revisions of "Starburst"
(some more text on calculation) |
m |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 7: | Line 7: | ||
|ECMD=no | |ECMD=no | ||
|DEPENDS=[[DMX Storage]] [[PCA9685]] | |DEPENDS=[[DMX Storage]] [[PCA9685]] | ||
− | |REQUIRES= a [http://www.nxp.com/products/ | + | |REQUIRES= a [http://www.nxp.com/products/lighting_driver_and_controller_ics/i2c_led_display_control/series/PCA9685.html PCA9685]on the i2c bus |
|CODE=[https://github.com/ethersex/ethersex/tree/master/services/starburst https://github.com/ethersex/ethersex/tree/master/services/starburst] | |CODE=[https://github.com/ethersex/ethersex/tree/master/services/starburst https://github.com/ethersex/ethersex/tree/master/services/starburst] | ||
}} | }} | ||
+ | [[File:Pca9685pw-pcb.JPG|right|thumb|400px| A PCA9685PW (TSSOP-28 Package) soldered onto a breakout board]] | ||
− | Starburst uses the DMX data stored in [[DMX Storage]] and transmits it using [[I2C]] to a [http://www.nxp.com/products/ | + | Starburst uses the DMX data stored in [[DMX Storage]] and transmits it using [[I2C]] to a [http://www.nxp.com/products/lighting_driver_and_controller_ics/i2c_led_display_control/series/PCA9685.html PCA9685] PWM controller. The PCA9685 is best for driving other circuits like high power LED drivers. Starburst is part of the [[Ethersex Lighting Architecture]]. |
== Starburst vs. [[StellaLight]] == | == Starburst vs. [[StellaLight]] == |
Latest revision as of 22:53, 3 October 2014
Starburst | |
---|---|
Status | Stable
|
menuconfig | Applications->Starburst |
Pinning | yes (optional) |
Ecmd | no |
Depends on | DMX Storage PCA9685 |
Requires | a PCA9685on the i2c bus |
Code | https://github.com/ethersex/ethersex/tree/master/services/starburst |
Starburst uses the DMX data stored in DMX Storage and transmits it using I2C to a PCA9685 PWM controller. The PCA9685 is best for driving other circuits like high power LED drivers. Starburst is part of the Ethersex Lighting Architecture.
Contents
Starburst vs. StellaLight
Starburst advantages:
- just needs two pins (3 pins for stroboscope)
- has 12-bit PWM, thus can apply the Stevens' power law
- delegates PWM generation => no load on the AVR
- saves program space
StellaLight advantages:
- does not need an extra controller
Slave Address
Enter the I2C address of the PCA9685 in the menuconfig in decimal format. Here's how to calculate it:
Fill in the values for {A0-A5} according to your layout.
High: 1 Low: 0
The 7th bit has a fixed value (1)
This is a sample for A5=>5V ; {A4-A0}=>GND
fixed | A5 | A4 | A3 | A2 | A1 | A0 |
1 | 1 | 0 | 0 | 0 | 0 | 0 |
to decimal => 96
DMX layout
DMX 0 | DMX 1 | DMX 2 | DMX 3 | DMX 4 | DMX 5 | DMX 6 | DMX 7 | DMX 8 |
channel 1 | channel 2 | channel 3 | channel 4 | mode 1 | mode 2 | mode 3 | mode 4 | global strobo (optional) |
Valid Values
channel n : 0-255
mode n : 0 (instant change) 1 (fade to target)
global strobo : 1-25 (results in 1hz - 25hz) - 0 => no strobo
Stroboscope support
If you want to use the output enable pin, tick
[*] Strobo Effect
and add the pin to your hardware pinning file (in this case PORTA PIN0):
PCA9685_OE(PA0)