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 1011 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
  • 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
  • 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
  • Former Member
    0 Former Member over 10 years ago

    I had exactly the same problem.  By default the AR1100 enumerates as a HID mouse with a vendor:product code of 04D8:0C02, as your debug output shows.  What you need to do is install the Microchip AR Configuration Utility on a Windows PC, plug in the AR1100 and your HDMI screen, and use the Manual Setup utility to change the mode to DIGITIZER.  Now when you plug it into your Android device it will enumerate as 04D8:0C03 and work as expected.  See here for more info.

    • 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