Fast & Easy Fake-TV Light module built for under $5; with enhanced features. With the use of this device you can go for holidays or on vacation leaving your home with a lived in appearance and thus an added layer of security. "I'm up and I am a night owl ... or perhaps asleep on the coach in front of the TV, ready to be awakened."
My project was inspired by this Fake-TV project. I decided for my project to simplify the hardware involved, minimize assembly and make the software more sophisticated.
This instructable is the results.
First I found a pre-built inexpensive module containing all the NeoPixels I desired. The original project hand wired up four. I choose a unit with seven LEDs. As I have a Large screen TV and thick drapes, I also increased, in the software, the maximum 'On' level driving the LEDs. If the unit is too bright to be effectively realistic in your use, you can lower the setting of 'LED_BRIGHT' and 'LED_MIN' in the software.
The unit is designed with a photocell so it only operates at night.
I made several Improvements of the simulation of a television's light output during a typical TV show or movie. I put a fair amount of comments in the code explaining what was being done & why.
Step 1: Parts
The parts you'll need are:
- Any Arduino MCU (I recommend: Nano 3.0) less than $3)
- NeoPixel WS2812 RGB LED Ring ($2) or string of say 4 to 10 LEDs
- a LDR Light-Dependent Resistor (Photoresistors)
- a 1000 ohm resistor.
- optionally some sort of container (e.g.)
- various equipment and tools (the usual stuff ... PC, cables, wires, strippers ...)
I have seen other project using NeoPixels in conjunction with capacitors. Presumably to eliminate erratic behavior. Erratic behavior on the part of the NeoPixels for the most part would be desirable in this application, so I have forgone the need for such capacitors.
As I see it additional variable resisters and switches can only provide marginal value to this device, while complicating fabrication and software implementation. So they are not used. On the other hand, you may need to change the software settings controlling the detection of night time, which activates the device. But this should be a one time adjustment. If desired the 1K could be replace with perhaps a 10K variable resisters.
Here is a simplistic diagram of how these parts interconnect for this project.
Nano MCU pin
D12 ---------- 'IN' on the NeoPixel module
V5 ---------- VCC "
GND --------- GND "
V5 ---- Photoresistor ---- A1 ---- 1K resistor ---- GND
I use what ever USB AC adapter is handy to power my unit.
If, in your 'I made it' project you use more LEDs be sure your power supply can handle it. Each of the 3 LED segments in a NeoPixel can use up to 20ma. So that 60ma per NeoPixel. I then need 7 times that to power my light output (i.e. 420ma). A 1A USB AC adapter will handle that easily. That current will only go through a large diode on the Nano board and out the V5 pin. This too will be fine.
Step 2: Assembly
I did and I recommend prototyping and testing the (any) project on a solderless breadboard before applying a solder iron. You may need or want to make a change in the hardware or software.
If you use a different Arduino MCU (like a Digispark ATtiny85) then you may need to use a different digital output pin, and maybe even the analog output pin.
I choose to use a Nano 3.0 mainly for these reasons:
- Its small
- Easy to upload via its on-board USB.
- Can power the final assembly with a USB AC adapter
I soldered 2 headers onto my Arduino Nano, as I planned to wire wrap connections to them. This make it easy to later modify as well as expand on a project.
First solder wires to the three inputs pads (Vcc, Din & Gnd) on the NeoPixel model.
Solder those wires to V5, D12 (aka MISO) and GND on the Nano board respectively.
Solder together the LDR photo-resister and the 1K resistor.
Connect wires, by what ever means you deem fit, between:
- the free end of the LDR and V5
- the free end of the 1K and GND
- the junction of the LDR/1K and pin A1
The final packaging could take the form which fits your needs or your fancy. I put the bulk in a plastic box with the LED ring model out one end; for ease of construction, convenient power hook-up and assembly placement.
Step 3: The Software and Its Features
Using the Arduino IDE upload the software (sketch) Fake_TV.ino into the the Nano 3.0 via it's USB.
How long between camera-scene changes has an uneven distribution. The software in the sketch is designed to reflect that distribution. Which is spread across about 8 seconds; most scene of images lasting less than 3 seconds. There are the most in the 1 second range, then a lot in the 2 second range, and less and less in each consecutive one second ranges.
When changing from one scene to another various transition effects are utilized. The software simulates this with four effects, a 'cut', a 'two step' transition (with an intermediate image formed of components of the old and new scenes), a 'wipe' to the new scene moving in from one side to the other, and a 'fade' from one to the other. The use of these is also not evenly distributed. Mostly plain cuts are used.
These transition are not real apparent but do tend to improve the simulation of an active television scene.
Step 4: Operation
Place the unit in a room near a window near the front of your house. The unit should be about 2-4 foot away, with the LED module facing the window. Have the shade and or drapes drawn. Spaces around the edges is good for reflective light to escape. However, you don't want the light source to be directly visible.
Connect the Nano's USB to a USB AC adapter. We have no on-off switch. There will be three flashes of 'white' right after power up.The unit will there afterwards be dormant in a well lit room and activate when the room is fairly dark; or if you put electrical tape over the photo sensor. If you don't want it to operate all night, you can plug it into a timer.
When you first look at it in operation you can under impressed, especially as light shows go.
The test of a simulation of lighting from a TV is that from outside, at night, as to the glow past the window dressing or indirectly off a wall.
I tested some from in front of my house; and with a TV in one bedroom and the Fake-TV unit in another, viewing the effects off of their walls from a common hallway. Once I made my software adjustments and enhancements, it was a pass for me.
Certainly, what type of programming (show, movie etc.) you put on a TV determines the nature and behavior of the overall lighting effects. This makes for a wide range of viable light outputs for this application.
Naturally, there is room for Improvements, and of course, one's own subjective improvements may always be made.
For a more full experience TV watching simulation, while you're away, accompany this unit with an audio source; as suggested in the comments. Preferably something low power. Audio of folks talking, loud enough to barely hear outside but not loud enough to follow, will be more TV content like than music would be. I recommend using a USB powered radio (e.g. this or this). The first unit starts playing, straight away, when its power switch is turned on. So it could be easy to modify it to be activated when its USB input gets power or by a control line from the arduino micro-controller.
I use a dual USB AC adapter to power together my Fake-TV lighting and audio units.