# Release Notes for STM8 Touch Sensing Library (STM8_TouchSensing_Lib)

Copyright © 2010 STMicroelectronics

## Contents

1. STM8 Touch Sensing Library update History
2. License

## STM8 Touch Sensing Library update History

### V2.3.0 – 09/15/2010

To port an application from STM8 Touch Sensing Library V2.2.0 to V2.3.0, the user must create again his tsl_conf.h file from a tsl_conf_RC_TOADAPT.h or tsl_conf_CT_TOADAPT.h V2.3.0 file with its own parameters :

- PORT MASK definition for multi-channel keys section has been removed (the preprocessor variable definitions are automatically created in stm8_tsl_check_config.h)
- Preprocessor variables :

- PROTECT_IO_ACCESS: allows to protect the IO register modifications by interruption subroutines during accesses from Touch Sensing acquisition functions, (to be kept at 1 to keep same behaviour as V2.2.0)
- SW_SPREAD_SPECTRUM : for STM8L15x only, allows to use the same Spread Spectrum mechanism as implemented for the STM8L10x in order to keep a constant internal osillator frequency for USART communication for example, (0 to disable the feature)
- SPREAD_COUNTER_MAX is now used for STM8L15x hardware spread spectrum excursion (if SPREAD_SPECTRUM set to 1),
- ACTIVE_SHIELD_GROUP : defines the switch group dedicated to the active shield feature (0 to disable the feature)
- RTOS_MANAGEMENT : allows to call the timebase routine from the RTOS instead of using a timer interrupt every 500µs,
- TIMER_CALLBACK : allows to call a function from the timer interrupt used as 500µs timebase,
- USE_INLINED_FUNCTIONS : forces inlining of the SW spread spectrum function only (more function may be inlined in the future)

- no effect with IAR.

- All the preprocessor variables must be defined but set to 0 to disable the associated feature.

List of changes:

- Support of IAR C compiler:

- Tested with v1.10.0

- Add active shield feature for charge-transfer acquisition principle.
- Add callback capability for time-base interrupt sub-routine.
- Add RTOS management capability of the time-base function.
- Add forced inlining option for the software spread spectrum function.
- Add software spread spectrum for STM8L15x.
- Add amplitude management of the hardware spread spectrum for STM8L15x.
- Add the ability to define an application with multi-channel keys but without single channel key

- Add a new compilation variable automatically generated : NUMBER_OF_ACQUISITION_PORTS

- Add the ability to skip the port acquisition when all its channels are disabled.
- Improve acquisition speed for charge transfer acquisition for both STM8L10x and STM8L15x.
- Improve the management of the disabled channels during acquisition.
- Add the management of the interrupt masking defined by a compilation variable.
- Remove calibration related functions from the API.
- Remove alignment mechanism for assembly functions of RC acquisition principle file.
- Cleaning RC acquisition principle related code in charge transfer acquisition principle dedicated files.
- Improve checking performed in the stm8_tsl_check_config.h file.
- Simplify the multi-channel key definitions by automatically defining the MKEY_CHi_MASK compilation variable from stm8_tsl_check_config.h file.
- CLWHTA and CLWLTA are now also used by STM8L10x related functions for charge-transfer acquisition principle.
- Fix the adjustment of the low state pulse for STM8L10x charge-transfer acquisition.
- Rename “Detection exclusion system” acronym from DES to DxS.

### V2.2.0 – 11/30/2009

- New folders and workspace architecture.
- Support of Raisonance C compiler:

- Full compiler version required for inline assembly support
- Tested with v2.26.09.0317.

- ECS limitation corrected:

- References were frozen for 2 seconds whenever entering in post or pre states
- This was problematic in noisy environment.

- STM8L15x Charge Transfer acquisition optimized (30% faster)
- New parameters for STM8L15x introduced in “stm8_tsl_conf_CT.h” file for capacitance charging/discharging tuning:

- CLWHTA (Capacitance Loading Waiting HIGH Time Adjustment)
- CLWLTA (Capacitance Loading Waiting HIGH Time Adjustment)

