Touch sensitivity is a critical factor of the functionality of a touch panel. It is an indicator, among others, that will let you know if your touch panel will finally work as expected. Concerning mutual-capacitive touch sensors, touch sensitivity corresponds to the reduction of mutual capacitance caused by a touch event. The percentage of this reduction is a very useful metric of touch sensitivity.

But how can you get the mutual capacitance of your touch panel? 

You have two options:

1. You can measure it directly on your touch sensor through an RLC meter or an impedance analyzer. To do this you need to have money, time and the expertise to design and manufacture (through a third-party probably) a prototype. Afterwards, you need to go to the lab and pay special attention on how to measure properly, so that the measured values have accuracy and repeatability and then you can finally trust them.

2. Open your browser and log in to SENSE. 😉 

SENSE will allow you to run a Capacitance Analysis, which involves two simulations: one without any pointer and one with a pointer placed above the sensor. This way, SENSE will compute the mutual capacitance values, C, for both cases and will also present the difference, ΔC, between them, as well as its percentage, ΔC/C (%).

So, let’s see how you can get touch sensitivity through SENSE. For this purpose, we will work here on a simple example of a mutual-capacitive touch button designed on a PCB board. We need to follow four steps, which correspond to the  “Physical” menu on the left column of the main screen of SENSE:

  1. Prepare the Layout

  2. Build the StackUp

  3. Place a Pointer

  4. Set up Capacitance Analysis

Fig. 1. The “Physical” menu in SENSE.

1. Prepare the Layout

Layout is the most challenging part of a touch sensor design, as it poses the basic restrictions and rules that derive directly from specific project requirements and affect its performance in a way that is not straightforward and cannot be easily predicted. In a few words, without SENSE the design of layout is usually... “black magic”.

In order to design the layout for this example, it is easier to use the templates of SENSE through the “Add Element” option (rather than drawing it in a CAD tool and then importing it to SENSE).

Fig. 2. The Layout of a rectangular interlocking touch button as shown in SENSE.

This “rectangular interlocking button” is connected with the controller through traces. Here we need to add a “bottom trace” that runs below the button in order to reach the inner electrode through a via. We also need a trace connecting the outer electrode of the button. Since there is no obstacle here, this trace can be placed at the top level. Traces must overlap with electrodes/vias (no matter how much), in order to create a valid layout.

The outline represents the borders of the touch sensor. So, we always need an outline in order to run any type of Analysis. We must make sure that all the entities (button, traces and via) are placed within the outline without any unwanted overlaps.

For the exact dimensions and positions of the Elements used to create the Layout of this specific example, please see the Appendix at the end of this article.

💡  Before moving to StackUp, it is recommended that you rename the entities of your layout, by giving them a name that better describes their position and functionality, i.e. “top trace connected to the button”. In order to do so, just click “Alt+left click” at each entity from the list at the right side of the screen. This will help you to assign the entities in the StackUp, as you will see below…

2. Build the StackUp

We will use for this example a PCB-based touch sensor that has 6 layers in total. Each Layer includes a Material (Dielectric or Conductive Type) with specific thickness. In particular, conductive entities (layers 3 and 5) are placed at both sides of the FR4 (layer 4). Two layers of Soldermask (layers 2 and 6) are placed on the side of each conductive layer. The overlay is a PMMA layer placed on top of the PCB (layer 1).

Fig. 3. The layers of the Stackup and their properties.

Soldermask is not included in the dropdown list of dielectric materials, so we must add it in this list. In order to do so, just click on the “Add new material” button, select “Dielectric” and type the material name and its dielectric constant (also known as relative permittivity). 

For the conductive layers, we need to create groups of conductive entities. This way we will properly position the conductive entities of the Layout within the StackUp and also we will define their material. To do so, click on the + icon of Layer 3 and include in this group the inner and outer electrode of the button and the top trace. Follow the same process for Layer 5, which contains only the bottom trace.That’s why renaming the entities at the Layout screen (see the tip above) is so useful. 😉 

Fig. 4. Setting up the top conductive layer of the StackUp.

Concerning material, Copper (1 oz.) is not included in the dropdown list of conductive materials, so we must add it the same way we did for the soldermask. The only difference is that we need to fill in its sheet resistance (0.0005 Ohms/sq), since it is a conductive material.

As you noticed also before in Layout, our design also includes a via that connects the inner electrode with the bottom trace. At this step, we must assign the material of the via and define its vertical position in the stackup. To do so, use the “Vias” tab, found above of the stackup table. Then, click on “Add new via type” to create a new column for vias. In this column we click on the icon on top of this column to add a new via. A popup window appears where we select Copper (1 oz.) as the via material, we check “Vias 1” from the checkbox below, and finally we select the Layers 3 and 5, respectively, as start and end layers of the via.

Fig. 5. Setting up the properties of the via.

3. Place a Pointer

The end goal is to get the touch sensitivity, so we definitely need a pointer touching the surface of the sensor. The pointer can be any object that touches the sensor and interacts with it, like for example a human finger (bare or gloved) or a stylus or even a robotic arm. In this example the pointer is a bare finger. In order to simulate it, we must create a cylinder with a specific size and choose the “Conductive” option for its material.

💡 Once it is created, the pointer is from now on stored in this project for any future usage in any Analysis.

Fig. 6. Pointer creation in SENSE.

