Simple Touch Controller Frees Up USB Port

touch screen demonstration using text

[typ.o] was working on a Raspberry Pi project and found himself running short on USB ports. The project required a touch screen interface, which takes up one of the ports. Since he was only using the screen in text mode, he decided to ditch the original USB controller and make his own.

The ever popular Attiny85 is deployed to handle the task, and is interfaced between the resistive touch panel and the Raspberry pi, using only three pins from the GPIO port. The Attiny85 runs off the 3 volt supply from the raspi, so no level shifter is needed, helping to keep his board super simple.

The calibration and calculation of the touched character location is done by a Python script running on the raspi. [typ.o] is a fan of the KISS principle, and it shows. Be sure to check out his site for all source code, schematics and a video demonstrating this simple but effective solution.

6 thoughts on “Simple Touch Controller Frees Up USB Port

  1. Good solution given the stuff on hand. I’m surprised nobody has a breakout for one of the many i2c touchscreen drivers out there. Some drivers have existing Linux drivers making it easy on the software end.

    1. A hub was my first thought too. Not everything has USB though, so I suppose he’s gone with a more universal approach. It might have been overkill for this project, but maybe he has others in mind?

Leave a Reply to nah!Cancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.