### V2.1.0 – 09/30/2009

- Source files clean-up, MISRA check.

- Update to latest STM8L standard peripheral libraries (STM8L10x v1.1.0 and STM8L15x v1.0.0).
- Examples improvement, new Wheel example with the STM8L15x added.

### V2.0.0 - 08/31/2009

- Package structure and files organization updated

- Update to latest standard peripheral libraries
- Add the support of the charge-transfer acquisition principle (only supported by STM8L10x and STM8L15x devices)

### V1.3.0 - 10/29/2009

- Update to latest STM8S Standard Library V1.1.1.
- Update acquisition and timebase timers table of STM8_TSL_RC_Configuration.h file.
- Change condition to disable ECS when a SCKey or a MCKey is touched.

### V1.2.0 - 03/24/2009

- Add an option in the configuration file to choose the acquisition timer. This option allows to use the library with any STM8 device.
- Add a synchronization capability (beta) on an interruption. This option is new and has not been fully validated.
- Add Spread spectrum capability (beta). This option allows adding a variable delay between acquisitions to reduce noise sensitivity at specific frequencies. This option is new and has not been fully validated.

### V1.1.0 - 02/21/2009

- New option (NEGDETECT_AUTOCAL) added in the configuration file to enable or disable the autocalibration

### V1.0.0 - 01/22/2009

- First official release

## License

By using this Licensed Software, You are agreeing to be bound by the terms and conditions of this License Agreement. Do not use the Licensed Software until You have read and agreed to the following terms and conditions. The use of the Licensed Software implies automatically the acceptance of the following terms and conditions.

DEFINITIONS

Licensed Software: means the enclosed STM8 TOUCH SENSING LIBRARY, EXAMPLES, PROJECT TEMPLATE and all the related documentations and design tools licensed in the form of object and/or source code as the case maybe.

Product: means a product or a system that includes or incorporates solely and exclusively an executable version of the Licensed Software and provided further that such Licensed Software executes solely and exclusively on STM8 microcontroller devices manufactured by or for ST.

LICENSE

STMicroelectronics (“ST”) grants You a non-exclusive, worldwide, non-transferable (whether by assignment or otherwise) non sub-licensable (except as expressly provided hereunder), revocable, royalty-free limited license to:

(i) make copies, prepare derivatives works, of the source code version of the Licensed Software for the sole and exclusive purpose of developing executable versions of such Licensed Software only for use with the Product;

(ii) make copies, prepare derivatives works of the object code versions of the Licensed Software for the sole purpose of designing, developing and manufacturing the Products;

(iii) make, use, sell, offer to sell, import or otherwise distribute Products.

You have the right to grant sub-licenses of the rights set forth in this section in order to execute all of the rights set forth herein, provided that you will impose to the sub-licensee the same terms and conditions set forth in this Agreement and that you will remain fully liable to indemnify ST against all and any loss, liability, costs, damages, expenses (including the fees of lawyers and other professionals), suffered, incurred or sustained as a result of or in relation to the breach of the terms of this Agreement.

OWNERSHIP AND COPYRIGHT

Title to the Licensed Software, related documentation and all copies thereof remain with ST and/or its licensors. You may not remove the copyrights notices from the Licensed Software and to any copies of the Licensed Software. You agree to prevent any unauthorized copying of the Licensed Software and related documentation.

RESTRICTIONS

Unless otherwise explicitly stated in this Agreement, You may not sell, assign, sublicense, lease, rent or otherwise distribute the Licensed for commercial purposes, in whole or in part.

You acknowledge and agree that any use, adaptation translation or transcription of the Licensed Software or any portion or derivative thereof, for use with processors manufactured by or for an entity other than ST is a material breach of this Agreement and requires a separate license from ST.

No source code and/or object code relating to and/or based upon Licensed Software is to be made available by You unless expressly permitted under the section “License”.

You acknowledge and agree that the protection of the source code of the Licensed Software warrants the imposition of reasonable security precautions

