I am trying to use a touchscreen R-121B with devi-dyna protocol.
It works in Windows, but I am having problems in QNX. The touchscreen is ok connected but I think I am having problems with the driver. I dont know if could be that the touchscreen could be not compatible with QNX.
I am trying to use the touchscreen with the driver without any calibration file in order to know the cause.
My question is:
When I use devi-dyna -vvvv … without calibration file, what is the meaning of the raw data which appear when I touch the screen?
Must the coordinate of the X axis raw data changes linearly when I touch from the upper-left size of the touchscreen to the upper-right size ?
Has someone used this type of touchscreen?
Thank you very much for any information and sorry for my english.
Can you capture some data from serial line while touching the screen?
Then you can interpret those data.
Last week I had similiar problem with industrial monitor DM121 equipped with R121B touchscreen. I have found that while manufacturer claims to be DynaproSC 4 compatible, it was not. On the CD with drivers to that monitor I have found header file (for LINUX) and with that info I was able to “patch” existing driver. All this was done in QNX4, but QNX6 should be similiar.
Thank you.
I have the DM-121W/T-R121B of ICP Electronics, Inc with a 12.1’’ LCD.
I think the problem could be that the protocol is not dynapro SC4.
I can see in serial port the data and I have tried to use the devi-dyna driver with the option -4 (for SC4 protocol). Ive got the driver from developers.qnx.com/Fixes/Software/
But it doesnt work too.
Pky, can you confirm me that the touchscreen you are using in the same as mine? If so, could you tell me how did you do the changes to the driver? Or if you could send me a help (C file) to do it (if you can, of course).
Evanh:
When I use calib, I use the mouse to calibrate the screen but after that nothing changes. I am sure that the serial port is well configured.
VERY IMPORTANT. Devi-dyna driver from QNX doesnt support SC4 format.
I have got the driver from that webpage. Can you confirm me if this version is ok or if there is another version better which supports SC4 protocol?
I was trying to know if without calibration file the raw data that comes from the driver has some meaning (if changes linearly and so on).
And it is very important to know if someone has used that touchscreen and know that it is not Dynapro compatible because if so, the devi-dyna driver of QNX can not work.
The hardware seems to be the same, but not the software setup. I used it with QNX4 and you use QNX6. So my driver won’t help you. In QNX4 there is driver only for SC3, not for C4, nor for this device (internally I call it SCX).
Data from the serial line are 5 byte long packets:
1 byte: 1000000t (t - touch or untouch event)
2 byte: 0000xxxx (4MSB of 11 bit word, x coord)
3 byte: 0xxxxxxx (7LSB of 11 bit word, x coord)
4 byte: 0000yyyy (4MSB of 11 bit word, y coord)
5 byte: 0yyyyyyy (7LSB of 11bit word, y coord)
I think the protocol is not dynapro and not microtouch. The controller which use the touchscreen is called “Touchkit” and the manufacturer is
Egalax, from:
I am almost sure that they use their own protocol. Have you heard about this one?
If the protocol is not by QNX supported, is there any way to get a basic source code or ideas of how to write a touchscreen driver from which I can start? I think that changes just the protocol.
I insert here the path to the software programming guide. The protocol is quite different than the DYNAPRO protocol and I am sure it is different than microtouch.
There are several DDKs (driver development kits) included in QNX 6.2.x, so it should be fairly easy to add support for the given protocol. Have a look at “/usr/scr/ddk-6.2.1/…”
There is other possibility to get your hardware working: buy supported 8wire touchscreen controller.
I am also using eGalax touchscreen controller with the following protocol
1 byte: 1000000t (t - touch or untouch event)
2 byte: 0000xxxx (4MSB of 11 bit word, x coord)
3 byte: 0xxxxxxx (7LSB of 11 bit word, x coord)
4 byte: 0000yyyy (4MSB of 11 bit word, y coord)
5 byte: 0yyyyyyy (7LSB of 11bit word, y coord)
The controller works fine with devi-microtouch except the controller stops responding after sometime
am using QNX 6.3.0 sp2 and issue devi-microtouch -vvvvv microtouch uart -i9 -p2e8 &
This is actually harder than you might think. I called QNX and specifically asked them to name a supported touchscreen. They could not answer. The protocols on the touchscreens change rapidly, even when the manufacturers call it the same name. Models get discontinued faster than QNX updates their website. To the best of my knowledge there’s no such thing as a working USB touchscreen, although the DynaFlat driver claims to support USB. And of course no touchscreen manufacturer makes QNX drivers for their hardware.
I am also in touch with the eturbotouch guy named Jason, and he says that they can’t release the driver source code for DOS and Windows. I have run the DOS and windows version of the driver and it runs good. May be we are missing some initialization commands, as the controllers have inbuilt 64 word eeprom, I think which includes the initialization and caliberation info.
and I agree with James, most of the touchscreen controller manufacturers use almost the same basic drivers