CP7 and Fez Hydra - X and Y touch coordinate problem

I have a FEZ Hydra and a CP7 display. I am using the following touch events.


display_CP7.ScreenPressed += new Display_CP7.TouchEventHandler(display_CP7_ScreenPressed);
display_CP7.screenReleased += new Display_CP7.TouchEventHandlerTouchReleased(display_CP7_screenReleased);

Screen Pressed event code as follows


 void display_CP7_ScreenPressed(Display_CP7 sender, Display_CP7.TouchStatus touchStatus)
        {
            try
            {
              
                if (touchStatus.touchPos != null && touchStatus.touchPos.Length > 0)
                {
                    m_xpos = [b]touchStatus.touchPos[0].xPos;[/b]
                    m_ypos = [b]touchStatus.touchPos[0].yPos;[/b]
                }

            }
            catch
            {
                //Intentionally left blank
            }
        }

The X and Y co-ordinates do not always get the right values. Sometimes the correct value is in touchPos[0] and sometimes it is in touchPos[1]. I am not using multi-touch functionality at the moment. All i need is one right X,Y co-ordinate value. Please let me know if i am doing something wrong. I am using Micro Framework 4.2

If you see 2 then there is 2 fingers detected. I never used it but is there a finger count in the driver?

Even if i am only using one finger, the display detects 3 or 4 fingers and fills the objects. Even the touch value is true for more than one position and all of them have X and Y values.


touchStatus.touchPos[0].bActive=true
touchStatus.touchPos[1].bActive=true
touchStatus.touchPos[2].bActive=true 

How are you powering up your system?

I am supplying 12 V to the USB Client DP module. this problem happens when i am just powering it via USB.

As shown on catalog page, the display needs about 800mA from the system and your USB port can’t provide this, not including the other modules and mainboard.

We just added this note to the catalog to clear this out further:
Note: Due to its power requirements, using a powered USB hub or a power supply is required when using this display.

I have connected an external power supply of 12 V and powering the board using the USB Client DP module. I am not powering it via USB (not connected the Client DP to a computer).

And you still see the problem?

Unfortunately yes. Let me do one thing. I will log all the co-ordinates for a single finger touch and will upload the file to you.

I did some 4 test runs logging the data. Following is the result. all the time i just touched the screen once.

=============Test 1=================

X: 696 Y: 367

=============Test 2=================

X: 591 Y: 107

X: 48 Y: 105

X: 838 Y: 106

=============Test 3=================

X: 553 Y: 418

X: 833 Y: 418

=============Test 4=================

X: 688 Y: 345

X: 492 Y: 345

X: 839 Y: 344

X: 403 Y: 345

X: 270 Y: 344

I could not reproduce multiple touch events for a singular touch, nor could I produce more touches than what was truly touched.

using this code:


        void display_CP7_ScreenPressed(Display_CP7 sender, Display_CP7.TouchStatus touchStatus)
        {
            try
            {

                for (int i = 0; i < touchStatus.numTouches; i++)
                {
                    Debug.Print("X Pos " + i.ToString() + ": " + touchStatus.touchPos[i].xPos);
                    Debug.Print("Y Pos " + i.ToString() + ": " + touchStatus.touchPos[i].yPos);
                }
 
            }
            catch
            {
                //Intentionally left blank
                Debug.Print("Error caught");
            }
        }

I am in India IST. Will try again tomorrow and post the results…

I tested with all one touch. The results are as follows. I used the same code as yours.

X Pos 0: 647
Y Pos 0: 94
X Pos 1: 283
Y Pos 1: 95
X Pos 2: 525
Y Pos 2: 95
X Pos 3: 781
Y Pos 3: 96
X Pos 4: 351
Y Pos 4: 95

X Pos 0: 574
Y Pos 0: 415

X Pos 0: 708
Y Pos 0: 358
X Pos 1: 405
Y Pos 1: 355
X Pos 2: 588
Y Pos 2: 355

X Pos 0: 194
Y Pos 0: 310

X Pos 0: 439
Y Pos 0: 174

X Pos 0: 435
Y Pos 0: 259

X Pos 0: 424
Y Pos 0: 330

X Pos 0: 421
Y Pos 0: 339
X Pos 1: 315
Y Pos 1: 339

X Pos 0: 430
Y Pos 0: 319
X Pos 1: 330
Y Pos 1: 319

X Pos 0: 404
Y Pos 0: 313

X Pos 0: 312
Y Pos 0: 324

X Pos 0: 113
Y Pos 0: 326
X Pos 1: 429
Y Pos 1: 330
X Pos 2: 682
Y Pos 2: 326

