Vixen + Arduino, How do you dim lights

kholy87

New member
I have tried searching and I can't find what I'm looking for. If I am using an arduino what do I need to be able to dim lights?
 
This is a very generic question. Arduino is a development platform. What software have you developed to run on it? What protocol is it using to deliver data from the sequencer to the Arduino? What kind of lights are attached to the Arduino ? What kind of SSR is attached to the Arduino?

What I really am saying is that we need a bit more information in order to answer your question.

I also suggest that you read the wiki for beginners information that may help guide you in your search and decision making process.
 
So my current setup or my prototype I guess is just a arduino + sainsmart 16ch SSR + Vixen

So I have arduino just setup right now to accept inputs from vixen and pass them out of the GPIO

Now I believe I most likely won't be able to dim with the SSR but I was curious to what it would take to allow vixen to dim lights that I have connected.
 
Many SSRs do have the ability to dim lights. Since you are using an SSR, then we can assume you are using line voltage AC strings (110v or 220v) and either incandescent or LED strings. There are two kinds of SSRs, Zero Crossing SSRs (they only turn on if you apply a signal while near the zero crossing point in the AC wave form) which are not easily dimmable (it can be done but the effect is pretty rough), generate very little heat and very little RF noise, or async SSRs which allow you to trigger them at any point in the AC cycle, making them infinitely dimmable.

For the zero crossing SSRs your Arduino would need to output pulses that are (at a minimum) slightly longer then 1/2 of the AC waveform to trigger the SSR (or a pulse timed to the zero crossing zone). For a dimmable output your Arduino would need to sync to the AC line and send an "on" pulse at an appropriate time to an async SSR. The energy delivered to your strings depends on where in the AC cycle you output your pulse.

BTW, I would bet that the software needed to drive your board is already available in some Arduino library somewhere and all you need to do is mate it with software for one of the common player-to-controller protocols and you should be good to go.
 
So my current setup or my prototype I guess is just a arduino + sainsmart 16ch SSR + Vixen

So I have arduino just setup right now to accept inputs from vixen and pass them out of the GPIO

Now I believe I most likely won't be able to dim with the SSR but I was curious to what it would take to allow vixen to dim lights that I have connected.
So you did find a sketch to run your SSR relays?
Most of the SainSmart SSRs are zero crossing type and as Martin has explained they don't dim. SainSmart do make random SSRs http://www.sainsmart.com/sainsmart-8-ch-ssr-5a-dc-dc-5v-220v-solid-state-relay.html

Edit: Unfortunately these SSRs use an SCR, which is unidirectional thus giving 60HZ flicker, instead of 120HZ. A fullwave bridge rectifier feeding this SSR board will correct the problem, but means added component. Don't add filter capacitors on the output of the fullwave bridge, else the SCR won't shut off after being turned on.

There are other vendors here that sell SSR kits so you have many choices available.

Regarding your SSRs for dimming, it could only dim by 1/2 cycle (8.33ms) steps. If you set the 100th step as being full cycle power then you could dim between 1 half cycle all the way up to 100 half cycles. This "PWM" has a repetition frequency of 1.2 HZ and would thus cause undesirable flicker.
 
Last edited:
With the zero crossing SSRs you can get a limited set of intensity levels. For example a 5 level setup would be:

Level 1 - off
Level 2 - 1 half cycle on, 3 half cycles off
Level 3 - every other half cycle on
Level 4 - 3 half cycles on, 1 half cycle off
Level 5 - all on

This results in a 30hz refresh and gives fairly flicker free results but needs you to sync the Arduino to the AC line. You can expand the steps, but that will come at the price of a slower refresh rate and will increase the visible flicker.
 
Interesting point, Martin.

See, kholy87... there are creative ways over "brute-force" and get some satisfaction. :)
 
The sketch I'm using to run my arduino from vixen I found on here, I tried last night posting the url but it said my post had to be approved. It was the sample sketch for uno/mega.


After reading a couple of the responses this task me be too over my head. I only know basic electrical wiring and was hoping there was a way for vixen to control this.

Thanks for the thoughts! I will keep trying to read more about it
 
I tend to recommend this sketch for beginners with a SainSmart relay system; http://doityourselfchristmas.com/fo...48-realy-SSR-channels-with-Random-mode/page18 starting at post #1.

Yes, it can be bewildering when first trying to get the hang of sequence controlled lighting. However, this site has many members here who are willing to help you along. Vixen too will have its learning curve. Vixen 2 is perhaps easier to get going with a relay board. Vixen 3 also works well but it has so many features that it is more complex and thus harder to master. Again, help is available here too. I'm more into electronics than sequencing, so I tend to help there.
 
The entire story of getting dimming to work, and work in a beautiful way (with 255 dimming levels), with Arduino and Vixen can be found here:
http://doityourselfchristmas.com/fo...Arduino-Mega-SainSmart-16-Channel-Relay-Board

Note this started out as a post on my first build with 16 mechanical relays and ended up with full dimming using 32 SSRs for version 2.

Get through the first few pages of posts and you will find an adventure in figuring out how to replace zero cross SSRs with random cross SSRs, building AC sine wave zero cross detectors and writing seriously hard core level arduino code. It is NOT impossible, though it does take a bit of a stick-to-it attitude. :)
 
i have only a basic understanding of trying to dim ac lights using an Arduino on Vixen 3, but i have come to the conclusion that one doesn't want to use a zero cross dimmer module. instead PWM will work with Arduino on Vixen 3 but will cost you 18 to 20 dollars a channel. PWM seems to be less complicated to use and has a smooth transition while dimming and brightening.
 
you are missing the third critical point. Your PWM needs to be in sync with the AC line. You would be better off purchasing a renard controller. the cost per channel is lower.
 
Back
Top