free web hosting | free hosting | Business Hosting Services | Free Website Submission | shopping cart | php hosting

Return to main page Information about lights Repair or modify your lights! Custom flasher controls Links to other lights pages

Control Section Home
Stand Alone Flasher Controls
Computer Controls

Printer-Port Control

Other Circuits & Parts


The info here is 'old' by computer standards (but still valid
for its time period)...basically this if "first-generation"
computer control hardware/software. This would work on a
computer from its time-period, and technically with
modifications could be made to work on a modern computer.

At this time I'm no longer updating this section of the
website (nor am I planning to attempt making a new/modern
version of the controller shown here), I'm only keeping
it(the website section) in place for historical purposes.
There are multiple...much more advanced (and freeware) light
control programs out there! (the hardware ain't cheap though,
but can do way more than the very basic stuff here).

Maybe you have an old computer laying around? can use it
to control your Christmas Lights!
The most common way this is done is to use the printer (parallel)
port, 8 channels can be controlled with it, and a computer can have
up to 3 printer ports.
There are also (expensive) control cards that will give more channels
This page will focus on using the printer port.

Part 1 - Software
There are some commercial and freeware programs available
for controlling lights. In the future I will list some
of the freeware programs here:
[if you made a freeware control program, let me know
and it will be listed here]
Pleas put the word 'xmas' or 'lights' in the subject or
i may not get your mail