Touch sensitivity depends on the exact touch point. Therefore we must pay special attention to the proper pointer placement. In particular for touch buttons, the maximum value of touch sensitivity usually corresponds to a pointer placement at the center of the button. So, all we need is to place the pointer at the center of the button, which for this case is at the coordinates (0,0,0), as you can see in the picture below. To do so, we must navigate through the “Pointers” tab to the “Pointer Placements” section. As you can see below, these coordinates correspond to the center of the cylindrical pointer, as denoted through the orange point below on the canvas (left part of the screen). To do this, we can either click on the button “Add new points from canvas” and then click directly on the canvas or alternatively click on “+ ADD NEW POINT” on the top right and edit.

💡 You can create multiple sets of pointer placements. These will be kept in this project so you can use them in any Analysis where it makes sense to.

Fig. 7. The pointer is placed at the center of the button (0,0,0).

4. Set up Capacitance Analysis

Now we are ready to set up and run a Capacitance Analysis. First we need to click on the “Analysis” tab => “Create a new analysis” and select “Capacitance Analysis”. Here we are guided through 5 simple steps:

  1. Add a Pointer. We select the pointer that we just created and its placement. Then we click on “Proceed with Pointer”.

  2. Crop Layout. This design is quite simple, so we do not need to crop it. Click “Next”.

  3. Assign Active Conductors. Here we must just click on the inner electrode (or the outer one, it is the same) and then click on “Assign as Active”. The inner electrode together with the via and its trace will be highlighted as a united entity. Then we click “next”.

  4. Analysis Options. Here we need to select the resources which will be used for this Analysis. Just 8 cores and 16 GB memory are more than enough for this design, since we will get results of high accuracy in less than 5 minutes.

💡 In case that you are in a hurry or 5 minutes is too long for you to wait for, you can activate the “high speed” option found in “Advanced options” and get results of slightly lower accuracy within 1 minute!

  1. Summary. We take a final look at the settings of the Analysis. Since everything looks fine, then we click “Run Analysis” and...we go to grab some coffee. :) Once we are back, we will see the results on our browser…

5. Results

  • Mutual capacitance

From the drop-down menus on top of the screen, we must select the pointer placement and the type of results that we want to view. So, as a first step, in order to get the mutual capacitance value for the case of no pointer, we select “No Pointer” and “Capacitance”:

Fig. 8. Getting the mutual capacitance for the case of no pointer.

As you can see from the picture above, in this case the outer conductor appears as “Conductor 1” and the inner conductor as “Conductor 2” (this was assigned as active in the Analysis settings).  Conductor numbering does not follow any specific rule, but we can rename them (like in the figure below), by editing them through the results column on the right side of the screen. We can select any electrode either by clicking on it directly or by selecting any value from the results table on the right. The selected electrode is highlighted as orange, whereas the active conductor appears as yellow. So, the highlighted value in the column (orange) is actually the mutual capacitance, Cm, between the inner and outer electrode of the button, in the case of no pointer:

Cm (no pointer) = 3.349 pF

The second value of the column is the self-capacitance of the inner conductor (“conductor 2”). 

In order to get the mutual capacitance under finger touch, we need to select ““Pointer - X:0 Y:0 Z:0” for the Pointer placement on top. Of course you can rename the conductors as shown in the figure below. As expected, when the pointer touches the button, the mutual capacitance is reduced:

Cm (with pointer) = 3.015 pF

Fig. 9. Getting the mutual capacitance for the case with a pointer touching the button; the transparent circle represents the top view of the cylindrical pointer.

  • Touch Sensitivity, ΔC/C (%)

We can get directly the touch sensitivity by selecting for the Pointer placement again “Pointer - X:0 Y:0 Z:0” and for the Type “ΔC/C (%)”, which is actually the touch sensitivity metric that makes sense for mutual-capacitive sensors.

Fig. 10. Getting the touch sensitivity for this specific pointer position; the transparent circle represents the top view of the cylindrical pointer.

As you can see above:

Touch Sensitivity =Cm(no pointer) - Cm(with pointer)Cm(no pointer)  = 9.97%

Τhis figure of about 10% (or 10.6% in case you were in a hurry and had selected the “high speed” option) is considered as a good value, since for mutual-capacitive sensors a minimum touch sensitivity of about 5% is usually required for touch detection. On the other hand, the touch sensitivity must not be too high, in order to avoid potential false touches. That’s why it is very important for you to know the exact value of the touch sensitivity before you build and test your prototypes, so that you will need fewer iterations of redesign-prototyping-testing.


The Layout presented in this example includes a “Rectangular Interlocking Button” that is created from the template library of SENSE through “Add Element” => “Add Button”:

Fig. 11. Adding a “Rectangular Interlocking Button” in the Layout through templates of SENSE.

The inner electrode of the button is connected to the bottom trace through a via. In order to create a trace we must select “Add Element” => “Add Trace”. Via is added through Add Element” => “Add Via”.

Fig. 12. Adding a bottom trace in the Layout through templates of SENSE.

Fig. 13. Adding a via in the Layout through templates of SENSE.

Top trace is created with same way as the bottom one and it is connected to the outer electrode of the button:

Fig. 14. Adding a top trace in the Layout through templates of SENSE.

The outline is added through “Add Element” => “Add Outline”:

Fig. 15. Adding an outline in the Layout through templates of SENSE.

Did this answer your question?