Does anyine know of a library that accesess the QTouch features in the various Atmel microcontrollers?
I'm suprised there isnt a library, but there seems to be very little support for it, for such a useful cool feature. Does anyone know why?
My project currently uses an external capacitive touch sensor (MPR121) but that seems silly seeing as that feature is built in to the 328P if i could find a library.
Historically, this has been prevented for philosophical, technical, and legal reasons.
It all comes down to the fact that the Atmel, and now Microchip corporations consider the QTouch library "secret sauce", and thus have not made it open source, neither in the licensing sense, nor in the sense of sharing the source code.
This meant that use of the official QTouch library meant:
A policy against supporting such libraries on philosophical grounds of it being contrary to Arduino's advocacy of the open source ideals had to be rescinded
The technical capability for the use of precompiled binaries in libraries had to be added
A way to use the binaries in legal compliance with the license provided by Atmel/Microchip had to be found
You can learn about this saga in the discussions here, and at the links off of those:
The most interesting part of the saga for me was the emergence of a use case for precompiled libraries unrelated to closed source libraries:
With the increasing resources of the microcontrollers available for use with the Arduino framework, and the increasingly complex firmware taking advantage of those resources, compilation times become more lengthy. Some open source library authors are now precompiling the code simply to save the users that time on their sketch compilations. In this case, the source code is still freely available for use under the open source license, often distributed alongside the binaries produced from it (the Arduino build system supports automatically falling back to compilation from source when there is no binary present for that specific target).
Thanks @ruilviana but that's different. The library you linked to is some third party code that uses the analogue pins to simulate capacitive touch. I was looking for a library that accesses the built in QTouch PTC feature in the microcontroller.