X Pos 0: 416
Y Pos 0: 337

X Pos 0: 417
Y Pos 0: 332

X Pos 0: 414
Y Pos 0: 336

X Pos 0: 314
Y Pos 0: 113

X Pos 0: 653
Y Pos 0: 112

X Pos 0: 506
Y Pos 0: 205
X Pos 1: 601
Y Pos 1: 205

X Pos 0: 562
Y Pos 0: 306
X Pos 1: 839
Y Pos 1: 309
X Pos 2: 159
Y Pos 2: 308
X Pos 3: 393
Y Pos 3: 307
X Pos 4: 303
Y Pos 4: 308

X Pos 0: 543
Y Pos 0: 422
X Pos 1: 375
Y Pos 1: 418
X Pos 2: 169
Y Pos 2: 419

X Pos 0: 742
Y Pos 0: 380
X Pos 1: 428
Y Pos 1: 379
X Pos 2: 517
Y Pos 2: 376
X Pos 3: 187
Y Pos 3: 376
X Pos 4: 359
Y Pos 4: 378

X Pos 0: 342
Y Pos 0: 379
X Pos 1: 726
Y Pos 1: 377
X Pos 2: 450
Y Pos 2: 380
X Pos 3: 839
Y Pos 3: 377
X Pos 4: 452
Y Pos 4: 380

X Pos 0: 587
Y Pos 0: 311
X Pos 1: 358
Y Pos 1: 312
X Pos 2: 29
Y Pos 2: 311
X Pos 3: 56
Y Pos 3: 313

X Pos 0: 624
Y Pos 0: 204
X Pos 1: 446
Y Pos 1: 202
X Pos 2: 337
Y Pos 2: 204
X Pos 3: 79
Y Pos 3: 204
X Pos 4: 0
Y Pos 4: 200

X Pos 0: 635
Y Pos 0: 206

X Pos 0: 613
Y Pos 0: 107
X Pos 1: 799
Y Pos 1: 106
X Pos 2: 187
Y Pos 2: 108
X Pos 3: 538
Y Pos 3: 105
X Pos 4: 287
Y Pos 4: 108

X Pos 0: 0
Y Pos 0: 200
X Pos 1: 105
Y Pos 1: 201
X Pos 2: 582
Y Pos 2: 205

X Pos 0: 608
Y Pos 0: 201
X Pos 1: 317
Y Pos 1: 199
X Pos 2: 509
Y Pos 2: 201
X Pos 3: 750
Y Pos 3: 200
X Pos 4: 750
Y Pos 4: 201

X Pos 0: 379
Y Pos 0: 318
X Pos 1: 471
Y Pos 1: 318
X Pos 2: 567
Y Pos 2: 319
X Pos 3: 133
Y Pos 3: 316
X Pos 4: 583
Y Pos 4: 316

X Pos 0: 570
Y Pos 0: 413

X Pos 0: 700
Y Pos 0: 367
X Pos 1: 389
Y Pos 1: 372
X Pos 2: 769
Y Pos 2: 369

X Pos 0: 144
Y Pos 0: 323
X Pos 1: 563
Y Pos 1: 324
X Pos 2: 34
Y Pos 2: 321
X Pos 3: 678
Y Pos 3: 317
X Pos 4: 740
Y Pos 4: 316

X Pos 0: 431
Y Pos 0: 189
X Pos 1: 528
Y Pos 1: 191

X Pos 0: 416
Y Pos 0: 269

X Pos 0: 320
Y Pos 0: 258
X Pos 1: 0
Y Pos 1: 257
X Pos 2: 637
Y Pos 2: 257
X Pos 3: 261
Y Pos 3: 257
X Pos 4: 123
Y Pos 4: 258

X Pos 0: 551
Y Pos 0: 173

X Pos 0: 66
Y Pos 0: 324
X Pos 1: 170
Y Pos 1: 326
X Pos 2: 328
Y Pos 2: 342

X Pos 0: 337
Y Pos 0: 334
X Pos 1: 561
Y Pos 1: 325

X Pos 0: 0
Y Pos 0: 336
X Pos 1: 565
Y Pos 1: 332

X Pos 0: 311
Y Pos 0: 183
X Pos 1: 229
Y Pos 1: 187

X Pos 0: 543
Y Pos 0: 82
X Pos 1: 674
Y Pos 1: 82
X Pos 2: 0
Y Pos 2: 81
X Pos 3: 265
Y Pos 3: 80
X Pos 4: 189
Y Pos 4: 81

X Pos 0: 193
Y Pos 0: 105

X Pos 0: 200
Y Pos 0: 200
X Pos 1: 0
Y Pos 1: 196
X Pos 2: 103
Y Pos 2: 204
X Pos 3: 322
Y Pos 3: 196

X Pos 0: 191
Y Pos 0: 282

X Pos 0: 189
Y Pos 0: 341
X Pos 1: 528
Y Pos 1: 342
X Pos 2: 406
Y Pos 2: 342
X Pos 3: 294
Y Pos 3: 344

X Pos 0: 118
Y Pos 0: 399
X Pos 1: 376
Y Pos 1: 399

X Pos 0: 246
Y Pos 0: 411

X Pos 0: 10
Y Pos 0: 400
X Pos 1: 386
Y Pos 1: 398

X Pos 0: 384
Y Pos 0: 397
X Pos 1: 839
Y Pos 1: 398
X Pos 2: 261
Y Pos 2: 396
X Pos 3: 17
Y Pos 3: 398

X Pos 0: 250
Y Pos 0: 402
X Pos 1: 89
Y Pos 1: 404
X Pos 2: 0
Y Pos 2: 403

X Pos 0: 118
Y Pos 0: 389
X Pos 1: 471
Y Pos 1: 386

X Pos 0: 288
Y Pos 0: 75
X Pos 1: 634
Y Pos 1: 77
X Pos 2: 776
Y Pos 2: 75

X Pos 0: 527
Y Pos 0: 91
X Pos 1: 617
Y Pos 1: 97

X Pos 0: 308
Y Pos 0: 111

X Pos 0: 387
Y Pos 0: 408
X Pos 1: 296
Y Pos 1: 407
X Pos 2: 799
Y Pos 2: 407
X Pos 3: 198
Y Pos 3: 406

X Pos 0: 287
Y Pos 0: 115
X Pos 1: 399
Y Pos 1: 112
X Pos 2: 481
Y Pos 2: 112

X Pos 0: 619
Y Pos 0: 213
X Pos 1: 394
Y Pos 1: 213
X Pos 2: 552
Y Pos 2: 212
X Pos 3: 139
Y Pos 3: 212

I did one more test. I opened a new project and did the same test. Same result. this time i was pressing one spot with one touch for sometime and it recorded various coordinates. result as below. the results are for the same spot since i did only one continuous single finger touch

X Pos 0: 371
Y Pos 0: 239

X Pos 0: 371
Y Pos 0: 239

X Pos 0: 371
Y Pos 0: 239

X Pos 0: 370
Y Pos 0: 239
X Pos 1: 839
Y Pos 1: 237
X Pos 2: 276
Y Pos 2: 237

X Pos 0: 367
Y Pos 0: 239
X Pos 1: 450
Y Pos 1: 236

X Pos 0: 367
Y Pos 0: 239
X Pos 1: 164
Y Pos 1: 237
X Pos 2: 738
Y Pos 2: 237
X Pos 3: 648
Y Pos 3: 238

X Pos 0: 369
Y Pos 0: 239

X Pos 0: 368
Y Pos 0: 238
X Pos 1: 578
Y Pos 1: 236

X Pos 0: 368
Y Pos 0: 238
X Pos 1: 794
Y Pos 1: 236
X Pos 2: 138
Y Pos 2: 237
X Pos 3: 277
Y Pos 3: 236

X Pos 0: 367
Y Pos 0: 238

X Pos 0: 368
Y Pos 0: 238

X Pos 0: 368
Y Pos 0: 238
X Pos 1: 67
Y Pos 1: 237
X Pos 2: 743
Y Pos 2: 236
X Pos 3: 194
Y Pos 3: 237

X Pos 0: 369
Y Pos 0: 238

X Pos 0: 369
Y Pos 0: 238

X Pos 0: 368
Y Pos 0: 238

X Pos 0: 369
Y Pos 0: 238
X Pos 1: 800
Y Pos 1: 235
X Pos 2: 687
Y Pos 2: 236
X Pos 3: 165
Y Pos 3: 236
X Pos 4: 136
Y Pos 4: 237

X Pos 0: 368
Y Pos 0: 237

X Pos 0: 368
Y Pos 0: 237

X Pos 0: 368
Y Pos 0: 237
X Pos 1: 194
Y Pos 1: 236
X Pos 2: 90
Y Pos 2: 236

X Pos 0: 367
Y Pos 0: 237
X Pos 1: 803
Y Pos 1: 236

X Pos 0: 368
Y Pos 0: 235
X Pos 1: 818
Y Pos 1: 237
X Pos 2: 734
Y Pos 2: 236
X Pos 3: 161
Y Pos 3: 235
X Pos 4: 501
Y Pos 4: 237

X Pos 0: 372
Y Pos 0: 234

X Pos 0: 372
Y Pos 0: 234
X Pos 1: 556
Y Pos 1: 237
X Pos 2: 170
Y Pos 2: 236
X Pos 3: 77
Y Pos 3: 235

X Pos 0: 377
Y Pos 0: 234
X Pos 1: 143
Y Pos 1: 236

X Pos 0: 376
Y Pos 0: 234
X Pos 1: 585
Y Pos 1: 235

X Pos 0: 376
Y Pos 0: 234
X Pos 1: 207
Y Pos 1: 235

X Pos 0: 382
Y Pos 0: 233
X Pos 1: 522
Y Pos 1: 238

X Pos 0: 380
Y Pos 0: 233
X Pos 1: 619
Y Pos 1: 236

X Pos 0: 379
Y Pos 0: 233
X Pos 1: 139
Y Pos 1: 236
X Pos 2: 779
Y Pos 2: 237

X Pos 0: 380
Y Pos 0: 233

X Pos 0: 379
Y Pos 0: 233
X Pos 1: 43
Y Pos 1: 236
X Pos 2: 587
Y Pos 2: 236

X Pos 0: 379
Y Pos 0: 233
X Pos 1: 214
Y Pos 1: 236
X Pos 2: 800
Y Pos 2: 236
X Pos 3: 282
Y Pos 3: 237

X Pos 0: 381
Y Pos 0: 233

X Pos 0: 380
Y Pos 0: 233

X Pos 0: 379
Y Pos 0: 233
X Pos 1: 599
Y Pos 1: 236
X Pos 2: 679
Y Pos 2: 236
X Pos 3: 224
Y Pos 3: 237
X Pos 4: 105
Y Pos 4: 235

X Pos 0: 377
Y Pos 0: 233

X Pos 0: 377
Y Pos 0: 233

X Pos 0: 376
Y Pos 0: 233
X Pos 1: 147
Y Pos 1: 235
X Pos 2: 769
Y Pos 2: 237

X Pos 0: 371
Y Pos 0: 233
X Pos 1: 255
Y Pos 1: 235
X Pos 2: 839
Y Pos 2: 235

X Pos 0: 374
Y Pos 0: 233

X Pos 0: 375
Y Pos 0: 233

X Pos 0: 374
Y Pos 0: 233
X Pos 1: 224
Y Pos 1: 236
X Pos 2: 655
Y Pos 2: 236
X Pos 3: 743
Y Pos 3: 237
X Pos 4: 0
Y Pos 4: 235

X Pos 0: 381
Y Pos 0: 233
X Pos 1: 498
Y Pos 1: 238

X Pos 0: 380
Y Pos 0: 233
X Pos 1: 648
Y Pos 1: 235

X Pos 0: 378
Y Pos 0: 233
X Pos 1: 813
Y Pos 1: 236

X Pos 0: 377
Y Pos 0: 233
X Pos 1: 468
Y Pos 1: 237
X Pos 2: 270
Y Pos 2: 235

X Pos 0: 376
Y Pos 0: 233
X Pos 1: 35
Y Pos 1: 236

X Pos 0: 376
Y Pos 0: 233
X Pos 1: 254
Y Pos 1: 237
X Pos 2: 813
Y Pos 2: 236
X Pos 3: 595
Y Pos 3: 236
X Pos 4: 706
Y Pos 4: 236

X Pos 0: 375
Y Pos 0: 233
X Pos 1: 542
Y Pos 1: 236

X Pos 0: 375
Y Pos 0: 233
X Pos 1: 797
Y Pos 1: 236
X Pos 2: 237
Y Pos 2: 237
X Pos 3: 720
Y Pos 3: 235

X Pos 0: 375
Y Pos 0: 233
X Pos 1: 24
Y Pos 1: 236

X Pos 0: 777
Y Pos 0: 236
X Pos 1: 204
Y Pos 1: 236

X Pos 0: 149
Y Pos 0: 236
X Pos 1: 283
Y Pos 1: 236

X Pos 0: 363
Y Pos 0: 233

X Pos 0: 368
Y Pos 0: 233

X Pos 0: 372
Y Pos 0: 233

X Pos 0: 372
Y Pos 0: 233

X Pos 0: 371
Y Pos 0: 233

X Pos 0: 380
Y Pos 0: 233
X Pos 1: 324
Y Pos 1: 237
X Pos 2: 807
Y Pos 2: 234

X Pos 0: 372
Y Pos 0: 233

X Pos 0: 372
Y Pos 0: 233

X Pos 0: 372
Y Pos 0: 233
X Pos 1: 215
Y Pos 1: 235
X Pos 2: 797
Y Pos 2: 235

X Pos 0: 371
Y Pos 0: 232
X Pos 1: 527
Y Pos 1: 237

X Pos 0: 373
Y Pos 0: 232
X Pos 1: 522
Y Pos 1: 237

X Pos 0: 375
Y Pos 0: 232
X Pos 1: 726
Y Pos 1: 236
X Pos 2: 156
Y Pos 2: 234

X Pos 0: 353
Y Pos 0: 232
X Pos 1: 100
Y Pos 1: 235

X Pos 0: 362
Y Pos 0: 232
X Pos 1: 66
Y Pos 1: 235
X Pos 2: 800
Y Pos 2: 236
X Pos 3: 707
Y Pos 3: 238

X Pos 0: 365
Y Pos 0: 233
X Pos 1: 207
Y Pos 1: 237
X Pos 2: 797
Y Pos 2: 235

X Pos 0: 366
Y Pos 0: 233
X Pos 1: 628
Y Pos 1: 235

X Pos 0: 366
Y Pos 0: 233
X Pos 1: 836
Y Pos 1: 235
X Pos 2: 267
Y Pos 2: 236
X Pos 3: 95
Y Pos 3: 235
X Pos 4: 267
Y Pos 4: 236

X Pos 0: 371
Y Pos 0: 233
X Pos 1: 828
Y Pos 1: 237
X Pos 2: 708
Y Pos 2: 237
X Pos 3: 280
Y Pos 3: 235
X Pos 4: 516
Y Pos 4: 239

X Pos 0: 378
Y Pos 0: 233

X Pos 0: 379
Y Pos 0: 233

X Pos 0: 379
Y Pos 0: 233

X Pos 0: 379
Y Pos 0: 233

X Pos 0: 377
Y Pos 0: 233
X Pos 1: 700
Y Pos 1: 236
X Pos 2: 30
Y Pos 2: 235
X Pos 3: 799
Y Pos 3: 235

X Pos 0: 375
Y Pos 0: 233

X Pos 0: 375
Y Pos 0: 233

X Pos 0: 375
Y Pos 0: 233
X Pos 1: 683
Y Pos 1: 235
X Pos 2: 110
Y Pos 2: 235
X Pos 3: 732
Y Pos 3: 236

X Pos 0: 375
Y Pos 0: 233

X Pos 0: 376
Y Pos 0: 233

X Pos 0: 376
Y Pos 0: 233

X Pos 0: 375
Y Pos 0: 233
X Pos 1: 224
Y Pos 1: 236
X Pos 2: 138
Y Pos 2: 235
X Pos 3: 799
Y Pos 3: 236
X Pos 4: 799
Y Pos 4: 236

X Pos 0: 386
Y Pos 0: 233

X Pos 0: 385
Y Pos 0: 233

X Pos 0: 199
Y Pos 0: 236
X Pos 1: 644
Y Pos 1: 239

Have you double tried different cables? Have you checked power supply? Show your device capabilities from mfdeploy.

Contact GHI directly for an RMA please.

Device Capabilities as below

HalSystemInfo.halVersion: 4.2.0.0
HalSystemInfo.halVendorInfo: Microsoft Copyright © Microsoft Corporation. All rig
HalSystemInfo.oemCode: 255
HalSystemInfo.modelCode: 0
HalSystemInfo.skuCode: 65535
HalSystemInfo.moduleSerialNumber: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
HalSystemInfo.systemSerialNumber: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
ClrInfo.clrVersion: 4.2.0.0
ClrInfo.clrVendorInfo: Microsoft Copyright © Microsoft Corporation. All rig
ClrInfo.targetFrameworkVersion: 4.2.0.0
SolutionReleaseInfo.solutionVersion: 4.2.3.0
SolutionReleaseInfo.solutionVendorInfo: Copyright © GHI Electronics, LLC
SoftwareVersion.BuildDate: Aug 23 2012
SoftwareVersion.CompilerVersion: 410462
FloatingPoint: True
SourceLevelDebugging: True
ThreadCreateEx: True
LCD.Width: 800
LCD.Height: 480
LCD.BitsPerPixel: 16
AppDomains: True
ExceptionFilters: True
IncrementalDeployment: True
SoftReboot: True
Profiling: False
ProfilingAllocations: False
ProfilingCalls: False
IsUnknown: False

I tried changing the wire and also the socket from 5 to 6 for the “I”. Still same problem.