element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
RIoTboard
  • Products
  • Dev Tools
  • Single-Board Computers
  • RIoTboard
  • More
  • Cancel
RIoTboard
Forum resistive touchscreen
  • Blog
  • Forum
  • Documents
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join RIoTboard to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 4 replies
  • Subscribers 24 subscribers
  • Views 1013 views
  • Users 0 members are here
  • ar1100
  • riotboard
  • touchscreen
Related

resistive touchscreen

toonamo
toonamo over 10 years ago

So first off i originally thought i could use an ar1100 to act as a touchscreen for my 7" HDMI lcd screen. However after trying the Vendor_04d8_Product_0c03.ics file in /system/usr/idc folder and rebooting i still can't get it too work. A lot of people can't get it to work so I figured it can't be use with android 4.3 as it stands.

 

When i plug it in the debug window shows

usb 2-1.2: new full speed USB device number 5 using fsl-ehci

input: Microchip Technology Inc. AR1100 HID-MOUSE as /devices/platform/fsl-ehci.1/usb2/2-1/2-1.2/2-1.2:1.0/input/input3

generic-usb 0003:04D8:0C02.0004: input,hidraw0: USB HID v1.11 Mouse [Microchip Technology Inc. AR1100 HID-MOUSE] on usb-fsl-ehci.1-1.2/input0

 

but the touching the panel does nothing. Not in app, or out. The screen works fine on my windows machine.

 

My question is how can i interface a 4 wire resistive touch screen? I don't mind if i have to use i2c or whatever it takes but i don't know where to start. i noticed some people are useing the lvds as a hdmi out to go to laptop screens but no one ever discusses getting the touchscreen to work. Or at least in any writeup/ tutorial i could find.

 

Some background on my project is that i want to use this to have a 7" touchscreen in my vehicle that runs android software and also software i will create to control electronics in the car. I have everything i need except for a touchscreen.

 

Linux won't work very well because it's not touchscreen friendly at the moment. (pop up keyboard, email apps, etc.) Maybe once ubuntu makes thier phone software it will be a better option but for now I need android to work.

 

Any ideas how to get a 4-wire resistive touch screen to work with android? I can compile from source if i have to i just don't know what to edit.

  • Sign in to reply
  • Cancel
Parents
  • amgalbu
    0 amgalbu over 10 years ago

    Resistive touch screen just needs two ADCs that detect two resistance values (for X and Y). Resistance values are then converted to screen coordinates by means of calibration data (to get calibration data, user has to launch a procedure that shows crosses in the four corners of the screen).

    That said, the connection circuit is easy to implement

     

    microcontroller - Resistive Touch Screens - Electrical Engineering Stack Exchange

     

    On Linux (and hence android) you can find several touch drivers. The most widely used is tsc2004. You can have a llok and start from there

     

    Ambrogio

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • toonamo
    0 toonamo over 10 years ago in reply to amgalbu

    Thank you Ambrogio. I understand the x and y aspects of a touch screen. I just don't understand how to get this data to android. A driver would mean there is a device to connect to convert the data to something the android understand by utilizing the driver. When i try to google touchscreens all it shows is a 10 inch and a 5 inch with a capacitive sensor. My problem is i can't fit a 10 inch in my dash and 5 is just too small.

     

    Does anyone know what i need to do in order to connect a 4 wire touch sensor to the riotboards gpio and what source to edit in order for it to work? Or perhaps a usb device that works with android since the ar1100 does not.

     

     

    edit: well i can't figure out how to communicate with the ar1100 when it's connected to the android but i did figure out that i can send commands to emulate touch/ tap events from the shell

    input tap 200 622

     

    so for now i am going to use a arduino to "read" touch events and then send them to the shell. Once i figure out how to edit the source to read the sensor over gpio then i will modify the source to read the events directly. For now i will use the debug port

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • toonamo
    0 toonamo over 10 years ago in reply to amgalbu

    Thank you Ambrogio. I understand the x and y aspects of a touch screen. I just don't understand how to get this data to android. A driver would mean there is a device to connect to convert the data to something the android understand by utilizing the driver. When i try to google touchscreens all it shows is a 10 inch and a 5 inch with a capacitive sensor. My problem is i can't fit a 10 inch in my dash and 5 is just too small.

     

    Does anyone know what i need to do in order to connect a 4 wire touch sensor to the riotboards gpio and what source to edit in order for it to work? Or perhaps a usb device that works with android since the ar1100 does not.

     

     

    edit: well i can't figure out how to communicate with the ar1100 when it's connected to the android but i did figure out that i can send commands to emulate touch/ tap events from the shell

    input tap 200 622

     

    so for now i am going to use a arduino to "read" touch events and then send them to the shell. Once i figure out how to edit the source to read the sensor over gpio then i will modify the source to read the events directly. For now i will use the debug port

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
  • amgalbu
    0 amgalbu over 10 years ago in reply to toonamo

    Hi

    I would start from an existing touch screen driver like this one

    https://gitorious.org/var-som-4x/ics-3-x/source/30bbe8cc47f64b29570f0f0ef718e40ef933e98d:drivers/input/touchscreen/tsc2004.c

     

    This controller has a I2C interface so you should use it just to understand how the driver integrates in the while system (have a look also here http://processors.wiki.ti.com/index.php/Capacitive_touch_integration_with_android)

     

    Then I would change the functions that access the I2C to read directly from the ADC

     

    Regarding physical connection, I would connect the X and Y terminals of the touch screen to the connector GPIOs (hopefully they can configured as ADCs...)

     

    Ambrogio

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube