First of all, sorry for my terrible languache.

I bought 7" display with usb touchscreen from Eleduino. It works fine with Raspibian distros presented by vendor, but I want to connect it to my RPi B+ with OpenELEC on board.

Ok, I've downloaded OpenELEC source code from github and build it. But touchscreen didn't work with it.

Use lsusb to get info about device: here it is: Bus 001 Device 004: ID 0eef:0005 D-WAV Scientific Co., Ltd. Cool! Google told me, what it EETI's eGalax touchscreen, so, I try to install drivers into my RPi. And without any result. EETI support gave me an advise to ask FocalTech support, but they didn't give answer.

One attention. Touchscreen works on FocalTech FT5306 chip. This chip provides i2c interface, but not in this lcd :D. This touchscreen connects to RPi by usb -> STM32 -> FT5306.

By the way, Eleduino support didn't want to help me at all.

So, I try to build OpenELEC linux kernel with all avaliable support for usb touchscreens and usb devices. Without any result, but I found next in dmesg:

[  970.528797] usb 1-1.4: new full-speed USB device number 5 using dwc_otg
[  970.625619] usb 1-1.4: New USB device found, idVendor=0eef, idProduct=0005
[  970.625656] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  970.625673] usb 1-1.4: Product: By ZH851
[  970.625687] usb 1-1.4: Manufacturer: RPI_TOUCH
[  970.625701] usb 1-1.4: SerialNumber: RÿhgWUC`g
[  970.652930] hid-generic 0003:0EEF:0005.0002: hiddev0,hidraw0: USB HID v1.10 Device [RPI_TOUCH By ZH851] on usb-bcm2708_usb-1.4/input0

and in /dev I found 2 new devices: /dev/hidraw0 and /dev/usb/hiddev0. When I use cat for this device nodes and touch connected touchscreen I get some unreadable data on console. I thought, what the problem is easy: Linux can't understand what it's input device! Ok. I found tslib. Build it with support for hiddev, but after configurating tslib and start ts_calibrate it tolds me next:

xres = 1, yres = 1
tslib: Selected device is not a Linux input event device

Now, I don't know what to do... Please, could somebody help me?

  • Does it create something in /dev/input/? – Velkan Jun 15 '15 at 15:31
  • No, it's not. It's only creates '/dev/hidraw0' and '/dev/usb/hiddev0', but the Raspibian distro what avaliable on eleduino store creates '/dev/input/event0'. By the way, I found some drivers at eleduino website, but they are for 3.12.x kernel (my version is 4.0.4), and install script only replace kernel modules and image from installed distro to downloaded binaries. – ArhiChief Jun 15 '15 at 17:19
  • pastebin.com/X85UYRQQ is the result of dmsg of distro, where my touchscreen works. pastebin.com/g8fjm8ix is the result of diff -qr 3.12.26 4.0.4 kernels, there 3.12.26 is a dirrectory with drivers from eleduino and 4.0.4 is OpenELEC kernel. – ArhiChief Jun 15 '15 at 17:26

Ok, the solution I found works on Debian based OS. For another Linux distro you will need to make some changes in install script. Otherwise, this solutions only works in next scenario: it's emits left mouse button click event at the place of your's finger. Good for most ways as I think.

Well, I've just planed to start learning Linux kernel programming, and this is a good start for practice. I'd write some code (https://github.com/ArhiChief/eleduino_ts), so, if anyone will give me advises or something like that, you are welcome.


As of tslib-1.2 there is a raw input module for waveshare that seems to support your device using module_raw waveshare <vendorID>:<productID> in ts.conf.


Looks like someone find answer. https://github.com/derekhe/wavesahre-7inch-touchscreen-driver. I'll try to use his code as a start point.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.