In the event ST demonstrates to You a reasonable belief that the source code of the Licensed Software has been used or distributed in violation of this Agreement, ST may by written notification request certification as to whether such unauthorized use or distribution has occurred. You shall cooperate and assist ST in its determination of whether there has been unauthorized use or distribution of the source code of the Licensed Software and will take appropriate steps to remedy any unauthorized use or distribution.

NO WARRANTY

The Licensed Software is provided “as is” and “with all faults” without warranty of any kind expressed or implied. ST and its licensors expressly disclaim all warranties, expressed, implied or otherwise, including without limitation, warranty of merchantability, fitness for a particular purpose and non-infringement of intellectual property rights. ST does not warrant that the use in whole or in part of the Licensed Software will be interrupted or error free, will meet your requirements, or will operate with the combination of hardware and software selected by You.

You are responsible for determining whether the Licensed Software will be suitable for your intended use or application or will achieve your intended results.

ST has not authorized anyone to make any representation or warranty for the Licensed Software, and any technical, applications or design information or advice, quality characterization, reliability data or other services provided by ST shall not constitute any representation or warranty by ST or alter this disclaimer or warranty, and in no additional obligations or liabilities shall arise from ST’s providing such information or services. ST does not assume or authorize any other person to assume for it any other liability in connection with its Licensed Software.

Nothing contained in this Agreement will be construed as

(i) a warranty or representation by ST to maintain production of any ST device or other hardware or software with which the Licensed Software may be used or to otherwise maintain or support the Licensed Software in any manner; and

(ii) a commitment from ST and/or its licensors to bring or prosecute actions or suits against third parties for infringement of any of the rights licensed hereby, or conferring any rights to bring or prosecute actions or suits against third parties for infringement. However, ST has the right to terminate this Agreement immediately upon receiving notice of any claim, suit or proceeding that alleges that the Licensed Software or your use or distribution of the Licensed Software infringes any third party intellectual property rights.

All other warranties, conditions or other terms implied by law are excluded to the fullest extent permitted by law.

LIMITATION OF LIABILITIES

In no event ST or its licensors shall be liable to You or any third party for any indirect, special, consequential, incidental, punitive damages or other damages (including but not limited to, the cost of labor, re-qualification, delay, loss of profits, loss of revenues, loss of data, costs of procurement of substitute goods or services or the like) whether based on contract, tort, or any other legal theory, relating to or in connection with the Licensed Software, the documentation or this Agreement, even if ST has been advised of the possibility of such damages.

In no event shall ST’s liability to You or any third party under this Agreement, including any claim with respect of any third party intellectual property rights, for any cause of action exceed 100 US$. This section does not apply to the extent prohibited by law. For the purposes of this section, any liability of ST shall be treated in the aggregate.

TERMINATION

ST may terminate this license at any time if You are in breach of any of its terms and conditions. Upon termination, You will immediately destroy or return all copies of the software and documentation to ST.

APPLICABLE LAW AND JURISDICTION

In case of dispute and in the absence of an amicable settlement, the only competent jurisdiction shall be the Courts of Geneva, Switzerland. The applicable law shall be the law of Switzerland.

SEVERABILITY

If any provision of this agreement is or becomes, at any time or for any reason, unenforceable or invalid, no other provision of this agreement shall be affected thereby, and the remaining provisions of this agreement shall continue with the same force and effect as if such unenforceable or invalid provisions had not been inserted in this Agreement.

WAIVER

The waiver by either party of any breach of any provisions of this Agreement shall not operate or be construed as a waiver of any other or a subsequent breach of the same or a different provision.

RELATIONSHIP OF THE PARTIES

Nothing in this Agreement shall create, or be deemed to create, a partnership or the relationship of principal and agent or employer and employee between the Parties. Neither Party has the authority or power to bind, to contract in the name of or to create a liability for the other in any way or for any purpose

For a complete documentation on the STM8S and STM8L Microcontrollers, please visit www.st.com/mcu