Touchscreens in embedded applications Shaun Levin Joe Quesada Dru Steeby
Agenda Explain Resistive Touchscreens Explain Capacitive Touchscreens Surface Acoustic Wave Touchscreens How to Pick a Touchscreen
Resistive Touchscreens
Resistive Touchscreens Advantages: Cost Effective and durable, can be used in most environments. Screen responds with any type of object fingernail, naked finger, pen, stylus, gloved finger, etc Disadvantages: No Multitouch. Less transparency (~80%) than capacitive screens (~90%).
Resistive Touchscreens How do they work? General Idea: Two planes separated by a "microdot" surface. This makes it so that the planes are separated when not being touched, but when they are touched the planes make contact. This sits on top of a separate LCD screen.
Resistive Touchscreens http://www.telecomcircle.com/2010/03/touchscreen/
Resistive Touchscreens But how does that determine the coordinates? There are several different methods to determine where on the screen your finger has touched. 4-wire and 5-wire are among them, with each getting more complicated and more expensive as you add more wires.
Resistive Touchscreens 4-wire method: http://mehtadhaval.blogspot.com/2011/04/touch-screen-interfacing-with.html
Resistive Touchscreens
Resistive Touchscreens 5-wire method:
Resistive Touchscreens Interfacing with a microcontroller: Arduino Uno makes this really easy!
Nintendo DS touchscreen $10 at sparkfun.com 2.2 by 2.75 inches https://www.sparkfun.com/products/8977 https://www.sparkfun.com/products/9170 Nintendo DS touchscreen Breakout board $4 at sparkfun.com used to easily connect the pins to wires
Capacitive Touchscreen
Capacitive Touchscreens Advantages: Very transparent display (up to 90%) Can support multi-touch High accuracy touch resolution No finger pressure needed Disadvantages: Can only sense conductive material naked finger, special stylus Requires a dedicated controller Complicated and expensive
Capacitive Touchscreens How do they work? General Idea: One side of an insulator is coated with conductive material and energized, creating a uniform electrostatic field. When a finger or other conductor touches the other side of the insulator, the capacitance at that point increases. A controller reads the capacitance to find the location of the finger. http://www.maxwellrosspierson.com/wp-content/uploads/2009/03/capacitor.gif
Capacitive Touchscreens Surface Capacitance http://www.telecomcircle.com/wp- content/uploads/2010/03/Capacitive-Touch-Screen.png Uniform electrostatic field Sensor reads capacitance at each corner Touching finger increases capacitance at a point Low resolution Example of surface capacitance (mainly used in kiosks) add multitouch
Capacitive Touchscreens Self Capacitance Grid of independent electrodes and current sensors Sensors read capacitance at each row and column Finger increases capacitance at node Single finger High resolution Mutual Capacitance: - Rows of driving lines and columns of sensing lines, making a grid - There exists a mutual capacitance between the sensing lines and the driving lines - When a finger touches the top, the mutual capacitance between the sensing and driving lines decreases - Detection algorithms determine where the finger touched based off of the changed mutual capacitance on the sensing lines. Self Capacitance: - A grid of electrodes connected with capacitance-sensing circuitry - When a finger touches the top, the charge held by nearby electrodes changes due to the increased capacitance - Detection algorithms determine the X and Y lines with the peak changes to determine where the finger touched Mutual capacitance allows for multi touch, but it becomes incredibly processor-intensive as the size of the screen increases. It is no longer feasible after the screen reaches about 15 inches. http://static.ddmcdn.com/gif/iphone-rev-3.jpg
Capacitive Touchscreens Mutual Capacitance Grid of intersecting sensing and driving lines where each intersection has natural mutual capacitance Sensor reads mutual capacitance at each intersection Finger touch reduces mutual capacitance at intersection Multi-touch - up to 15 points Large grids (>15") become too CPU expensive Mutual Capacitance: - Rows of driving lines and columns of sensing lines, making a grid - There exists a mutual capacitance between the sensing lines and the driving lines - When a finger touches the top, the mutual capacitance between the sensing and driving lines decreases - Detection algorithms determine where the finger touched based off of the changed mutual capacitance on the sensing lines. Self Capacitance: - A grid of electrodes connected with capacitance-sensing circuitry - When a finger touches the top, the charge held by nearby electrodes changes due to the increased capacitance - Detection algorithms determine the X and Y lines with the peak changes to determine where the finger touched Mutual capacitance allows for multi touch, but it becomes incredibly processor-intensive as the size of the screen increases. It is no longer feasible after the screen reaches about 15 inches. http://static.ddmcdn.com/gif/iphone-rev-2.jpg
Capacitive Touchscreens Multitouch only works on Mutual Capacitance http://electronicdesign.com/content/content/64835/64835-fig2.jpg
Capacitive Touchscreens CPU work required http://static.ddmcdn.com/gif/iphone-rev-4.jpg http://static.ddmcdn.com/gif/iphone-rev-5.jpg
Capacitive Touchscreens Interfacing with a microcontroller: Either have to buy the touchscreen and controller separately (difficult to match) or buy them bundled together Can also buy LCD, touchscreen, and controllers all bundled together Controllers use standard protocols: I2C, SPI
Capacitive Touchscreen Example Product: NHD-3.5-320240MF-ATXL#- CTP-1 $45 from Mouser or DigiKey 3.5" TFT Display SPI controller (left) Capacitive Touch panel I2C controller (right) Capable of up to 5 touch points http://www.mouser.com/images/newhavendisplay/lrg/NHD-3.5-320240MF-ATXL-CTP-front_LRG.jpg
Capacitive Touchscreen Sample code to read touch data (taken from product datasheet): byte i, touchdata_buffer[0x20]; i2c_start(); // send a start code i2c_tx(0x70); // send device address 0x70 in write mode (LSB==0) i2c_tx(0x00); // tell device that we are reading from internal address 0x00 i2c_stop(); // send a stop code i2c_tx(0x71); // send device address 0x70 in read mode (LSB==1) for(i=0x00; i<0x1F; i++) { // read 1 byte each from internal addresses 0x00- 0x1F touchdata_buffer[i] = i2c_rx(1); // store the one byte into the buffer } Cite it, make it more clear http://www.newhavendisplay.com/specs/NHD-3.5-320240MF-ATXL-CTP.pdf
Surface Acoustic Wave Touchscreen
Surface Acoustic Wave Overview Based on concepts first explained in 1885 and observed in nature First described by Lord Rayleigh as pressure waves travelling through a solid parallel to its surface Sometimes called Rayleigh waves Other forms exist with different names http://www.allshookup.org/quakes/raywave.jpg
Surface Acoustic Devices In the simplest form, contain three main components to function Two transducers to generate and receive surface waves A piezoelectric medium to conduct the waves Quartz glass for touch panels Aluminum nitride or lithium tantalate for sensors, circuit components, or semiconductor applications Example devices include filters, pressure and temperature sensors, and of course… http://www.itf.co.kr/tech/sub3.htm
Touch Screens Built from two transducer pairs and reflectors mounted directly on the glass All transducers share the same medium, touch detection is one layer of material Reflectors spread surface waves in a grid-like manner http://www.planarembedded.com/technology/touch/images/SAW_final.jpg
Touch Detection Reflector arrays spread and direct the waves over the glass in a grid-like manner Detection based on changes in wave amplitude when a soft object touches the screen Bare finger, gloves, soft tip stylus, etc. absorb some wave energy Hard objects like pens do not register a touch. Onboard control circuitry detects the amplitude change and computes the coordinates Detection generally limited to a single point of contact
Reflector Function
Touch Screen Construction
Microcontroller Interface Communication protocols vary by manufacturer May not be possible with some models Low level protocols like I2C and SPI are used, but are rare Vendors provide a controller module with host connectivity options Common options include USB and RS-232 PC software provided to use panel with a computer http://www.densitron.com/uploadedFiles/ProtectedDocuments/DTS409_Installation_Guidelines_Rev-1.0.pdf
Pricing Most vendors don’t disclose pricing info Keetouch offers panels of assorted sizes with prices 7” SAW touch panel from Keetouch, including controller module: $56 Sizes from 7” up to 42”, costs up to $410 http://www.keetouch.cn/catalogue/saw_touch_screen/156
Why Choose Surface Acoustic Very durable Up to 50 million touches on a single point No film or coating that can be worn out with heavy use Superior image quality Up to 92% transmittance for some models Only a single layer of glass, so distortion is minimal High Resolution and Accuracy Up to 4096 x 4096 resolution Touches accurate to within 1% tolerance Scalable Made in larger sizes than capacitive or resistive panels Larger panels requires almost no additional circuitry
Drawbacks and Common Uses Pricing and availability Most vendors don’t disclose component prices Resellers often perform custom installations and require a quote When prices are given, surface acoustic panels are much more expensive than other types Susceptible to dead spots caused from dirt and other contaminants Despite these restrictions, these panels are used in high traffic environments where durability is required Industrial control systems, medical devices, kiosks Touch screen computer monitors in consumer sector
Picking a Touchscreen Type Short answer: Choose resistive Long answer: Resistive Capacitive Surface Acoustic Wave Transparency ~80% ~90% up to 92% Multi-Touch No Yes (mutual) Resolution High Medium Speed Fast Slow Contact required Yes Cost Low Very High Durability Fair Good Very Good Power Not Disclosed
Sources Resistive overview http://www.mikroe.com/downloads/get/1203/touchscreen_ew_10_2010.pdf http://www.telecomcircle.com/2010/03/touchscreen/ http://mehtadhaval.blogspot.com/2011/04/touch-screen-interfacing-with.html http://www.sparkfun.com/datasheets/LCD/HOW%20DOES%20IT%20WORK.pdf Capacitive overview and comparisons of types http://en.wikipedia.org/wiki/Capacitive_sensing http://electronics.howstuffworks.com/iphone2.htm Surface acoustic wave overview http://www.touchscreenmagazine.nl/single-touchtechniques/surface-acoustic-wave http://en.wikipedia.org/wiki/Surface_acoustic_wave http://ectm.ewi.tudelft.nl/V2010_6/html/mscproject_62.html Touchscreen comparisons: http://electronicdesign.com/article/components/self-capacitive-sensing-brings-touch-to-large-screens- http://www.ti.com/ww/en/touch_screen_controllers_and_haptics/touch_screen_controllers.htm http://www.planarembedded.com/technology/touch/ http://www.caltronind.com/news/touch-screen-technology.php Example resistive product https://www.sparkfun.com/products/8977 Example capacitive product http://www.mouser.com/ProductDetail/Newhaven-Display/NHD-35-320240MF-ATXL-CTP- 1/?qs=sGAEpiMZZMvkC18yXH9iIpAGvQAI1fKx1bmMYNYBX1o%3d Example surface acoustic wave product http://www.keetouch.cn/catalogue/saw_touch_screen/156