diy lcd touch screen overlay free sample

It has been a long time since I"ve contributed to this website--going on to a year almost--I was trying to accomplish a personal goal that was in the making since my early high school years. This instructable has taken 2 years of independent research and setbacks, but it is finally here. I present to you the complete guide to building a personal Multi-touch table at home with basic design and engineering skills ( I will attempt to fully explain every detail so that even a beginner can find success!). Most mathematics have been performed so the only fear regarding this project is the fact that it will take some time to put together . . . and some money.
When I was in my freshman year of high school, I was invited to attend an engineering "field day" taking place in Alabama"s Redstone Arsenal. Although most of what we were shown during this trip were projects that I am not able to speak about, one of the more relaxed projects was the Multi-touch table. I am not allowed to say what the table was being used for--I"ve forgotten either way--but I can speak about its features. The table shown to us was a 30" Microsoft Pixelsense (then known as the Surface, before the tablet took its name) and to me, it was glorious. As a connoisseur of Natural User Interfaces (NUI), I"d always been fascinated by 3D spatial projections ( what most people call holograms) and anything of the like. I had never seen of these before so it would be easy for anyone to imagine my excitement. I asked the Project manager about what it would take to work with one of these and how I could be involved. You could imagine my disappointment when he told me that although it was simple, it wasn"t anything that I could ever make by myself. This very conversation sparked a 5 year personal vendetta against that one employee that led to the creation of this instructable--as a hobbyist. I enrolled in optic courses and searched through every crevice of the Web until I had enough information to build my own table. I had two very important personal objectives:
1) Educational: To gain experience in NUI technologies and help spread this knowledge to students willing to learn via independent projects. I planned to stimulate interest with the introduction of a hobbyist-made Multi-touch table in order to engage myself deeper into NUI technologies
We are going to be building a 47" Planar Infrared-based Multi-touch table using the Diffused Surface Illumination (DSI) Technique. This technique is not recommended if you aim to read objects (that are not fingers)--also known as fiducials--unless you plan on not using the diffusive panel of the LCD. It is also not the best to implement when using an LCD, but it is the most convenient due to requiring less materials and work. I chose this one because of the convenience.
By Diffused Surface Illumination (DSI), we place Infrared (IR) Light-Emitting Diodes (LEDs) around the edges of a special type of acrylic known as Endlighten Acrylic. This acrylic is manufactured with special properties akin to having microscopic mirrors that evenly distribute the light across the surface of the acrylic. When your finger touches the surface, it creates a "blob" on the surface--it interrupts the evenness of the light. This blob is then to be read by the specialized camera and recorded as a "touch event".
The first PixelSense used a different technique called Rear-Diffused Illumination ( Rear DI). By Rear DI, the maker is required to use IR illuminators on the underside of the screen. Because of this, it is nearly impossible to create using LCDs due to the IR light reflecting from the back panel. Thus, people will usually use a short throw projector (usually more expensive if you want HD quality). All in all, DSI allows for higher visual quality at a reduced price. Input detection remains the same.
Typically, smartphones and tablets use either capacitive, resistive, or surface acoustic wave screens in order to detect user touch points. Capacitive uses the electrical properties of human bodies in order to detect user inputs at certain points (the skin of your fingertips). Thus, devices using this screen are highly sensitive and neglect pressure--meaning that users cannot use regular styluses or gloved hands. In addition to this, the cost for capacitive layering on a large scale project would be tremendous.
Resistive screens simply rely on pressure as they are built by layering screens. For resistive, there is an inconvenience in that building this setup would require the user to create layering patterns with little promise of multi-input detection.
In Surface Acoustic Wave (SAW) screens, when a panel is touched, the ultrasonic waves exerted in the panels are absorbed at those points and this registers a position for touch events to the controller for processing. This would be burdensome if applied to larger screens.
However, infrared technology holds the advantage of being able to deliver superior images without an overlay while granting the ability to detect most objects. Also, the ability to use fiducial markers (programmable blocks). Also, they tend to have the higher number of Maximum touch inputs.
The first thing you should worry about is your LCD TV. You won"t be able to use just any TV as there may be issues. I will explain this in more detail soon.
The LCD is perhaps the most annoying hardware component regarding the setup of an LCD DSI table due to the FFC Issue--I will get to this soon. But first, a bit of insight: It is mildly important to understand how LCDs work for the purpose of explaining how the table works. Also, since we are taking one apart, it is important that we understand what each component does.
LCDs are an amazing piece of technology that remind us of how amazing and progressed our technological prowess has come. At the core, they rely on Liquid Crystals (LC). LCs are materials that are literally in a state between liquid and solid states of matter--this means that their particles maintain their orientation, yet they are able to move around to different positions akin to liquid state materials. Thus, they are highly sensitive to temperature changes ( they must be at an exact temperature to maintain their odd state). For LCD screens, LC particles are usually arranged in a twisted nematic phase. This only means that they are affected by electric current (nematic) and are naturally twisted. When we apply current to the LC substrate, the LCs untwist varying degrees depending on the voltage--which allows them to react predictably in controlling the passage of light. The orientation of the particles in the natural state depend on either a magnetic field or microscopic grooves. The change in orientation (for most LCDs) is described as either smetic c or chiral nematic. The smetic c orientation holds that the particles are layered in such a way that they tilt slightly in angles with each layer while the chiral orientation sees the molecules untwist slightly from layer to layer.
There are many types of LCD screens such as Passive and Active Matrix LCDs, but since we are most likely only dealing with an Active Matrix, I will only explain this one. Active Matrix LCDs depend on Thin Film Transistors (TFT) which are essentially tiny switching transistors and capacitors. They are arranged in a matrix fashion on a glass substrate and to turn a pixel on, the row corresponding to that transistor is turned on and a charge is sent through that column. Since the other rows are off, only the capacitor at that row is receiving a charge--theoretically knowing that Capacitors can change current instantaneously, this is explained and we also factor that the charge can be held until the next refresh cycle. Controlling the voltage, one can untwist the LC enough to moderate the amount of light that passes. This allows for the creation of a gray-scale.
Each Pixel has 3 sub-pixels (red-blue-green{RGB}) and they each have their own transistor. each sub-pixel allows for 256 shades within their own gray-scale for a grand total of 16.8 million possible colors on your screen. this is true unless you have a fancy yellow pixel LCD display as we get the possible colors from 255^3 for the 3 sub-pixels.
Depends on the display. A 1024x768 TV has 1024 columns and 768 rows, so if we multiply that by 3 pixels, we get 2,359,296 TFTs etched onto the glass panel. If that doesn"t impress you, wait until you see how thin the screen really is and what happens when you turn it on away from its casing!
In building your table, you are going to have to make predictions and decisions. You won"t always have a perfect display built. Sometimes, you"re going to have to figure things out from the fundamentals in order to make sure you didn"t just waste $$$$. Also, depending on your setup, you may have to predict the display size of your LCD based on the properties of the screen. More importantly, this is knowledge! so take it in!
III. Things I should worry about in regards to the TV I will use for the table:The FFC Issue as defined on the NUI Group Forums is when the FFC cables are either too small or fragile to be manipulated into building a Multi touch setup. The Flat Flex Cable is the cable that you will find connecting the LCD matrix to the Control boards. This can become a problem as they are hard to replace and if the get in the way of the construction, they may cause accidental damage. Fortunately, there are links to databases with TVs that do not have this problem and are perfect for Multi touch setups:
The Aspect Ratio: You need to know your aspect ratio so that you can approximate the size of your LCD in order to create your chassis, or box. Most LCDs nowadays are 16:9 since this is the HDTV Standard. That is, 9 units of height for 16 units of width. Use similar triangles (yes, math) in order to determine the size of your LCD screen. Of course, this is only necessary in the case you do not want to rip the TV apart until you have everything else (Acrylic, wood, etc).
Contrast Ratio: This is the measure between the brightest possible image and the darkest possible image. White/Black = Contrast Ratio. Unfortunately, there is no actual metric to standardize this so companies just exaggerate things such as 1000000000:1 (who knows what that means?) This matters only in terms of vanity--say you wanted the clearest possible image to be displayed on your LCD. An LCD with a high dynamic ratio is better than an LCD with a native that gives the same ratio; however, an LCD with a higher native ratio is superior. Native describes what the LCD is able to produce on its own and dynamic refers to using circuitry to assist the panel in accordance to ambient light.
The LCD screen comes with a set viewing angle that ensures the best possible picture--most consumer don"t know this and miss out on the full experience. A Bias angle is designed to offset this angle. Because of this, your angle of acceptable viewing is made much larger. There is still an area of unacceptable contrast, but you will most likely not reach it.
The first thing to do in determining the LCD size is to find out what your aspect ratio is. The beautiful thing is that LCD retailers are required to release a specs sheet concerning the capabilities and basic information regarding the TV. In these, the most notable of specs is the aspect ratio--usually 5:4 or 16:9.
Next, use triangle-angle relationships to determine the angle opposite the horizontal and vertical measurement of your display using the aspect ratio. For example, a 16:9 ratio LCD will have 16 units of measure for the horizontal component and 9 for the vertical. The angle opposite is the given by cos (16/proper diagonal measure). For a television of a 46.96" diagonal, Cos(16/46.96") = 60.64224646 degrees, which makes sense.
Next, setup a similar triangle diagram where the 16:9 is within the LCD. You are to find the X and Y components of the outer triangle. You use law of sines with the angle determined above to find this. For example, following our calculations, [Sin(60.642)/9] = [(x/46.96")/x] given that y = 9x/16.
Is your box the right size to hold your LCD screen? This is where aspect ratio comes into play. You need to make sure your layers won"t fall through and that the LCD cables/components won"t get in the way. Also, make sure you can make it mobile (it can fit through doors)
Where will your computer be? You may not want to put the computer or the LCD components inside the box unless you are willing to include compartments on the underside for them as they will interrupt the image on the LCD and the camera"s ability to track your fingers.
Ventilation: The Cameras won"t get too hot, but if you do decide to conceal the computer and LCD components (which does make it look nicer), you may want to invest on some ventilation. You can use a couple of in/outtake fans for this if you want.
Is your structure strong enough to hold the Screen layers? you have about 32-45 lbs of screen to hold and the additional weight due to people putting their hands on your table.
Your LCD panel has a back plate that acts as a partially reflective mirror in a sense. On your TV, you will mostly likely find fluorescent tubes. These are known as the back-light and their sole purpose is to provide the base light that the LCD screen will use. The panel also contains the polarizers necessary for the LCs to control the light. We are going to replace this entirely with the LEDs. Why? The tubes are too weak to provide the lighting necessary for the LCD to work once the distance is increased--and you must increase the distance so that you may accommodate for your cameras. Also, the tubes are very fragile and risky. The white LEDs will be placed on the bottom of the box in order to make the screen show an image. Additionally, for this to work, they must be place around the cameras so that they are not in the way. the cameras should also be elevated so that you don"t get too much light interference.
You MUST calculate the distance needed between your camera and screen in order to determine the size of your box. I used two cameras so that I could stitch the two feeds together and reduce my height by three times. Normally, this means having to calculate angles and ray diagrams. Thankfully, the NUI forums has a thread where Peau Productions created a lens calculator that may help simplify this. Please use this before purchasing your cameras or buying the wood. Also, consider looking through the projects on this forum.
As laid out in the previous step, you may want to start thinking about ventilation for your chassis. As pictured above, our simple setup opted for neglecting this step as it was only a prototype. You may want to consider it depending on your component and screen positioning. Remember that IR is also heat, so you may need a system to remedy problems relating to this if they arise. As far as layering for now, consider adding various lips and edges to your table. Remember that you will need a place to house a mouse and keyboard for initial setup and troubleshooting. Also, If you are considering to lay a shell over your box as a design choice (as we did), you"ll need a way to support the acrylic. We personally ordered our Acrylic to be larger than our LCD screen in order to have the effect of a floating LCD screen. If you aren"t expecting any children or aggressive people to touch your screen--the Endligthen layer is very easily scratched--you may even replace the extruded FF with the abrasion resistant layer. All in all, lay a piece of acrylic for support. If you are a careful person, use the abrasion resistant layer as a support. If you don"t want to risk anything going wrong, use the extruded FF.
Of course, the first thing to do is turn off the power and remove the AC cable and gently lay the television screen-down on a flat and stable surface.
You will see a metal back-plate with holes. Through those holes, you will likely see white sheets. Those are the diffusers and we are trying to get to those. Unscrew the screws holding the plate together and remove the plate. To do this, we have to take the front plastic casing off so you"ll have to flip the TV. Do this carefully as you do not want to risk damaging the LCD panel.
Take the casing off and work your way unscrewing until you get to the LCD panel. Gently and safely remove the connectors to the panel. The green and brown connectors DO NOT come off. If it looks like it won"t come off, it most likely won"t. Be very careful here.
Lay the LCD panel safely on a flat surface and wrap it with a blanket or something that will protect it. The panel is ~2 mm thick and thus, easily warped. Have a friend help you handle it so you distribute the weight evenly. Now think back to all that theory you read in the previous section and be amazed at how compact the panel is.
Right under the LCD are the white diffusers. Take care as they are likely to be statically charged. The diffusers serve to evenly distribute the white light under the panel from the back-light. You may not need all three though. We opted to use the thickest one as the others did nothing for us. The case may be different for you. For now, just keep them until the testing of the LCD display.
Recall the last section where I advised you to take pictures of each and every connection. This is where all will come in handy. In this section, we will be essentially rebuilding the LCD TV on your box. How you do this is going to depend solely on how you chose to design your box a couple of sections back. As for our team, we decided to go with designing an inner box that would later be concealed within another outer box. We simply used wood screws to screw the boards onto the back side of the inner box. The important thing to consider is to be careful that you don"t crack the boards while screwing them onto the wood. For now, disregard the LCD panel. Do not place it until the next section as we must discuss the layering for the table. However, you do have the option of placing your computer along with the boards of the LCD. There is a great amount of flexibility when choosing a computer. To be honest, as long as it has over 512 MB RAM and is HDMI compatible, the computer will perform nicely. Any recent/decent PC will do--even a laptop if you so wish. We"ll talk operating systems later on. For now, just choose your favorite as we have to set everything up.
Assuming you calculated the height of your table based on your camera lens as I advised in the previous planning sections (or have prepared an appropriate platform for elevating the cameras to their needed height), place the cameras where they need to be. You need to perform the above calculations for centering your cameras as well.****If you do not yet understand how to perform any of these equations, you can PM me and I will try to help. You simply use the FOV for the camera to determine a distance from the screen where the cameras can see portion desired from the screen. This should give you an idea of proper height and placement for the cameras.
ghosting refers to the "naturalness" of your interaction with the table. We say there is too much ghosting when the Acrylic layers are too thick or ordered in a way that your touch doesn"t seem to feel right. If your touch layer is, for example, an inch from the projection layer, the effect of refraction will be heavier and you will feel as if your touches are off. This is a problem in that you won"t get the full touchscreen experience.
Transparency refers to the user"s ability to see through the LCD. This can be used either creatively or it can be bad. The line between right and wrong is mainly blurred on this issue.II. Example setups : I will now share the setups we experimented with and allow you to pick the best choice:
**Report: Heavy ghosting occurred due to the support being so thick. Also, the collisions in the IR wouldn"t escape the 10 mm piece through the diffuse layer. Barely got blobs registered unless the the user increased pressure of touch (which could harm the integrity of the system) AND removed the protective layer. Also, the distance between the camera and layers was too great. Discovered that it works better if the camera distance was reduced, the thickness of the IR and support were reduced:
**Report: Perfect blobs read. Additionally, decreasing the size from 3 ft to 1.6 ft would only make it better (allowing for us to place a protective layer). The downside is that since the diffuse layer has been removed, the transparency increases. We sacrifice transparency for perfect detection and virtually no ghosting. The transparency is not bad when the is no ambient light ( it is non intrusive). If the user wishes to use the table in an area with ambient light, this setup is not recommended as they will not see the screen performing at maximum quality. If the user is creative, they can show off the guts of the system and make it very presentable. You can attempt this:
**Report: Not recommended unless a support layer is added (LCDs are very fragile), but it is an interesting setup. received perfect blobs, no ghosting, yet great deal of transparency. Perhaps adding a layer of support and a thin diffuse layer will work.
A. The diffuser sheet we used was the thicker one that is packaged with the LCD as my teammate accidentally threw away the smaller ones. I am fairly certain that the thinner sheets would have worked best to reduce transparency in the case of the setups we built without diffuse layers.
C. I did not feel that I needed to thoroughly explain the re-assembly for the LCD panel onto the box. All that you have to do is place it down on top of your support layer and reconnect the appropriate FFC to the sockets on the T-con Board. It is important that you connect them to the sockets they correspond to. Also, make sure the sockets are clean and that the FFC are in correctly. If you place them backwards or incorrectly, you may see a column of dead pixels. This is nothing to be too alarmed about as you only need to fix the connection.
Once you are content with a specific layering, turn on the TV and watch something (or use your computer). Make sure that you have a mouse and keyboard as you are not yet able to receive responses for your inputs. Also, make sure that your white LEDs are on (doesn"t matter if your IR LEDs are on for this step). If you can see as we did in the picture above, then all is well and you should congratulate yourself on being one of the few people to re-purpose an LCD and have it work on the first try!
Screen is black? Turn on white LEDs. If LEDs are on, make sure they are white and not IR. If still no picture, your Flat Flex Cables are connected in the wrong order.
We will be running a variety of warez for this project to work. Luckily for us, the NUI community has already developed an open source version of the tracking software in order for the controller to properly determine whether an instance is a touch event or not. This is mostly lucky in that there are many tracking suites out there that go for a good $3,000 or so. The program we will be using, CCV, runs equally as great and is much easier to troubleshoot. This, however, does not mean that it is an easy process. I will start by emphasizing that you will come across many problems while attempting to run CCV. Your system may require you to do different things in order to get it working. Also, if you are running Windows 8.1 (although it would be an appropriate OS for multi-touch) , the documentation is very scarce. The reason you will rarely find any information regarding software setup is that many of us who get it to work have done so by some stroke of luck. Depending on your machine, you may also need to install the different packages in a certain specific order.
The algorithm for tracking and maintaining touch events is a bit complex, yet very fascinating. Keep in mind that although Jeff Han pioneered the use of IR technology in his Frustrated Total Internal Reflection (FTIR) multi-touch displays just recently, the software techniques have been used for a long time.
* You can learn more about this on the NUI group"s publication Multitouch Technologies available for free on the NUI group"s forums or above as a .pdf file. This is a short two chapter book aimed to educate beginners before they risk it all in attempting to construct a multi-touch display. The full explanation of the above equation is included in this book as well.
Microsoft"sWindowsWindows 8/ Windows 8.1/RT: Windows 8, RT, and 8.1 were optimized for the touchscreen apparatus. The metro offers a rich experience that feels like it was created specifically for a multi-touch device. Also, the corner sliding and huge amount of touchscreen apps already available through the windows store offer this OS a great advantage. We personally chose this OS because it was the easiest to set up. The NUI group; however, does not have too much documentation on this OS as it is not the preferred Windows OS. Also, a couple of changes in the coding made two library files be missing in this update--this only means that you"ll find yourself downloading additional files an databases in order to compensate. Also, you must choose whether to overlay or keep the built-in touch system. The NUI community will push for the use of Touch Injector as a service to give the inputs functions rather than the established MT Vista. Also, since the three versions were written differently, the setup may be different. There are blogs whose users have modded the appropriate software in order to be optimized for your version. You may encounter problems such as no input being shown, the touch-tracker not showing up on start-up, and permission revocation. You must be the account"s administrator and run the warez in this mode in order for things to work properly. Lastly, since the warez is open-source for the most part, you may have conflicts with your anti-virus application. Simply treat these as false positives and move on.
Windows 7: It is smooth, fast, and perfect for multi-touch. Similar to the above version, you should try to build your setup in a way that the corners are free for touching as the start menu and the important apps for this are located on the task bar"s corners by default. You will need to install a number of services in order to get your input recognized by the controller, but this has the most documentation to any other OS in the NUI forums. You should not have many problems dealing with this OS when it comes to multi-touch. Also, if you are a student, you may have access to the Microsoft Surface Developer Kit which will increase the functionality of you table. You can also experiment with building your own frameworks and graphical interfaces if you so desire--which is always a great thing. If you are an avid windows fanatic, I would recommend this OS as it is a blessing.
Windows Vista/ XP:I grouped Vista with XP since after the service packs released for these OS", XP and Vista simply become Windows pre-7.1. I do believe their service has been discontinued (don"t quote me on that) so I would not recommend these if you are worried about a longer-term experience with your table--I"ve not yet attempted to upgrade or downgrade an OS with the multi-touch Warez already installed. Other than that, you"ll be finding a good amount of support in the NUI forums due to the newer software simply being a modded version of software originally for XP and Vista. You shouldn"t have too many problems with these, but i recommend not to go here unless you are planning to run a virtual machine with a more updated OS--most apps have been optimized for the more recent OS" and I"d recommend starting at 7 if you want that old-fashioned Windows appeal. ** Side Note: Consider installing a program named Rain-meter. Rain-meter takes the widgets introduced in vista to a new level by allowing you to set up your computer exactly how you"d like it. You can create futuristic displays or even have sound output given for certain actions. This app is compatible with most Windows OS versions as far as I am aware. I use it last on my personal Win 8 laptop setup. Ubuntu offers an applet for this named Conky. If you use Conky, I advise downloading Conky Manager.
Linux OS:Canonical"s Ubuntu (any release from 12.04 LTS to 13.10): When it comes to Linux OS", people seem to think you must be a hacker, or an overly obsessed computer maniac in order to understand what is going on--the movies seem to portray Linux as a completely text-based OS, and who wants that? Well, let me be the first to tell you that they are wrong! Ubuntu is a FREE (although I"d recommend leaving a donation to the company when downloading) OS distributed by Canonical that is beyond wonderful. It is classified under the "Debian-like" distributions as this is where it is sourced from. Ubuntu is virtually updated daily and provides the highest sense of security for the average user. It handles similarly to Windows, yet it has it"s own advantages that a Windows OS could not provide you. A big pro is that you won"t find your system being infected by viruses. Although you can still contract Trojans and such, your system will be unharmed as the viruses are written for Windows users--they won"t open and execute on Ubuntu or any Linux distro (unless you use WINE, a windows emulator for Linux). If you dual boot with Windows, you can even use Ubuntu to rid your Windows partition of any infections it may have. Ubuntu 13.10 (dubbed "Saucy Salamander") was written with touchscreen devices in mind much like windows 8; however, the format of the graphical interface is non-intrusive, and the options are all equally optimized for the non-touch aficionado. Paired with a variety of apps that you can find in their software center, you can make this desktop exactly what you want it to be, giving you the ultimate freedom and maneuverability. So what"s the problem with it then? It is very hard to find any documentation on setting up an Ubuntu multi-touch setup on the NUI forums. This is due to many of the programs that are needed for touch implementation being written with Windows users in mind. You"ll have to find a replacement capture software--I"ve heard Cheese or VLC Media Player work well with Ubuntu in place of the CLeye for the PS3 eye, but you WILL have to experiment and go through a lot of hard work in order to get this setup to work. The few that I"ve seen are gorgeous, so it IS worth the trouble. I am personally planning on getting my table back soon in order to experiment with changing the OS back to Ubuntu. Also, while on Ubuntu, you"ll find yourself dealing with the Terminal (Linux equivalent of the Command Prompt console or Powershell) more than anything else. Although everything gives you the option of graphical input, you may find the terminal to be more satisfying. If you want to learn about computers, processes and all that goes into providing a rich, safe, and efficient user experience, I"d say give any Linux distro a chance.
Now that we chose an OS, let"s talk about what we need to get things working for us. Keep in mind that for our setup, we decided to go for a Windows 8 setup as it was freely available to us as a donation from our software guy and since it was also the easiest for him to develop for under the time we had set out for the project. This is the warez you will need to make touch work:
CCV stands for Community Core Vision, the open-source and NUI group-developed tracking software at the basis for any multi-touch table you will find to be built in the NUI group forums. It comes with its own handy interface that luckily does not change too much in between version revision. I believe the CCV distro we are currently in is 1.5--this is the one we used since it has documentation and support for multi-camera setups. There is a mod in the NUI forums for 1.4 that allows it to accept multi-camera setups. The more cameras, the faster your table and the smaller you can build it. I"ve explained in a very layman"s terms how this program works in the Understanding Software section. There are various replacements to this program, although I do not recommend going that route as the NUI forums specifically highlight CCV over all other programs.
The Code Laboratories SDK for the PS3 eye. It comes with a variety of drivers and tools to sync and configure the PS3 eye to your setup via the computer. If you are working with CCV 1.5, I recommend downloading this first and making sure that your input can be read through this program. The graphical interface should display the capture of your blobs as you touch the table. Once you"ve got this done, you can proceed to CCV capture. There is a problem with registration regarding the CLeye though. The SDK requires that you buy a license for ~$35 in order to get the software to work. Luckily, there are a couple of ways to circumvent this; however, you will be making things harder for yourself as the process requires the handling and manipulation of DLL files. This could potentially mess up your software setup and force you to have to re-install everything all over again many times. You can find the drivers for the CLeye to be detailed on the main CCV 1.5 forum post given in the CCV section or here, and here is the CLeye site.
Since we"re on Windows 8, we have to find a replacement for MT Vista that will work as a service for your inputs. For this, we use Touch Injector. This was also developed in the NUI group and handles very well. It also has quite a bit of documentation and there are tons of forum posts on debugging and troubleshooting.
links for a TUIO mouse driver that may replace Touch injector: http://nuigroup.com/forums/viewthread/14725/ --this will convert touch events into Windows touch events.
Refer here for TUIO software* A note of Clarity: TUIO is a protocol used for describing the position and such of the blobs. If you can remember my explanation of CCV in the past sections, you will realize that CCV outputs TUIO messages regarding your inputs. TUIO stands for Tangible User Interface Protocol. Expanding on this, we need an application that will take those messages as an input and convert them to touch. Touch Injector takes these messages and converts them to native touch. But what if you wanted to go the other way and take native touch and convert it to TUIO? Refer to this thread.
Assuming that your blobs are perfect, and that you are satisfied with the framerate and all other factors, the final thing to do is to calibrate CCV settings. Once again, Sandler has provided an amazingly detailed guide on the steps for proper calibration. I advise that you go read it here. Once you are done with this step--if successful--you have essentially finished the construction of your setup. Your efforts and money should have (hopefully) paid off, and you will be the proud owner of an LCD-based DSI touch screen table that is fully functional and pleasing.
If you realized anything from this instructable, let it be this: Multi-touch isn"t just a toy, nor is it a technology that we should take too much for granted. Projects like these are gateways to the future of NUI technologies. Multi-touch facilitates the branching toward the naturalization of the human to computer interface. Children are able to become more engaged and willing to learn about technology in this manner--as we are a species that yearns for feedback from our senses--and the elderly and disabled peoples can find more comfort and relief in navigating these devices. More importantly, Multi-touch opens the door to greater technologies such as Pranav Mistry"s SixthSense gestural interface (an instructable that may make it"s way sooner than you may think) and a host of other interface revisions--some of which I am not able to fully reveal as I am planning on developing. The fact that you"ve completed this project is truly something to boast about.
**Update: I wanted to take a moment to thank all my viewers and subscribers for voting and allowing me to win my first contest! Can"t wait to start on my next large-scale project--after I do some more finishing touches on this one of course.
Of course, not all of us have a huge point to prove. Maybe you want to make a Multitouch table without having to spend so much money. I admit, as time has passed, it has become much easier to develop these devices for a smaller cost, and aside from the size of the display, you won"t be losing much at all.
i) Parts if going the camera route:LCD TV: I can give you links to these three. They may soon be unavailable as I"ve recommended them to many other users, but you can always use their LED TV derivatives as well. Vizio has a great selection of LCD and LED TVs (I promise I"m not trying to sell you their products) And I tend to generally trust their TVs to comply and be cleared from the FFC issue. Here is a 23" and 24" i think would be worth taking a look at.
Touch Frame: This will take care of your camera, LEDs, Acrylic for just $385 (we are going for 32 touches as this is a true multi touch setup). Be very careful because a display less than 24" will cost you a lot since they are not sold individually on a regular basis. above 24", you"re safe! And yes, a 24" frame is good for the 23" TV.
II. Options for a $400 or less budget:As far as LCD, the smaller the diagonal, the cheaper your table will be. So at a $300 budget (If you"re not wanting to move past that) I"d get a 17-19" TV (usually $45 on eBay if you can find one). Keep in mind that you are sacrificing HD capability if you don"t already own an HD-ready computer.
Considering an ordinary camera and just adding a floppy disk as the IR band-pass filter? I"d say don"t do that either. If you want an optimal setup, THIS WILL NOT WORK. In the old days, it was the smart thing to do but now, we buy our cameras to match the IR wavelength exactly. Makeshift Band-pass filters usually fail at rapid and smooth input detection. Also, if configured incorrectly, nothing will work. In terms of the camera, the PS3 eye is THE camera of choice for the NUI group. All the drivers and protocols in CCV are optimized for it. It would be wise to stick with it.Do I have other options on the camera? Not any cheap ones.Point Grey is a popular option for those willing to go all out; however, if you buy a proper IR Band-pass filter and configure your own PS3 eye, you"d save quite a bit of money (~$20).What"s the difference between LCD and LED TV? The only difference is the back-light. LCD uses Cold Cathode Fluorescent Lamps (CCFL) tubes and LED uses white LEDs. That"s it!What"s the theoretical layering for the Touch frames? The layering becomes much simpler since the frames take care of everything now. IR detectors and emitters surround the inner section of the frame--removing the need for most of the components. Thus, the layering reduces to:
Hey Man..first off great tutorial. Super detailed. I had a question maybe you can help. I already made a table with a 55" Samsung plasma TV. The TV was removed from the frame and set into the top of the table with a thin sheet of acrylic for protection (I have a super inquisitive 2 yr old). I have seen commercial display overlays ($600+) that use an IR matrix and simply tracks where the finger breaks the IR beam and assigns the X/Y coordinate on the screen. It connects using a regular USB cable right into the PC. The USB provides power and input. I like the idea of this as I would simply use it for simple touch applications like web surfing or perhaps a kids painting program. It claims to support 100+ mulittouch inputs. Any idea on the program used or what could be used for reading the IR matrix? I grasp the hardware concept.. IR beams travel vertically and horizontally with an IR receiver on the opposite site of the frame. For example the IR LEDs would be at the top and the left where the IR receiver would be on the bottom and the right. I believe I can build the frame overlay, but I"m stuck on the software portion. I should mention I am running Ubuntu 17.1. I should mention the table has an app controlled Arduino relay setup underneath for a motorized gun drawer and lighting. I appreciate any input you have, or anyone here for that matter. Thanks in advance!
This is an awesome and insanely detailed set of instructions! I"m currently planning to build something like it, but wanted to ask a few questions: How much pressure is required for this setup to register a touch? I ask because I"d like to be able to place other objects on the table, not just fingers. For example, place a ruler on the table for use as a straight edge in a drawing program or place game pieces on the table for a digital board game. Is your approach able to recognize lightweight objects like this? An alternative approach I"m considering is using computer vision to recognize fiducials on the underside of objects set on the screen. Could this be incorporated into this set up? Would you be willing to point me in the direction of more such resources that I could read (Googling only gets me so far...)?
Hi guys, I"m hoping to use the same setup but am wondering about the use of tangibles with a Touch Frame - is this what you are using? The manufacturer seems doubtful.0
No. Using touch frames, you forfeit being able to do fiducials. We did not use a touch frame, we built our own table by generating IR with other sources and capturing with a modded PS Eye0
The Cameras are specially tailored to work in the infrared spectrum. Basically, they have a filter on the lens that prevents them from seeing any visible light. This makes them work almost like positional sensors and gets you the ability to detect touch events.0
CCV includes some functionality for camera stitching. Depends on the size of your screen, but with simple geometry, you could bring down the size considerably.0
but I have a question! Can i use my laptop or desktop screen to create something of this nature and can i create my own programs that will makes it look awesome??
Good job jamal_7lna!!...i am doing college project based on this where i have to interface the touch table cpu with my microcontroller wireless mode,could you shed some light thank you! :)
IR wouldn"t be a problem in terms of eye safety or EM radiation exposure. You"d be good. You can use capacitive, but you"d be compromising on response time, fiducial usage, and touch-point limit. If you really want to do something for commercial, capacitive may be your best bet tho (only because of return on investment). The table I built here is for hobbyists. The gold-standard nowadays uses ir emitters and sensors in an array format to increase response. Using this guide for building a commercial system (or any on the internet right now) won"t get you anywhere. I encourage you to read up on detectors and electronics systems. If you could get something made with an OLED type screen and a camera/detector array, you"d hit a gold mine. Think about it: Folding touch tables!More CommentsPost Comment

In this Arduino touch screen tutorial we will learn how to use TFT LCD Touch Screen with Arduino. You can watch the following video or read the written tutorial below.
For this tutorial I composed three examples. The first example is distance measurement using ultrasonic sensor. The output from the sensor, or the distance is printed on the screen and using the touch screen we can select the units, either centimeters or inches.
The third example is a game. Actually it’s a replica of the popular Flappy Bird game for smartphones. We can play the game using the push button or even using the touch screen itself.
As an example I am using a 3.2” TFT Touch Screen in a combination with a TFT LCD Arduino Mega Shield. We need a shield because the TFT Touch screen works at 3.3V and the Arduino Mega outputs are 5 V. For the first example I have the HC-SR04 ultrasonic sensor, then for the second example an RGB LED with three resistors and a push button for the game example. Also I had to make a custom made pin header like this, by soldering pin headers and bend on of them so I could insert them in between the Arduino Board and the TFT Shield.
Here’s the circuit schematic. We will use the GND pin, the digital pins from 8 to 13, as well as the pin number 14. As the 5V pins are already used by the TFT Screen I will use the pin number 13 as VCC, by setting it right away high in the setup section of code.
I will use the UTFT and URTouch libraries made by Henning Karlsen. Here I would like to say thanks to him for the incredible work he has done. The libraries enable really easy use of the TFT Screens, and they work with many different TFT screens sizes, shields and controllers. You can download these libraries from his website, RinkyDinkElectronics.com and also find a lot of demo examples and detailed documentation of how to use them.
After we include the libraries we need to create UTFT and URTouch objects. The parameters of these objects depends on the model of the TFT Screen and Shield and these details can be also found in the documentation of the libraries.
Next we need to define the fonts that are coming with the libraries and also define some variables needed for the program. In the setup section we need to initiate the screen and the touch, define the pin modes for the connected sensor, the led and the button, and initially call the drawHomeSreen() custom function, which will draw the home screen of the program.
So now I will explain how we can make the home screen of the program. With the setBackColor() function we need to set the background color of the text, black one in our case. Then we need to set the color to white, set the big font and using the print() function, we will print the string “Arduino TFT Tutorial” at the center of the screen and 10 pixels down the Y – Axis of the screen. Next we will set the color to red and draw the red line below the text. After that we need to set the color back to white, and print the two other strings, “by HowToMechatronics.com” using the small font and “Select Example” using the big font.
Now we need to make the buttons functional so that when we press them they would send us to the appropriate example. In the setup section we set the character ‘0’ to the currentPage variable, which will indicate that we are at the home screen. So if that’s true, and if we press on the screen this if statement would become true and using these lines here we will get the X and Y coordinates where the screen has been pressed. If that’s the area that covers the first button we will call the drawDistanceSensor() custom function which will activate the distance sensor example. Also we will set the character ‘1’ to the variable currentPage which will indicate that we are at the first example. The drawFrame() custom function is used for highlighting the button when it’s pressed. The same procedure goes for the two other buttons.
So the drawDistanceSensor() custom function needs to be called only once when the button is pressed in order to draw all the graphics of this example in similar way as we described for the home screen. However, the getDistance() custom function needs to be called repeatedly in order to print the latest results of the distance measured by the sensor.
Ok next is the RGB LED Control example. If we press the second button, the drawLedControl() custom function will be called only once for drawing the graphic of that example and the setLedColor() custom function will be repeatedly called. In this function we use the touch screen to set the values of the 3 sliders from 0 to 255. With the if statements we confine the area of each slider and get the X value of the slider. So the values of the X coordinate of each slider are from 38 to 310 pixels and we need to map these values into values from 0 to 255 which will be used as a PWM signal for lighting up the LED. If you need more details how the RGB LED works you can check my particular tutorialfor that. The rest of the code in this custom function is for drawing the sliders. Back in the loop section we only have the back button which also turns off the LED when pressed.

Rather than plug your Raspberry Pi into a TV, or connect via SSH (or remote desktop connections via VNC or RDP), you might have opted to purchase a Raspberry Pi touchscreen display.
Straightforward to set up, the touchscreen display has so many possibilities. But if you"ve left yours gathering dust in a drawer, there"s no way you"re going to experience the full benefits of such a useful piece of kit.
The alternative is to get it out of the drawer, hook your touchscreen display to your Raspberry Pi, and reformat the microSD card. It"s time to work on a new project -- one of these ideas should pique your interest.
Let"s start with perhaps the most obvious option. The official Raspberry Pi touchscreen display is seven inches diagonal, making it an ideal size for a photo frame. For the best results, you"ll need a wireless connection (Ethernet cables look unsightly on a mantelpiece) as well as a Raspberry Pi-compatible battery pack.
In the example above, Belkin WeMo switches and a Nest thermostat are manipulated via the Raspberry Pi, touchscreen display, and the InControlHA system with Wemo and Nest plugins. ST:TNG magic comes from an implementation of the Library Computer Access and Retrieval System (LCARS) seen in 1980s/1990s Star Trek. Coder Toby Kurien has developed an LCARS user interface for the Pi that has uses beyond home automation.
Building a carputer has long been the holy grail of technology DIYers, and the Raspberry Pi makes it far more achievable than ever before. But for the carputer to really take shape, it needs a display -- and what better than a touchscreen interface?
Now here is a unique use for the Pi and its touchscreen display. A compact, bench-based tool for controlling hardware on your bench (or kitchen or desk), this is a build with several purposes. It"s designed to help you get your home automation projects off the ground, but also includes support for a webcam to help you record your progress.
The idea here is simple. With just a Raspberry Pi, a webcam, and a touchscreen display -- plus a thermal printer -- you can build a versatile photo booth!
Projects along these lines can also benefit from better use of the touchscreen. Perhaps you could improve on this, and introduce some interesting photo effects that can be tweaked via the touchscreen prior to printing?
How about a smart mirror for your Raspberry Pi touchscreen display project? This is basically a mirror that not only shows your reflection, but also useful information. For instance, latest news and weather updates.
Naturally, a larger display would deliver the best results, but if you"re looking to get started with a smart mirror project, or develop your own from scratch, a Raspberry Pi combined with a touchscreen display is an excellent place to start.
Want to pump some banging "toons" out of your Raspberry Pi? We"ve looked at some internet radio projects in the past, but adding in a touchscreen display changes things considerably. For a start, it"s a lot easier to find the station you want to listen to!
This example uses a much smaller Adafruit touchscreen display for the Raspberry Pi. You can get suitable results from any compatible touchscreen, however.
We were impressed by this project over at Hackster.io, but note that there are many alternatives. Often these rely on compact LCD displays rather than the touchscreen solution.
Many home automation systems have been developed for, or ported to, the Raspberry Pi -- enough for their own list. Not all of these feature a touchscreen display, however.
Another great build, and the one we"re finishing on, is a Raspberry Pi-powered tablet computer. The idea is simple: place the Pi, the touchscreen display, and a rechargeable battery pack into a suitable case (more than likely 3D printed). You might opt to change the operating system; Raspbian Jessie with PIXEL (nor the previous desktop) isn"t really suitable as a touch-friendly interface. Happily, there are versions of Android available for the Raspberry Pi.

Supply your customers with the best wholesale diy touch screen overlay from Alibaba.com, one of the world"s largest B2B marketplaces. Our options include touch screen monitors for pc, portable touch screen monitors and more so they can start tapping and pinching their screens right away.
When choosing the best touch screen monitor for their needs, customers will look at a variety of factors. Firstly, there are large touch screens available but the maximum that is comfortable for use with hands is a 32 inch touchscreen monitor. Any bigger than that and customers will not be able to reach the four corners. These diy touch screen overlay are best used for visual artists to draw on and video editors.
You can also look at portable monitor touchscreens which run from the laptops battery and are small diy touch screen overlay. They can also be used for projects involving single board computers. Additionally, we also have a lot of options for smart tv touch screens which are great to incorporate into home entertainment systems and allow users to surf the net, send messages on more right from their living room.
Look through Alibaba.com listings for touch screen panels and find the perfect one for your customers. Start ordering today from our suppliers and ask them for more information if needed.

SSI Multi Touch Overlays and Touch Frame products are the latest, most efficient, and most accurate simultaneous points-of-touch technology available on the market today. We offer touch frame products that can accurately track anywhere between 2 and 40 simultaneous sources of input. All overlays give a user the ability to drag, drop, swipe, throw, rotate, and size images. The higher the number of touch points, the more users can operate the display at the same time.
Multi Touch Screen Technology can dramatically improve just about any computer-based interaction: Trade Show Displays, TV Studio Sets, Business Lobby Display Boards, Video Walls, Conference Rooms, to name a few.

Building your own touchscreen has been quite the hype on the interwebs. The DIY projects out there can be very good and it does not have to be that expensive. Add the rise of the ‘smartphone’ and possibilities are endless.
Tonfilm is Humanworkshops’ touch screen specialist. One of his projects is the now famous ‘interactive multitouch cocktail bar’. This nifty project is expensive to say the least and presumable in most cases only for professional use (for clubs and bars etc). But don’t be fooled, even this table runs on software you can download for free. (VVVV more info below) Also be sure to check out B-film, a collab between Leisure-B and Tonfilm who use VVVV and touch screens in their live set up.
You don’t need to be an expert to make a DIY touch screen with all the tutorials out there, and it’s pretty cheap too – some tutorials only use paper and a cam as hardware.
The practical use of multi touch screens is obvious; controlling multiple parameters at the same time with direct visual feedback. This makes it ideal for live action.
The Lemur by Jazz Mutant is an impressive piece of hardware that has brought multitouch on stage. Luckily there is a (much cheaper) software alternative called Usine And I personally really am amazed by what the possibilities are. (Note; there is a touch screen kit available for around $200 which goes pretty well with Usine, not multi touch though!).
The smartphone/pda has some nice potential, because besides having a multitouch surface in many cases, the phones also have tilt sensors, giving you another dimension of control.

Digital graphic touch screen overlays transform any large display into a state-of-the-art interactive touch screen and whiteboard. Touch Screen Overlays attach to the front of your existing LCD, TFT, or Plasma display monitor giving it instant touch interaction with your device transforming your display into a Human Machine Interface. Touch Screen Overlays can provide an excellent way to seal your display from dust, particulate contaminants, and moisture ingress up to IP67 with proper design.
In addition to our many product capabilities, at Dyna-Graphics, we provide fully customized touchscreen panel overlays for your interactive touchscreen needs. Our capacitive and resistive touch screen overlay systems allow for complete interactive capabilities with any type of Plasma, TFT, or LCD display monitor.
Contact us for more information regarding our resistive and capacitive touch screen overlay product options, or call us at 800-959-0108 and we will gladly assist you with your specific touchscreen panel overlay questions. Dyna-Graphics is your premier source for technologically advanced touch screen overlays.
There are a few key differences between capacitive and resistive touch screen technologies. A resistive touchscreen is comprised of several layers, out of which the flexible plastic and glass layers are the two most important electrically resistive layers. When a finger or stylus tip presses down on the outer surface, both the ITO films meet, which leads to an accurate measurement of the touch position.
In comparison, a capacitive touchscreen also consists of two spaced layers of glass, which are coated with conductor such as Indium Tin Oxide (ITO). The human body is then used as a conductor, so when a finger touches the glass of the capacitive surface, it changes the local electrostatic field, which creates the interaction. The system continuously monitors the movement of each tiny capacitor to locate the next area of touch.
Touch Screen overlays incorporate sophisticated optical imaging technology and a robust design to provide a durable touch solution perfect for high-traffic public applications. The hard coated plastic overlay preserves the displays optics and protects it from damage or abuse. Touch Screen overlays are easy to install and use, making it easy to take your standard display screen and convert it to touch screen HMI capable. In addition, overlay tough technology is designed with a wealth of features to ensure long-lasting durability and functionality. Give us a call at 800-959-0108 to discuss your project requirements.
Dyna-Graphics has been designing, engineering, and manufacturing custom touch screen overlays for more than 20 years. Our touch screen overlays are durable and versatile enough for applications ranging from construction equipment interfaces to medical equipment overlays. Working from your designs, we will deliver touch screen digital graphic overlays that match your unique specifications. We provide the following touchscreen panel overlay options:
We can provide complete, built-to-spec touch screen assemblies to complement your custom touch screen panel overlays. Manufactured to match your design exact specifications, these touch screen assemblies include all the parts and components the module needs:
Dyna-Graphics utilizes hard coated lenses in all our custom touch screen overlays and panel displays. These lenses enhance incandescent, LED, fluorescent gas, and liquid crystal displays for superior visibility. Light sources can be exposed or totally sealed, as your application requires.
Capacitive and resistive touch screen overlay systems provide numerous advantages for a wide range of industries and applications. Our touch screen overlays are simple to operate and are ideal for applications that span various industries throughout the world. As a premium touchscreen panel overlay provider our capacitive and resistive touch screen overlay are regularly used within the following industries and applications.
Whatever your unique need may be, Dyna-Graphics can deliver the perfect custom touch screen overlay solution. Our products are designed and manufactured to meet customer specifications. Every product we produce is thoroughly tested to ensure reliable performance and long working life.
Contact Dyna-Graphics for more information regarding our custom resistive and capacitive touch screen overlay options that provides a simple and convenient conversion of your standard computer monitor into an overlay touch panel. Or request a quote for further pricing details today. Dyna-Graphics is your trusted source for touchscreen panel overlay systems.
Ms.Josey
Ms.Josey