This Instructable is for those who would like to use your Arduino to output to a TV. Granted the Arduino is only powerful enough to produce a black and white picture it can still be fun to play with and useful for some projects.

Step 1: Item list

Things you will need:
- Arduino
- A TV
- A Protoboard or PCB
- 2 Resistors
1x 470 ohm ( Yellow, Violet, Brown )
1x 1k ohm ( Brown, Black, Red )
- 2x 2-Pin headers ( Only 3 are used but the 4th helps with stability )
- Spare RCA cord you don't mind cutting up
- Arduino Software ( http://arduino.cc/en/Main/Software )
- The TVout library ( http://code.google.com/p/arduino-tvout/ )


<p>it isnt working it shows</p><p>Arduino: 1.6.8 (Windows 7), Board: &quot;Arduino/Genuino Uno&quot;</p><p>C:\Users\Mohit\Documents\Arduino\sketch_mar29d\sketch_mar29d.ino:1:19: fatal error: TVout.h: No such file or directory</p><p> #include &lt;TVout.h&gt;</p><p> ^</p><p>compilation terminated.</p><p>exit status 1</p><p>Error compiling for board Arduino/Genuino Uno.</p><p>This report would have more information with</p><p>&quot;Show verbose output during compilation&quot;</p><p>option enabled in File -&gt; Preferences.</p>
<p>Have u added the library?</p>
<p>I had that same problem to begin with. The way they constructed the code for the examples seems to be a bit wanky, I ended up locating that file as well as the FONT files and copying them to the first subdirectory under Libary. Worked after that.</p>
<p>I'm using a tiny CRT from a VHS camcorder viewfinder, almost all of them take composite video input. It's about as big around as a penny. :D This particular CRT seems to be really picky about it's power source- I have to power it using a fresh 9v battery, which stops being fresh after a few hours of use. As you can see, I had fun playing around with the bitmap image function...</p>
<p>(The little jag at the top of the clock it the fault of a not-so-fresh battery. The image quality gets worse and worse as the battery drains)</p>
<p>cara downloadna kumaha brayyyy</p>
<p>It worked perfectly, the code gives the mensioned error but it uploads to arduino.</p>
<p>where is the code i cant find which code to use</p>
<p>It is in the .ino file which will automatically be opened by arduino.</p>
<p>Built this one tonight, I had tried earlier using a scrap of PC board but it got a bit too small. This time I just used the whole board, soldered on pins all the way down the side with plans to add on other items such as a compas and gyroscope so I can use it to monitor our routes in the RV and display on this screen.</p>
<p>works well! after a bit of playing i was able to understand how it all worked and how to position text on the screen..<br>so i did what any Fallout fan would do and made a quick Robco terminal :D</p>
<p>I've been wanting to do that with and older tv set - like yours - but using an astec modulator from a zx spectrum (I swear I didn't killed it for parts); I tried a prototype today but with no success... do you have any idea or suggestion on how I could (or even if it is at all possible) do this with this modulator? Maybe I'm missing something...</p>
i cant say with one from a ZX, but the Sony Playstation one takes a 5v input. however to make it so only a play station can use it, they swapped the connectors around. so the centre pin on the right only works with the outer ring on the left.<br>strange i know...
<p>Thanks for the reply; I'll try to find a similar modulator and wire it up :)</p>
<p>That.. Is.... AMAZING! I'm gonna have to dig around and find the adapter again so I can try this. Do you plan on going any further in depth with this?</p>
yes! i want to make it do different screens. maybe even have a simulated fallout based &quot;terminal hack&quot;<br><br>i just wish its resolution was better so i could have more letters on the screen per row.
<p>yeah i would love to.. it would be nice to give it a full keybored support and make it so you can go through the stages of &quot;hacking&quot; a RobCo terminal.</p><p><br>i would like it so i could change the resolution a bit though as the text is quite large and does not look that good if you use a small font. i am not sure how to do it though. i am very new to arduino.<br><br>that TV looks a little bit like a pipboy.. i am actually in the progress of making it look like it is from Fallout. i have plans of using it in a fallout themed car that i am also working on.. google &quot;Fiat Panda 4x4 Project: Fallout&quot; and check out the facebook page :D</p>
<p>Too cool man... Definitely can't wait to see your Instructable of a RobCo Terminal Dashboard or somethin lol... As far as the Resolution I'm not too sure, it's been a while since I played around with Arduino and I'm a bit hazy on it.. I'm just gettin back into it and if I have any luck I'll shoot you a message :)</p>
<p>is it powered? Is that it? I noticed some extra wires on your modulator coming from 3.3V (?).</p><p>sorry to bother </p>
<p>Thank you so much for sharing the good experience for me. I am just step into beginner stage. Hope many of us are happy with your support on Arduino work.</p>
<p>Thanks for this it was easy and fun to make and play with.</p>
<p>It would be nice to use it for Arduino Oscilloscope on that screen. </p>
I first tried about 3 or 4 months ago but tonight I managed to crack it, having broken the small PCB I got right 2nd time. 10 out of ten but better photos are needed if confidence initially is desired.
<p>Yeah sorry about the picture quality.. It was a while back and I really didn't have access to a decent camera(Just an old Galaxy Prevail). Thanks for sharing some better pics, I'll post some better ones soon.</p>
<p>Works great! is there any way to use this as a serial monitor though?</p>
<p>I have a mac and I don't know how to download the library? Can some one please help</p>
<p>Took about 10 minutes to set everything up and worked fine. Then went to play with thte code and got this in 30 minutes. Didn't have a 470ohm resistor, so used 2x 1k in parallel (=500ohm) and worked fine.</p><p>Only problem I had was: i tried to declare &quot;int a&quot; and put it in a for(a=0;a&lt;50;a++) set_pixel(a,100,2); to make a loading-like progressbar, but it compiled and no image was displayed. broke the FOR into 50 commands of set pixel and worked fine. put it into FOR again and no image. then changed &quot;INT a&quot; to &quot;CONST INT a&quot; and worked fine again. Don't know what happened, but if someone suddenly loses image for no reason, try commenting newly added commands that would make no difference in the display to pinpoint the error.</p>
Does the 470ohm resistor have to be exactly that? because I am having a hard time finding that and I don't really want to buy one because radio shack is really far away. If it doesn't then what's the best repacement.
<p>No it doesn't need to be exact, I put two 330ohm in parallel with one 330ohm in series with them. and it works just fine. ( although i think with 470 the image would be better!)</p>
<p><strong>I get the following error:</strong></p><blockquote>Arduino: 1.6.4 (Windows 8.1), Board: &quot;Arduino Uno&quot;</blockquote><blockquote>Build options changed, rebuilding all</blockquote><blockquote>C:\Users\Neel\Downloads\arduino-1.6.4-windows (1)\arduino-1.6.4\hardware\tools\avr/bin/avr-g++ -c -g -Os -Wall -Wextra -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10604 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\Neel\Downloads\arduino-1.6.4-windows (1)\arduino-1.6.4\hardware\arduino\avr\cores\arduino -IC:\Users\Neel\Downloads\arduino-1.6.4-windows (1)\arduino-1.6.4\hardware\arduino\avr\variants\standard C:\Users\Neel\AppData\Local\Temp\build7370315261520868212.tmp\TVInterface.cpp -o C:\Users\Neel\AppData\Local\Temp\build7370315261520868212.tmp\TVInterface.cpp.o </blockquote><blockquote>TVInterface.ino:1:19: fatal error: TVout.h: No such file or directory<br>compilation terminated.<br>Error compiling.</blockquote>
<p>Did you downloat the TVout library from:</p><p>(<a href="http://code.google.com/p/arduino-tvout/downloads/detail?name=TVout_R5.91.zip&can=2&q=" rel="nofollow">http://code.google.com/p/arduino-tvout/downloads/detail?name=TVout_R5.91.zip&amp;can=2&amp;q=</a> )</p><p>??</p>
<p>I did this with a Parallax QuickStart board. I tried with an Uno but got an error which I haven't surmounted as of yet.</p>
<p>It changed from 8 to 7</p><p><a href="https://code.google.com/p/arduino-tvout/wiki/Useage" rel="nofollow">https://code.google.com/p/arduino-tvout/wiki/Useag...</a></p><ul> <br><li>pin8 must be connected to video<ul> <br><li>Will change to pin 7!!! already has in pre-release svn</ul></ul>
<p>got it working. On <a href="https://code.google.com/p/arduino-tvout/" rel="nofollow">https://code.google.com/p/arduino-tvout/</a>, they say </p><p>Arduino UNO:</p><p>video = pin 7<br>sync = pin 9</p><p>well that is not true. The video is on pin 8. I did that and everything works! Thanks</p><p>Let's start coding!!</p>
<p>i am new to this area and tries to compile and run the program .</p><p>there are many error i need help with if its possible :</p><p>TVoutTestR1.pde: In function 'void setup()':</p><p>TVoutTestR1.pde:8:20: error: '_NTSC' was not declared in this scope</p><p>TVoutTestR1.pde: In function 'void loop()':</p><p>TVoutTestR1.pde:15:6: error: 'class TVout' has no member named 'delay'</p><p>Error compiling.</p><p>any help !</p>
<p>Please-anyone help keep this updated... I'm trying to help my boy with his science fair project and this is it!!! We really want to get Arduino Pong working!</p>
<p>Have you installed the TVout library?</p>
Thanks for this tutorial! ;)
<p>Will this work on a regular flat screen TV with composite in?</p>
<p>I have been working with TVout for almost a month now and its been rather frustrating.</p><p>In the code you provide when I try compiling it, apparently start_render and print_str are not members in the TVout class. </p><p>I have the same version of libaries as the one you have linked. Any ideas as to what's up?</p>
<p>which operating system you are using ?</p>
<p>Windows 7 64-bit</p>
Docs say to use 9 and 7,, but you seen to be using 9 and 8. Could you clarify please: <br> <br> <br> NG,Decimila,UNO 9 7
<p>The beta uses 9 and 7</p>
<p>thank you.</p>
<p>good post , I like this. Actually an analog clock on a small CRT screen would look nice....Did you post anything new on this ? something like ping pong or tennis game??</p>
I runned the code and it shows some errors in the following: <br>analogReference {INTERNAL1V1}; <br>class TVout has no member named printbitmap2 <br>void Refreshstatus(); <br>
I had the same problem with the compiler , with errors in the library files , the problem for me was theat I play`d around with my Hackduino with atmega8 and when I swicht the 0022 to my Duemilanueve board with the atmega328 it compiled fine , so i gues it dose not like atmega8 :)
It is definitely possible to get it going on an atmega8, I've done so myself.

About This Instructable




More by AdmRainbowBeard:TV Out with Arduino 
Add instructable to: