Capacitive Touch (WEC2013)

      Capacitive Touch (WEC2013)

      Hello Support,

      I bought the "aStoneA5-SKIT-W13"-Starterkit and the "SINTF-LVDSTOUCH1"-Capacitive Touch.
      I have made the following settings in the registry:

      Source Code

      1. REM
      2. REM Touch MXT224 enable
      3. REM
      4. reg open \drivers\builtin\touch_sx865x
      5. reg set val Flags dword 4
      6. reg open \drivers\builtIn\touch_edt
      7. reg set val Flags dword 4
      8. reg open \drivers\builtIn\touch_mxt224
      9. reg set val Flags dword 8
      10. REM
      11. REM Stream interface Driver
      12. REM
      13. reg open \Drivers\Builtin
      14. reg create key Touch
      15. reg set val Prefix string TCH
      16. reg set val Index dword 1
      17. reg set val Order dword 0xff
      18. reg set val Flags dword 0x8
      19. reg set val IClass multi "{25121442-08CA-48dd-91CC-BFC9F790027C}";"{7119776D-9F23-4e4e-9D9B-9AE962733770}"
      20. reg set val Priority256 dword 0x6D
      21. reg set val DLL string fs_touch_mxt224.dll
      22. reg set val ChangeIO dword 0x57
      23. reg set val ResetIO dword 0x56
      24. reg set val I2CDevAddr dword 0x94
      25. reg set val I2CDevice string "I2C3:"
      26. REM reg set val debug dword 0xffff
      27. REM reg set val LoadAsyncEvent string "SYSTEM/ShellAPIReady"
      28. REM reg set val Flags dword 0x1000008
      29. REM
      30. REM Touch proxy Driver
      31. REM
      32. reg open \hardware\devicemap\touch
      33. reg set val DriverName string tchproxy.dll
      34. reg del val CalibrationData
      35. reg save
      36. reg open \HARDWARE\DEVICEMAP\TOUCH
      37. reg set val Drivername string fs_touch_mxt224.dll
      38. reg set val ChangeIO dword 0x57
      39. reg set val ResetIO dword 0x56
      40. reg set val I2CDevAddr dword 0x94
      41. reg set val I2CDevice string "I2C3:"
      42. reg set val InvertX dword 0x1
      43. reg set val InvertY dword 0x1
      44. reg del val CalibrationData


      and at the beginning the capacitive Touch worked well.

      So I tried another touch and changed the registry again. After that I would go back to the first one because it works better.
      So I erased the registry and installed the Touch of the starter kit like the first time, BUT it does not work anymore.

      My serial Out:

      Source Code

      1. Microsoft Windows CE Bootloader Common Library Version 1.2 Built Feb 2 2015 16:06:34
      2. Microsoft Windows CE Bootloader for armStoneA5 Built Feb 3 2015
      3. Portions copyright (c) 2012 F&S Elektronik Systeme GmbH
      4. Boot Loader, Version 1.3
      5. NBoot, Version VN12
      6. HW rev. 1.10
      7. HW-Watchdog: ON
      8. System ready!
      9. Preparing for download...
      10. Press >S< to step into monitor...
      11. AUTO BOOT enabled
      12. Kernel (2967kB) read from flash disk started finished in 523 milliseconds
      13. INFO: OEMLaunch: Jumping to Physical Address 0x8010BDE9h (Virtual Address 0x0h)...
      14. Jumping to Kernel @ 0x8010BDE9
      15. Windows CE Kernel for ARM (Thumb Enabled)
      16. INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb
      17. HW-WATCHDOG: ENABLED
      18. armStoneA5 V2.02 - Firmware Init
      19. Copyright (c) 2013 F&S Elektronik Systeme GmbH
      20. Build: May 13 2015/15:25:42
      21. FMD: NAND ID:0x2cf18095 --> MICRON: 1GBit (128MB)
      22. FMD: Block 0 to 16 are locked for boot loader
      23. I2C: Version 2.5
      24. INFO: No external RTC found!.
      25. OAL: RestartReason=RESETB
      26. FMD: NAND ID:0x2cf18095 --> MICRON: 1GBit (128MB)
      27. FMD: Block 0 to 16 are locked for boot loader
      28. FSPART: FS partition driver loaded
      29. BINFS: RegisterVolume - Mounted volume '\BINFS'
      30. BE2: Version 1.4, ActiveKey = Drivers\Active\03
      31. NI2C: Version 1.0, ActiveKey = Drivers\Active\15
      32. ENET: Version 01.03, ActiveKey = Comm\ETHNETA
      33. ENET: Version 01.03, ActiveKey = Comm\ETHNETB
      34. UsbHost : New Function [address(1) / layer(0)]
      35. FSKBDHID: Version 1.0, ActiveKey = Drivers\Active\20
      36. Attach moutouchHID
      37. TCH: Version 1.8, ActiveKey = Drivers\Active\23
      38. BE2: Version 1.4, ActiveKey = Drivers\Active\24
      39. UART: Version 1.17, Key = Drivers\Active\25
      40. UART: Version 1.17, Key = Drivers\Active\26
      41. UART: Version 1.17, Key = Drivers\Active\27
      42. UART1: Port disabled. Serial debug is on !
      43. TCH: Version 1.0, ActiveKey = Drivers\Active\28
      44. CID: Version 2.8, ActiveKey = Drivers\Active\29
      45. CID: Version 2.8, ActiveKey = Drivers\Active\30
      46. AIN: Version 1.2, ActiveKey = Drivers\Active\31
      47. I2C: Version 4.2, ActiveKey = Drivers\Active\32
      48. WAV: Version 2.3, ActiveKey = Drivers\Active\34
      49. SDHC: Version 1.2, ActiveKey = Drivers\Active\33
      50. BCS: Version 1.4, ActiveKey = Drivers\Active\48
      51. NSPI: Version 3.0, ActiveKey = Drivers\Active\49
      52. DIO: Version 2.8, ActiveKey = Drivers\Active\50
      53. FRW: Version 1.1, ActiveKey = Drivers\Active\57
      54. LCD: Version 1.9, ActiveKey = Drivers\Display\LCD
      55. LCD: Read registry settings from Drivers\Display\LCD
      56. SE2: Version 1.3, ActiveKey = Drivers\Active\59
      57. LCD: ASTADPEDT1.dll - Init failed
      58. LCD: Could not intialize external PWM device AstADPEP1 (LE:2)
      59. LCD: Display-Mode 101, Name CHIMEI G070Y2
      60. TCH: Failed to read Infoblock
      61. TCH: Driver Failed to Init.
      62. NDCUCFG V 60 started. Platform: armStoneA5
      63. NDCUCFG Open COM1: at 38400 Baud
      64. CreateFile() failed -> ERROR COM1:
      65. CheckAutoStart: Version 1.7, LaunchNum = 100
      66. FSStartup: Version 1.0, LaunchNum = 102
      67. SoftRTC disabled


      I updated the Kernel and tried it again. But it is still not working
      Can someone help me?
      Hello,

      and at the beginning the capacitive Touch worked well
      Yes, in general SKITs are preconfigured, so everthing works fine.

      According the code above you mix "native" and "stream" interface settings. Best would be you delete registry again. Then just change the two "flags" values (mxt224, sx865x) according the Device Driver Document. I assume this should work.
      F&S Elektronik Systeme GmbH
      As this is an international forum, please try to post in English.
      Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.
      Hi,

      I deleted registry again and changed only the "flags" values according the Device Driver Document.
      But it is does not work.

      Registry before:

      Source Code

      1. 00 "Prefix"=string:tch \
      2. 01 "Dll"=string:fs_touch_sx865x.dll \
      3. 02 "Order"=dword:32 \
      4. 03 "Index"=dword:1 \
      5. 04 "Flags"=dword:33554440 \
      6. 05 "IClass"=multi:{25121442-08ca-48dd-91cc-bfc9f790027c};{a32942b7-920c-486b-b0e6-92a702a99b35} \
      7. 06 "Priority256"=dword:109 \
      8. 07 "SysIntr"=dword:0 \
      9. 08 "SampleRate"=dword:200 \
      10. 09 "SWCalibration"=dword:1 \
      11. 10 "InvertY"=dword:1 \
      12. 11 "InvertX"=dword:1 \
      13. 12 "Threshold"=dword:800 \
      14. 13 "ChangeIO"=dword:99 \
      15. 14 "ResetIO"=dword:98 \
      16. 15 "I2CDevAddr"=dword:144 \
      17. 16 "I2CDevice"=string:i2c3: \
      18. 17 "TouchSamples"=dword:3 \
      19. 18 "!BoardName"=string:PicoMOD1.2 \
      20. OK
      21. 00 "Config" \
      22. OK -> reg enum value \
      23. 00 "Prefix"=string:TCH \
      24. 01 "Dll"=string:fs_touch_mxt224.dll \
      25. 02 "Order"=dword:32 \
      26. 03 "Index"=dword:2 \
      27. 04 "Flags"=dword:4 \
      28. 05 "IClass"=multi:{25121442-08CA-48dd-91CC-BFC9F790027C};{A32942B7-920C-486b-B0E6-92A702A99B35} \
      29. 06 "Priority256"=dword:109 \
      30. 07 "SysIntr"=dword:0 \
      31. 08 "InitialSamplesDropped"=dword:2 \
      32. 09 "SampleRate"=dword:200 \
      33. 10 "SWCalibration"=dword:0 \
      34. 11 "InvertY"=dword:0 \
      35. 12 "InvertX"=dword:0 \
      36. 13 "ChangeIO"=dword:87 \
      37. 14 "ResetIO"=dword:86 \
      38. 15 "I2CDevAddr"=dword:148 \
      39. 16 "I2CDevice"=string:I2C3: \
      40. 17 "LoadAsyncEvent"=string:SYSTEM/ShellAPIReady \


      I changed the touch_sx865x Flags value in "4" (is "33554440" normal?)
      and the touch_mxt224 Flags value in "8"
      right?

      After the Kernel update theres no touch_edt anymore?
      Hello,

      sorry for this trouble. We try to test it here and post detailed settings asp.
      F&S Elektronik Systeme GmbH
      As this is an international forum, please try to post in English.
      Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.
      We test following and it works:

      REM aStoneA5C2-W13 / aStoneA5-V1-W13
      REM
      REM after reset the registry entries
      REM you can activate the SINTF-LVDSCTOUCH
      REM with the following registry settings
      REM
      REM
      reg open \drivers\builtin\armstonea5\touch_sx865x_adpedt
      reg set val Flags dword 4
      reg ..
      reg ..
      reg open touch_mxt224
      reg set val Flags dword 8
      reg ..
      reg open touch_sx865x
      reg set val Flags dword 4
      reg save

      F&S Elektronik Systeme GmbH
      As this is an international forum, please try to post in English.
      Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.
      Can you set debug value for the driver to 255?
      Cause this any fruther Information on seral debug line?
      MXT is connected via I2C, pull ups still available, Interrupt line not connected or floats?
      F&S Elektronik Systeme GmbH
      As this is an international forum, please try to post in English.
      Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.
      My Serial out:
      Microsoft Windows CE Bootloader Common Library Version 1.2 Built Feb 2 2015 16:06:34
      Microsoft Windows CE Bootloader for armStoneA5 Built Feb 3 2015
      Portions copyright (c) 2012 F&S Elektronik Systeme GmbH
      Boot Loader, Version 1.3
      NBoot, Version VN12
      HW rev. 1.10

      HW-Watchdog: ON
      System ready!
      Preparing for download...
      Press >S< to step into monitor...
      AUTO BOOT enabled
      Kernel (2967kB) read from flash disk started finished in 523 milliseconds
      INFO: OEMLaunch: Jumping to Physical Address 0x8010BDE9h (Virtual Address 0x0h)...

      Jumping to Kernel @ 0x8010BDE9
      Windows CE Kernel for ARM (Thumb Enabled)
      INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb
      HW-WATCHDOG: ENABLED

      armStoneA5 V2.02 - Firmware Init
      Copyright (c) 2013 F&S Elektronik Systeme GmbH
      Build: May 13 2015/15:25:42
      FMD: NAND ID:0x2cf18095 --> MICRON: 1GBit (128MB)
      FMD: Block 0 to 16 are locked for boot loader
      I2C: Version 2.5
      INFO: No external RTC found!.
      OAL: RestartReason=RESETB
      FMD: NAND ID:0x2cf18095 --> MICRON: 1GBit (128MB)
      FMD: Block 0 to 16 are locked for boot loader
      FSPART: FS partition driver loaded
      BINFS: RegisterVolume - Mounted volume '\BINFS'
      BE2: Version 1.4, ActiveKey = Drivers\Active\03
      NI2C: Version 1.0, ActiveKey = Drivers\Active\15
      ENET: Version 01.03, ActiveKey = Comm\ETHNETA
      ENET: Version 01.03, ActiveKey = Comm\ETHNETB
      UsbHost : New Function [address(1) / layer(0)]
      FSKBDHID: Version 1.0, ActiveKey = Drivers\Active\20
      Attach moutouchHID
      TCH: Version 1.8, ActiveKey = Drivers\Active\23
      BE2: Version 1.4, ActiveKey = Drivers\Active\24
      UART: Version 1.17, Key = Drivers\Active\25
      UART: Version 1.17, Key = Drivers\Active\26
      UART: Version 1.17, Key = Drivers\Active\27
      UART1: Port disabled. Serial debug is on !
      CID: Version 2.8, ActiveKey = Drivers\Active\28
      CID: Version 2.8, ActiveKey = Drivers\Active\29
      AIN: Version 1.2, ActiveKey = Drivers\Active\30
      I2C: Version 4.2, ActiveKey = Drivers\Active\31
      SDHC: Version 1.2, ActiveKey = Drivers\Active\32
      WAV: Version 2.3, ActiveKey = Drivers\Active\34
      BCS: Version 1.4, ActiveKey = Drivers\Active\47
      NSPI: Version 3.0, ActiveKey = Drivers\Active\48
      DIO: Version 2.8, ActiveKey = Drivers\Active\49
      FRW: Version 1.1, ActiveKey = Drivers\Active\55
      LCD: Version 1.9, ActiveKey = Drivers\Display\LCD
      LCD: Read registry settings from Drivers\Display\LCD
      SE2: Version 1.3, ActiveKey = Drivers\Active\57
      LCD: ASTADPEDT1.dll - Init failed
      LCD: Display-Mode 19, Name ET070080 ASA5
      TCH: SamplePeriodLowHns =0x1312d00
      TCH: SamplePeriodHighHns =0x30d40
      TCH: Debug =0xff
      TCH: I2CDevAddr =0x94
      TCH: ChangeIO =0x57
      TCH: ResetIO =0x56
      TCH: LogFile =
      TCH: I2CDevice =I2C3:
      TCH: LogFileDebug =0x0TchProxy: touch driver cann't be loaded. Check touch driver registry settings.

      TCH: LogFileTruncate =0x1
      TCH: CheckSum =0x0
      TCH: InvertX =0x0
      TCH: InvertY =0x0
      TCH: SWCalibration =0x0
      TCH: AutoCalibEventSystem =0x0
      TCH: I2CCRC =0x0
      TCH: Priority256 =0x6d
      TCH: Change-IRQ configured on IO-Pin 87
      TCH: Reset-line configured on IO-Pin 86
      TCH: Display resolution to scale at detected (800x480).
      TCH: Interrupt registered successfully (IRQ=287, SYSINTR=35)
      TCH: Initializing Touch controller
      TCH: Reinit thread started
      I2CLIB: I2C_ReadRegister(): Message failed (flags=8)
      TCH: Failed to read Infoblock
      TCH: Failed to read Object table
      TCH: Driver Failed to Init.
      NDCUCFG V 60 started. Platform: armStoneA5
      NDCUCFG Open COM1: at 38400 Baud
      CreateFile() failed -> ERROR COM1:
      CheckAutoStart: Version 1.7, LaunchNum = 100
      FSStartup: Version 1.0, LaunchNum = 102
      SoftRTC disabled
      TCH: Reint thread still active
      TCH: Could not enable touch Panel


      All conected through the cable from the kit.
      Hello,

      we checked our registry again, everythineg seems to be right.
      a) did you really delete registry before send new register?
      b) Sometime proxi driver needs more time to find the "touch"
      reg open \system\gwe\touchproxy
      REM 200...1000ms
      reg set val DriverLoadTimeoutMs dword 200
      reg save
      reboot
      c) But i think this output "I2CLIB: I2C_ReadRegister(): Message failed (flags=8)" would not occur in case a), b). I2C::Flags=8 indicates an arbitration lost so i still assume somthing is wrong with the (I2C) lines!

      I nothing helps please send us the board as RMA.
      F&S Elektronik Systeme GmbH
      As this is an international forum, please try to post in English.
      Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.