Thank you for the reply Bryce.
I see that when power on reset (POR) the MPR121 would go back to the init state. Does that mean even if I messed up the settings, I upload a new setting to the arduino and re-power the whole thing, then the settings would be cleaned up and replaced by the new settings, is the right?
And I've produced another small testing batch of touch panel. Which obeys to the touch pads design rules in the application note. But the glitch / retriggering still happens even if I set up the in-touch filter setting to the max with the following code:
| #define | NHD_T | 0x33 // in touch |
| #define | NCL_T | 0x34 // in touch |
| #define | FDL_T | 0x35 // in touch |
set_register(0x5A, NHD_T, 0x63);
set_register(0x5A, NCL_T, 0x63);
set_register(0x5A, FDL_T, 0xFF);
One thing to notice is that when the arduino is powered by my computer with USB, the glitch is almost gone, but when connected to an external 12v power supply, the glitch is very heavy. So I wonder there needs to be some kind of power filtering between the arduino and the MPR121, or on the MPR121 module. (right now the MPR121 is powered by 3.3v on arduino, and then regulated on the MPR121 module) What kind of power filtering do you suggest?
Thanks!