3
« le: février 29, 2016, 08:10:04 pm »
Hello,
I have a question concerning AccessoryLight or AccessoryGroup:
I would like to implement Hungarian signals. On our signals, one or two lights can be lit at one time, they may also flash - and we have a max. of 5 lamps on a signal post. So I have a maximum of 8 signals (8 states), because our signals show the current speed limit and also act as a distant signal "repeating" the signal of the next signal post.
My idea was to do it like this: I have 4 DCC addresses with 2 state each representing one state.
Address | Signal0 | Signal 1
1 | red: stop signal | green: Vmax & distant signal's Vmax
2 | red & blinking white: on call signal (subsidiary signal) | white: shunting signal
3 | Vmax & distant signal's 40 km/h | 40 km/h + distant signal's 40 km/h
4 | ... | ....
I also saw, that my Multimaus is sending at least 8-10 packets for one short push of a button, therefore I wanted to implement a status array with the use of "void AccessoryDecoderPacketHandler(int address, boolean activate, byte data)" to prevent "bouncing" (a LED switching on and off at every data packet) - see attachment.
Everything should work (I switch the arduino's ports on and off manually), but I would need something for flashing and dimming.
I saw that AccessoryLight would be able to do such a thing, but I cannot bind one LED to one DCC address, because 5 LEDs belong together on a signal post.
Can I do it somehow without giving AccessoryLight a DCC address, or should I use an AccessoryGroup (defining every LED's state for every signal state)?
If I use AccessoryGroup and AccessoryLight: It there any possibility to implement a "state array" for preventing "bouncing"?
Thank you in advance,
Gabor