Colibri T20 touch screen freezes after 10 Hours usage in Version 1.4

  1. The Module Colibri T20 with image Version 1.4 of CE6 the touch screen freezes after 10 hours.

Could you please provide us us some more deatails about your setup:

  • What kind of a touch screen are you using?
  • Do you have any output on the debug serial port?
  • Is the freeze reproducible without user interaction after 10 ours?

Hi Samuel,

  1. We are using EDT 7" touch screen.

  2. Actually, we have connected another processor in serial port one in our device, since we dont know at the beginning, it is used as debug serial port.

  3. The touch freeze problem is random and it happens sometime in 10 hours and sometime 30 hours. No definite time interval between Unit switch ON and touch freeze.

  4. Further to your question, We have some points which may be useful to you for solution making.

    1. During Touch freeze, we checked using CRO the touch signal. We get good responses(signals) from the touch screen (Pin 40 of FFC connection between Colibri and EDT)
    2. when we restart the unit, the touch screen and sound works properly
    3. During the touch freeze, ADC functions properly hence we get the analog to digital outputs in the monitor as correct ones.
    4. When we restart the application alone without restarting the power, the touch freeze remains as such. (This we have tested during the touch freeze problem arrived).
  5. Voltage levels are good 3.3V

  6. We understand WM9715 is used for Touch screen interface, Audio and ADC channels 4 pins. During the touch freeze problem the ADC works fine rest of the two (Audio and Touch) interface is not working.

Hi Samuel, can you please see the comments i have added in the post. I was looking for local solution in India, Still Toradex India can not make out a solution, since the problem is random and not easily reproducible.

Can any one tell me how to get access WM_9715 registers status?

I hope this makes the above problem

@Gopal: If I got you right, you are making use of the ADC channels as well as the touch. You are right, these two are using both the WM_9715.

You write, that this issue is in 1.4. Have not not faced it on 1.3? If so, I would suggest you to disable the power management on the WM9715 which we introduced in 1.4: You can use the powerdownmask to do that. The documentation for this can be found here.

If this does not help, we can also provide you a driver that disables the whole power management completely. This feature will be part of the image 2.0 beta 1, which will be released soon.

The WM9715 registers you can access using the AC97 Tweak Tool.

Thanks Samuel.
Yes. We are using ADC channels and Touch screen in our device. I found it to difficult from the article you have referenced in your mail.

PowerDownMask" = dword:0x7700

what should i do to disable total power management? Because, the power management is handled by another processor separately.

Try to set the powerdownmask to 0x3700, this should prevent the Wolfson from disabling any of the subunits. If that does not help, I can send you a preview of image 2.0beta 1 which allows to completely stop disabling the clocking of the unit, so you can check if the issue also happens there or not.

Hi Samuel, I have created a string Powerdownmask in /Drivers/Builtin/nvwavedev. I have put the value as 0 and the test goes on well till today (more than 8 days). There is no touch freeze. I have referred the WM 9715 datasheet to disable all, we have to assign 0.
Do you prefer to have the value as 0x3700?

@Gopal: No, 0 should be fine as well. Let us know if you see any further issues.

Hi samuel,
Actually, i have updated the registry using pregedit.exe -s command. After that i forget to give the command update.exe /f in the batch file.
So, untill Monday, the registry was not at all update from the batch file. After monday, i have corrected the batch file and the powerdownmask key is updated on the registry.
Right now the issue is.
Touch works when we start with the initial application and when we switch to other application, touch freezes, and there is no response for touches in any locations.
Scenario step by step

  1. Starting the Colibri Module
  2. Application example.exe stored in the flashdisk/autorun pops on the screen and functions as intended.
  3. Touch operation works fine
  4. Application closed to open a new application
  5. Touch does not work.
  6. Connected a key board and accessed the Start Button using windows Key
  7. Checked the touch screen function and it is not working

Can you give me some solution as soon as possible?

Is the second application doing ADC measurements or playing audio?

The second application does not use audio or ADC. It just uses GPIOs and Display.

Have you been able to reproduce this with our carrier board with our EDT touch as well? We would like to reprduce the issue here in order to better understand the issue.

Yes. I have tried same steps. i have put the Colibri T20 programmed with our application. There too, the same problem evidenced. When we close the application, touch does not responds. But from the EDT, when we touch signals captured from DSO, it shows the waveform as and when we touch.
In the application, when we close, we deinitialize AC 97… will that be the problem?

Yes, this may could be an issue. Give it a try not do deinit the ADC. Does it still breaks the touch?

if the deinit AC97 is the reason why it was not happening when we dont initialize the values of Powerdownmask registry?

Can you confirm it was really the deinit? If so I will have a closer check in the source why this is actually the case. I don’t have a proper explanation for that right now :wink:

There is no link between Init and Deinit of AC97. I have removed the code of Deinit in the application, Even now the problem remains the same.
As soon as we close the application, the touch functions are not working.

Thanks for testing. Is there a way you can provide us a scenario to reproduce that on our hardware / standard image and EDT Touch?