If you want to make your own program, you can use a
number of programming languages; in any case, you need
to use your language's output control command.
this section gives a very brief overview of using the
output command in a few common does
not tell you how to program the whole thing (it's
assumed that you know the basics of whatever language
you choose to use.
To send something to the port:
in 'C' the command would be: outb(value, address);
in 'Basic' the command would be: OUT(value, address)
If you are using 'Visual Basic (VB)', it will not directly
support the 'OUT' command, you will need to get an add
on or DLL to use it...
...In my case I used 'Inpout16' by Jan Axelson (will
post a URL later when I find one). That one is for 16bit
(windows 3.1) apps, and it worked great!. The syntax for
VB with Inpout is: 'Out value, address'...
in all above cases 'address' is the actual hex address
of the printer port (usually 378). and 'value' is the
decimal value that controls the lights...
0 = all off
1 = ch 0 on
2 = ch 1 on
4 = ch 2 on
8 = ch 3 on
16 = ch 4 on
32 = ch 5 on
64 = ch 6 on
128 = ch 7 on
255 = all on

below is some examples of how to turn all channels on using
the standard port address:
VB (with Inpout16): OUT 255, &h378
standard Basic: OUT (255, 378h)
standard C: outb(255, 378h)
[Visual C, and C++ may use something different; consult
the the documtation or help that came with your language

Part 2 - Hardware


As with software to tell the computer what to do, you
need hardware to convert the computer's signals to
'lights on' or 'lights off'...
You can buy or build various parts of the control
circuit. This section will cover briefly how to make
your own control circuit:

If this is not done right you could do any
one or all of the following:
* See full disclaimer/info at bottom of page

To reduce the risk of any of the above happening,
* Always have someone double check your work
* NEVER do anything to the circuit while its plugged in
* Do not overload
* Never use your main computer for controlling lights
* Do not attempt to build a circuit if you do not know about electronics
* Follow all directions that came with your Christmas lights
* Do not try to control fluorescent lights (unless it is one that is
  designed to be flashed)  
* Do not try to control motors with this circuit
* Make sure that NO DEVICES (such as printers, tape drives, etc.) are
  CONNECTED to the parallel port (and this includes devices that have a
  'pass-through' type connection)! The only thing that should be connected
  is a light control circuit. Connecting anything other than a light
  control circuit will have an unknown result, and may seriously damage or
  destroy the device and computer.
* Make sure the control circuit NEVER GETS WET...
* See additional notes at the bottom of this section

The part that makes this circuit possible is called an opto-isolator;
it's basically a chip that contains a LED, and a PhotoSensor. This
allows the computer's low voltage to control standard 120 volt
devices with very little risk, because the two are completely
isolated from each other.
Basically it works like this: the computer lights the LED and the
light from it activates the Photo Sensor...along with a few other
parts you are basically making a solid state relay

schematic [parts list]
R1 - R8: 180
R9 - R16: 330
IC1 - IC8: MOC3020
D1 - D8: Triac, 4a 200v
sockets for IC's
heatsinks for Triacs

'outputs' is where the lights attach

nunbers with a 'p' before them are
the pins on the printerport that they
go to.


[Pin-Out For Printer Port]
Signal NamePinType
-Strobe 1Output
+Data Bit 0 2Output
+Data Bit 1 3Output
+Data Bit 2 4Output
+Data Bit 3 5Output
+Data Bit 4 6Output
+Data Bit 5 7Output
+Data Bit 6 8Output
+Data Bit 7 9Output
+Busy 11Input
+Paper End 12Input
+Select In 13Input
-Auto Feed 14Output
-Error 15Input
-Initialize 16Output
-Select 17Output
Ground 18n/a
Ground 19n/a
Ground 20n/a
Ground 21n/a
Ground 22n/a
Ground 23n/a
Ground 24n/a
Ground 25n/a
[additional info]
Pins 2 through 9 are the outputs used for controlling lights. Pins 18
through 25 are grounds, any of them can be used to connect to. The rest
of the pins are not used for light control.

[control boxes]
this is really up to you on how to build this...
you can put all 8 channels in one box or split them between seperate
what i did is make 2 boxes with 4 channels each & a adapter box (shown below):
use a standard 25pin cable to connect the computer to the adapter box, and
then cat5 network cables to go to 2 control boxes.
adapter box control box
[parts for this example]
(1) 25 pin connector (DB-25)
(4) cat5 jacks
(1) std 25 pin cable (not a printer cable)
(2) cat5 cables

Additional Notes:
  • If you know anyone who has epileptic seizures, keep them away from
    these circuits when on, as prolonged exposure to the flashing could
    trigger it.
  • Do not use C7 sized lights (C9's are ok though)
  • If you are controling a large amount of lights, you may notice
    dimming or flickering of lights in every room of the house -
    this is normal, but it may cause problems with electronics
  • There is no guarantee that this actually will work - build
    at your own risk.
  • If the circuit is going to be outside make sure the case is
    fully weatherprofed.
  • In some cases you may need to locate the computer on a separate
    circuit from the lights...if it tends to lock up or reboot for
    no apparent reason, try moving it to another circuit (this should
    only be a problem when controlling large loads)

all info here is provided as is without warranty of any sort
I can not be held responsible for any problems/damages/injuries/
etc caused by the use or misuse of this info

Warning: read all the following before you continue.

The info on these pages can be DANGEROUS.

Electricity can KILL or INJURE you, be careful and treat it with
full respect.

Electricity can also cause FIRES, again be careful with it.

Never work on any circuit with it turned on or plugged in
If you don't know anything about electronics, don't try to
build these, if you want to learn check with your local
college to see if they offer a class (this is worth doing

Some of these circuits still hold enough of a charge to
cause injury or death even when unplugged

There is no guarantee that these actually will work - build
at your own risk

If you know anyone who has epileptic (or other) seizures,
keep them away from these circuits when on, exposure to
the flickering/flashing could trigger it.

Do not use C7 sized lights with these or any circuit that
uses a SCR or Triac to blink them. C7 sized lights have a
flaw in the design that sometimes causes a short when a
bulb dies, normally this is not a problem, but in this case
it will blow the Triac or SCR. (miniture lights, and C9's
are ok

Do not attempt to control fluorescent lights, with any SCR
control circuit. you will at a minimum burn out the bulbs
quickly, and could cause a fire. If you have a fluorescent
light that is designed to be flashed, it should be ok on a
Triac controled the light's instructions.

Products such as Fluorescent Lights increase the 120volts
input up to 600 or more volts... while 120volts is easily enough
to cause death, this increased voltage is much more dangerous...
it is even more likely to cause serious burns or DEATH. a
Fluorescent Light should be considered ARMED and DANGEROUS
whenever it is on (whether there are bulbs in it or not)
Fluorescent Lights can also hold a charge even after being
unplugged, (especially if there are no bulbs in it).

If the circuit is going to be exposed make sure the case is
weatherprofed. If possible put it in a shed or garage (not
an attic though) and run cords to the lights, this will save
the cost and trouble of weatherprofing.

For the circuits that respond to sound you are going to also
need a place to put a speaker right beside them. A backyard
shed is a good place if it has power, and you can get sound
to it (this keeps the sound 'hidden' - unless for some reason).
you want music playing to the neighborhood)

Some of these circuits can be annoying (part 1)... causing a
slight flicker/dimming throught the entire house. this is
espically true with these 'add-on' circuits, because they
are controlling a heavier load (the more load, the more you
dim your house)

Some of these circuits can be annoying (part 1)... generating
'noise' on the power lines throught your house. this will
show up as static/interferance on TV's and Radios (and that
even includes when listening tape or cd players), as well as
some other electric devices...this is a problem, i'm not sure
what to do about it, but a noise filter may help

To prevent any possible problems Do Not attach these to the
same circuit as your Computer, Stereo, Or TV unless you have
a good line conditioner for it

I did not design any of the circuits here, but I did modify
a few of them to work with standard 120vac

Never overload the control circuit check the wattages page
to get some idea of how much power a set takes

These are only for use with standard 120 volt AC (USA,
Canada, etc.) If you live in a country that uses a
different voltage, do not attempt to use these.
(some can be modified to work with 240v but i won't go
into it here)

Some of these may cause interferance on the TV or Radio.

Computer controls can damage or destroy a computer if not
done correctly

Always have someone double check your work before connecting
power to anything you've worked on.

Electricity and Water do not mix.

Avoid working in any area where flammable products (such as gas/
paint/etc) are stored or used

Do not work with electric items when you are tired, being tired
will only increase the chance of mistakes

Avoid working on electric products if you have consumed any
alcoholic beverages or drugs (medical or otherwise) as these
will impair your ability to concentrate on your work

if you become frustrated while working on something, set it
down and walk away (turn off / unplug any equipment you have

Keep your work area clean and organized. If you work in a room/
area without windows (or work at night) install a automatic backup
light... that way when you blow a circuitbreaker/fuse you will not
be in the dark.

Do not overload Circuits/Extension cords/Lightsets/ Etc

Modifying any electric product WILL VOID any warranty on it

Using any electric product for other than its intended use WILL
VOID any warranty on it

In addition there is a chance you will void your insurance by
using modified or home-built electric items, if that item
causes a problem such as a fire

This is only a partial list of the cautions/dangers there are
many more not listed here (but still apply)

Always remember...
Be safe!
It is not worth risking your life or home over an electric item!

I can not be held responsible for any damage, death, fire,
etc. resulting from the use or misuse of these circuits

This page and the images on it (c) 1999 - 2016 James K