Home
Sparkfun Touch Potentiometer User Manual
Contents
1. changed via the touch sensor or by a command to change the EEPROM location The Touch Potentiometer implements only the mandatory PC slave functionality described in the NXP Semiconductor document UM10204 C bus specification and user manual These functions include START condition STOP condition Acknowledge and 7 bit slave address It does not support General Call address 10 bit slave address Software reset or Device ID The maximum bit rate is 100 kHz The default base address is 8 The base address provides direct access to the current potentiometer value The next address provides indirect access to the potentiometer value control registers and EEPROM storage Direct Access base address Reading and writing this address provides direct 1 byte access to the current potentiometer value A write to this location consists of the I2C address byte with bit O low to signify a write and a data byte to set the value The Touch Potentiometer changes its internal value to the value of the data byte A read from this location consists of the I2C address byte with bit O high to signify a read and a data byte sourced by the Touch Potentiometer with the current potentiometer value Indirect Access base address 1 Reading and writing this address provides indirect multiple transaction access to control registers and EEPROM storage for configuration of the Touch Potentiometer The command encoding is the same as the Serial Interf
2. Notes 1 Read requests with a value of lt N gt that is outside the valid address ranges are ignored No data is returned to the serial port and the I2C Read returns a value of 0 Sparkfun Touch Potentiometer User Manual 33 danjuliodesigns LLC Write Control Register Description Write an 8 bit value to a control register Serial command W lt N gt lt V gt lt CR gt IZC command Write lt I2C Base Addr 1 gt lt 0x57 gt lt N gt lt V gt Argument lt N gt is the 8 bit address of the control register to write lt V gt is the 8 bit data to write Serial response None IZC response None Notes 1 A space character is required between lt N gt and lt V gt for commands sent to the serial interface 2 Write requests with a value of lt N gt that is outside the valid address ranges are ignored 3 Write requests to Read Only control registers are ignored Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Set EEPROM Location Description Write an 8 bit value to an EEPROM location Serial command S lt N gt lt V gt lt CR gt IZC command Write lt I2C Base Addr 1 gt lt 0x53 gt lt N gt lt V gt Argument lt N gt is the 8 bit address of the EEPROM location to write lt V gt is the 8 bit data to write Serial response None RC response None Notes 1 A space character is required between lt N gt and lt V gt for commands sent to the serial interface 2 The host i
3. Notes about the calibration values Sensor 1 Minimum PowerOn Count Sensor 1 Minimum PowerOn Count Sensor 2 Minimum PowerOn Count Sensor 2 Minimum PowerOn Count Delta Delta Delta Delta High LOW High LOW High Byte MinPowerOn1 Count 15 8 MinPowerOn1 Count gt gt 8 Low Byte MinPowerOn1Count 7 0 MinPowerOn1 Count amp OxFF High Byte MinPowerOn2Count 15 8 MinPowerOn2Count gt gt 8 Low Byte MinPowerOn2Count 7 0 MinPowerOn2Count amp OxFF Byte ValidCountDelta1 15 8 ValidCountDelta1 gt gt 8 Byte ValidCountDelta1 7 0 ValidCountDelta1 amp OxFF Byte ValidCountDelta2 15 8 ValidCountDelta2 gt gt 8 Byte ValidCountDelta2 7 0 Valid CountDelta2 amp OxFF 1 The Minimum Power On Counts should be less than the Sensor Count values when there is any touch and less than the worst case untouched values 2 The smaller the Valid Touch Count Delta values the more influence the other sensor has when trying to turn the potentiometer fully on or fully off The greater that Valid Touch Count Delta then the less sensitive to changes near the end Sparkfun Touch Potentiometer User Manual 42 danjuliodesigns LLC Appendix C Log laper Circuit The following circuit example is from an article written by Hank Zumbahlen of Analog Devices in the January 20 2000 issues of EDN magazine titled Tack a log taper onto a digital p
4. KH CED Puri m Analog Pouer Analog IC Default Junpers soldered Ungelder to connect Us and U to anger Supply asu gt ae ut Digital Potentiometer Supply Single ended U connected to GND Min 4 5V Max 16 5U Dual endeds Min 4 4 BU Max B BU For more info see the Electrical Specifications section of the User Guide The maximum voltage potential betueen U and U is 15 volts U maximum is 5U U maximum is 15U For more info see the Analog IO section of the User Guide Er m He zla 5 GG 8 la om He ila m HE Gag i g O 2 Released under the Creative Commons 8 8 Attribution Share Alike 4 0 License https creativecammans org licenses by sa 4 0 TITLE touch_pot t Design by danjuliodesigns LLC REU Joel Bartlett v13 SFE open hardware Date 18 19 15 2 22 PM Sheet 1 1 45 Sparkfun Touch Potentiometer User Manual
5. C interface Both interfaces are active simultaneously The serial interface operates at 9600 baud Data is transmitted using 8 data bits 1 stop bit and no parity 8N1 The I C interfaces is a 7 bit slave with a maximum clock rate of 100 kHz It does not support General Call or 10 bit addressing Sparkfun Touch Potentiometer User Manual 10 danjuliodesigns LLC The PWM output generates a signal with a duty cycle that is proportional to the current Touch Potentiometer value A value of zero results ina PWM output of 0 duty cycle off A value of 255 full scale results in a PWM output of nearly 100 duty cycle on Label Function PWM Pulse Width Modulation Output I2C SCL clock I2C SDA data Digital IO pad descriptions Important Note about Power Supplies The capacitive sensors may be adversely affected by electrical noise They are sensitive to 50 and 60 Hz energy that may be coupled through power supplies with inadequate line filtering or configurations with a ground loop for example a system that has a DC power supply and is also connected to a computer with its own power supply It may be necessary to include an AC line filter in front of some cheap switch mode power supplies or to eliminate ground loop conditions or eliminate ground loops Analog IO The Touch Potentiometer Analog IO signals consist of the AD5262 wiper and wiper power supply signals The AD5262 supports two separate digital 20 k ohm potentiometer
6. User Value at power up will clear the LED display after the Initial Calibration is completed Make sure you are not touching the capacitive sensors at power up Make sure that a conductive item such a piece of metal is not touching the capacitive sensors at power up Adjust the Minimum PowerOn Counts to be lower than an average of the sensor readings with no touch See Appendix B for more information about calibrating the Touch Potentiometer The AD5262 can get hot when certain parasitic circuit paths are enabled when it has logic power but no power connection on V or V Make sure that V and V are connected to a power supply outside the range of the analog voltage signals 37 danjuliodesigns LLC Symptom No communication through the serial interface No communication through the Logic level IC interface Receive unexpected 0x00 when reading the 12C interface No response for commands sent through the serial interface Possible Causes Signals reversed Incorrect serial interface configuration Incorrect voltage levels Incorrect I2C interface configuration Missing pull up resistors Unsupported I2C commands Host controller is performing an I2C read that is larger than the data returned by the previous command Extraneous characters in command for example a lt LF gt character before the lt CR gt character Sparkfun Touch Potentiometer User Manual Action Make sure that
7. allows operation up to 12 VDC Sparkfun Touch Potentiometer User Manual 9 danjuliodesigns LLC Connections Connections to the Touch Potentiometer are made with through hole connectors on 0 1 inch centers or solder pads on the rear side of the circuit board useful for mounting the touchpad under a flat bezel There are two sets of connections one set for the digital power and IO and another set of connections for the analog potentiometer power and signals Two jumpers described later allow powering the analog potentiometer from the digital 5V power A button allows the user to quickly change the I2C address of the Touch Potentiometer using the touch sensor Note Extreme care should be taken when soldering or de soldering leads to the Touch Potentiometer solder pads or adding or removing a jumper Too much heat or pressure may tear the pad or jumper location off the PCB Use a fine tip soldering iron and a minimum amount of solder Digital Analog IO IO dik 1 a TH poe Connectors zx005 z na aa 0000000 00000000 SMT Contacts OOOOOO0 a 00000000 J1 Button Board Layout Rear View Digital IO The Touch Potentiometer Digital IO connections consist of the VIN and ground power signals 5 12 VDC for the micro controller and digital portion of the AD5262 a TTL level serial interface an I2C interface and the PWM output The Touch Potentiometer communicates to a host device using TTL level serial interface or an I
8. finger and reading it out using the G command BEP X BO Connect G Q W1 128 G 128 usbmodem14221 9600 8 N 1 ex RTs GDR vcd Connected 00 14 32 rx cts psr Ban 2 Example Serial Session IZC Interface with Arduino A micro controller can access the Touch Potentiometer using an I C interface The Touch Potentiometer supports 7 bit addressing and a maximum transfer rate of 100 kHz It utilizes two I2C addresses The first address is used to directly access get or set the Touch Potentiometer value and the subsequent address is used for accessing control registers and other resources The address can be changed See Changing 12C Address for more information Sparkfun Touch Potentiometer User Manual 16 danjuliodesigns LLC 0090001 566590 Touch Potentiometer 8 g 2 g 5 g g 2 2 o 9 va O Arduino Arduino Connections The Touch Potentiometer may be connected to a 5V Arduino I2C peripheral A4 A5 directly Level translators should be used for 3 3V Arduino boards or other 3 3V micro controllers The Touch Potentiometer activates weak pull ups on its PC signals so pull up resistors are not necessary for short connections a few inches Pull up resistor values of 4 7 k ohm to 10 k ohm may be used Simple access routines are used to communicate with the Touch Potentiometer as shown in the following demonstration program The following code segment may be cut amp paste into the
9. portion at all because you are trying to provide the maximum capacitive load to Sensor 2 and the minimum capacitive load to Sensor 1 b While touching the Sensor 2 landing area read the raw Sensor Count values as described above Store the Sensor 1 value as SensoriTouchB Store the Sensor 2 value as Sensor2TouchB Sparkfun Touch Potentiometer User Manual 41 danjuliodesigns LLC 4 Compute intermediate delta values Sensor1DeltaA Sensor1DeltaB Sensor2DeltaA Sensor2DeltaB a Sensor b Sensor DeltaB Sensorildie Sensor1 TouchB c Sensor2 d Sensor2DeltaB Sensor2ldle Sensor2TouchB DeltaA Sensor1ldle Sensor1 TouchA DeltaA Sensor2ldle Sensor2TouchA 5 Validate the data Repeat steps 1 4 if the data cannot be validated a Verify Sensor2DeltaA is less than 25 of Sensor1DeltaA b Verify Sensor Delta B is less than 25 of Sensor2DeltaB 6 Compute the Minimum PowerOn Count values MinPowerOn1 Count MinPowerOn2Count a MinPowerOn1 Count Sensor Idle 0 33 Sensor1 DeltaB b MinPowerOn2Count Sensor2ldle 0 33 Sensor2DeltaA 7 Compute the Valid Touch Count Delta values ValidCountDelta1 Valid CountDelta2 B a ValidCountDelta1 Sensor1 Delta b ValidCountDelta2 Sensor2DeltaA 8 Store the values in EEPROM g h Sensor 1 Valid Touch Count Sensor 1 Valid Touch Count Sensor 2 Valid Touch Count Sensor 2 Valid Touch Count
10. Arduino IDE See Command List for more information about the Command interface Simple Touch Potentiometer Example with Arduino Reads the pot value and controls the brightness of the Arduino LED on Digital Pin 13 Also logs new values to the serial port Utilizes both the direct and indirect command interface forms Assumes Touch Pot is at I2C Address 8 include Wire h int i2cAddr 8 Direct access at i2cAddr indirect registers at i2cAddr 1 uint8_t prevValue uint8_t curValue void setup Serial begin 115200 Wire begin pinMode 13 OUTPUT Demonstrate access to Touch Potentiometer registers WriteTpReg 1 128 set to 50 by writing to register 1 curValue ReadTpReg 1 read back value just set Set Arduino LED PWM to match analogWrite 13 curValue prevValue curValue void loop delay 50 Read 20 times second Demonstrate direct access to Touch Potentiometer value Sparkfun Touch Potentiometer User Manual 17 danjuliodesigns LLC curValue ReadTpValue faster I2C access than register read if curValue prevValue analogWrite 13 curValue Serial printin curValue prevValue curValue Write a Touch Potentiometer register void WriteTpReg uint8 t addr uint8_t data Wire beginTransmission i2cAddr 1 Wire write W Wire write addr Wire write data Wire endTransmission Get the Touch Potentiometer value uint8_
11. CountH and Sensor2CountL and concatenating the high and low halves together to get 16 bit values for Sensor1 Count and Sensor2Count It is ideal to average together several readings although it is possible to execute the procedure with only a single reading at the points where the Touch Potentiometer raw values are required Sensor1 Count Sensor1CountH lt lt 8 Sensor1 CountL Sensor2Count Sensor2CountH lt lt 8 Sensor2CountL The registers should be read sequentially The firmware does not ensure atomic access to these values It is possible for the values to be updated between access of the high and low halves For this reason the data should be validated prior to use A simple mechanism is to read the pair several times say 5 times through out the high and low values and average the remaining 3 values The 16 bit Sensor Counts are the result of sampling the capacitive sensor oscillator each sample period As shown in the diagram below the count is highest in the untouched state and is lower as capacitive loads are added to the sensor The goal of the manual calibration procedure is to determine the average Sensor Count values for the no touch and touch conditions and use those to compute the Minimum PowerOn and Valid Touch Count Delta values Sparkfun Touch Potentiometer User Manual 40 danjuliodesigns LLC Count Measured Sensor Touched Calculated Idle Avg PNA AP ee Min PO Count Y valid Touch Delta To
12. OM location if the validation check fails The validation checks mail fail for the following reasons Please see Appendix B for more information about the nomenclature 1 Sensor2DeltaA is greater than 25 of Sensor1DeltaA This may occur if Sensor 2 was being partially touched during Phase 2 2 Sensor1DeltaB is greater than 25 of Sensor2DeltaB This may occur during Phase 3 if Sensor 1 was being partially touched 3 Any of the Sensor Touched Counts is greater than the Idle Average This may occur if excessive noise is coupled into the sensor while being touched for example 50 or 60 Hz noise This typically happens if there is a ground loop in the system or a power supply with inadequate filtering is used Note that the Backup EEPROM locations are not updated by this procedure and may be used to recover the factory default configuration Sparkfun Touch Potentiometer User Manual 30 danjuliodesigns LLC Command Interface Command List The Touch Potentiometer implements the following commands summarized in the following table and described more fully in the following sections Command ASCII Hex Command Response Description Command Command Argument Value Value Ox47 8 bit Gets the current potentiometer potentiometer value value Ox52 8 bit register 8 bit register Read a control register address value Get current value Read Control Register Set EEPROM location 0x53 8 bit Write to an EEP
13. ROM location EEPROM address 8 bit value 0x51 8 bit 8 bit value Read an EEPROM location EEPROM address Touch Potentiometer Command List Query EEPROM location Write Control W 0x57 8 bit register Write a control register Register address 8 bit register value 8 bit values are encoded as an ASCII string O to 255 for the serial interface Sparkfun Touch Potentiometer User Manual 31 danjuliodesigns LLC Get Current Value Description Request the current potentiometer value Serial command G lt CR gt 1C commands Write lt I2C Base Addr 1 gt lt 0x47 gt Read lt I C Base Addr 1 gt Argument None Serial response Returns 1 8 bit byte with the current potentiometer value encoded as an ASCII string O to 255 followed by lt CR gt RC response Read 1 8 bit byte with the current potentiometer value Notes None Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Read Control Register Description Read a control register value Serial command R lt N gt lt CR gt IZC command Write lt I2C Base Addr 1 gt lt 0x52 gt lt N gt Read lt I C Base Addr 1 gt Argument lt N gt is the 8 bit address of the control register to read Serial response Returns 1 8 bit byte with the control register value encoded as an ASCII string O to 255 followed by lt CR gt RC response Read 1 8 bit byte with the control register value
14. ace and the indirect access mechanism also provides a command to read the current potentiometer value Sparkfun Touch Potentiometer User Manual 22 danjuliodesigns LLC Command Sequences consist of 1 2 or 3 byte C write sequences the command byte followed by any required argument byte followed by the STOP condition The host controller must issue a read of one data byte for commands that generate a response The read should be issued following the write and before subsequent commands The Touch Potentiometer may stretch the clock on the SCL line during the read while it fetches data bytes internally to satisfy the read It will return the value 0x00 for host controller IC reads that request more data than the is contained in the response or for reads without a prior command The example shown in the Serial Interface section above would consist of the following bytes transmitted on the I2C interface for the command lt l2cAddress W gt lt 0x47 gt The following response data would be read the host controller reads one byte lt I2cAddress R gt lt 0x80 gt The Touch Potentiometer can buffer multiple 2C commands and arguments in an internal 16 byte FIFO However it can only process one command at a time that requires a response This is because it resets the internal buffer it uses to hold responses each time a command is received from the I2C interface The host controller must execute a read and obtain the response data for any command
15. age potential between V and V is 15 volts V maximum is 5V V maximum is 15V 4 Electrical noise on V and V may be coupled into the signal passing through the potentiometer A power supply connected to V and V may require additional filtering to eliminate this noise Sparkfun Touch Potentiometer User Manual 12 danjuliodesigns LLC Jumpers Jumpers J1 and J2 are designed to be bridged with solder no other conductor necessary They may be removed by carefully sucking up the solder using a vacuum solder sucker or solder wick Jumper installed and removed Quick Test The Touch Potentiometer may be tested with only a 5 12 volt regulated power supply do not let the VIN supply exceed 12V Attach the Touch Potentiometer to the power supply and switch on the power supply Four LEDs should light as shown in the following figure This indicates the Touch Potentiometer is performing an initial calibration to determine its idle average values Make sure you are not touching the sensor during the calibration The calibration will last approximately two seconds and then the Touch Potentiometer should begin normal operation Sparkfun Touch Potentiometer User Manual 13 danjuliodesigns LLC Initial Calibration In normal operation the factory default Touch Potentiometer will light all eight LEDs with a bright spot that indicates the current value linear display mode Sliding a finger along the sensor area will move the s
16. and alone capacity The Touch Potentiometer provides both a dual channel analog and PWM output for direct control of other circuitry Configurable analog and PWM transfer functions support a wide variety of applications Features Dual host interfaces Logic level serial and IC Dual 8 bit 20 k ohm 3 terminal digitally controlled variable resistor outputs PWM output 8 LED display with multiple display modes and intensity levels Option for interpolated soft changes between touches Configurable touch sensor parameters for a variety of PCB covers Easily configurable I2C address to allow multiple devices on one bus Configurable linear or non linear PWM transfer function Configurable linear or simulated logarithmic variable resistor transfer function Variable resistor supports single or dual supply operation Simple register interface with jabber option Programmable power on default operation Built in calibration procedure User accessible EEPROM data storage Built in Low dropout voltage regulator for operation up to 12 VDC Applications Analog potentiometer replacement Stereo channel audio level control Computer peripheral Embedded system control Dimmer for LED lighting applications DAC replacement Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Version Information Datasheet Firmware Comments Revision Version 1 1 1 1 Fixed some typos Updated LED dimmer and amplifier example circuit diagrams E
17. at may be changed by writing to the Control register described in the section Control Registers 1 Linear Display A bright spot that is next to the current value is simulated by varying the brightness of all LEDs LEDs near the current value are brightest and LEDs further away are dimmer The entire display fades to a much dimmer level after 10 seconds of inactivity It returns to full brightness when the value is changed either through touch or by ahost command This format is the factory default 2 Bar Graph All LEDs from the lowest up to the LED nearest to the current value are lit LEDs above these are off 3 Single Dot The LED nearest to the current value is lit All other LEDs are off The brightness of Bar Graph and Single Dot display formats is configurable to one of four brightness levels User LED Display The LED display may also be controlled manually with an 8 bit pattern written to the UserLedValue register The brightness of the display is configurable to one of four brightness levels Host Interface The Touch Potentiometer is a slave device It responds to commands issued to it from a host controller It interprets commands from either a serial or I2C interface Both interfaces are simultaneously operational The Touch Potentiometer is capable of receiving commands 250 mSec after being powered up Unknown or illegal commands are ignored Some commands generate a response Responses are transmitted back to the host aut
18. ed by the firmware They may be used to store application specific data Future firmware revisions may use additional EEPROM locations so application specific data should be stored in the middle of the EEPROM range Changing the EEPROM values used to configure the capacitive sensors may render these sensors inoperable However the factory default values listed below may be reloaded to restore original operation In addition a backup set of parameters for the operational values is stored in the last locations of the EEPROM and may be used to restore the factory default configuration Typically the only EEPROM values that are changed are the Control Register default and the I2C Base Address The Minimum PowerOn Count and Valid Touch Count Delta are the EEPROM values are usually modified when adjusting the capacitive sensors to account for a specific label It should not be necessary to change any other operational EEPROM values Address Default Value Description o ow Control Register power on value 1 0x08 IC Base Address power on value Bit 7 Unused masked off Bit 6 2 Address bits 6 2 Bit O Unused masked off 2 OxOD Note 1 Sensor 1 Minimum PowerOn Count High Byte The Minimum PowerOn Counts set the initial calibration threshold Each sensor must generate an average of several values greater than the associated Minimum PowerOn Count to exit the initial calibration and enter normal operation OxDE Note 1 Sensor 1 Min
19. ess PWM Output The PWM Output has 10 bit resolution The Touch Potentiometer supports two different transfer functions between the 8 bit potentiometer value and PWM Output 1 Linear PWM bits 9 2 are set to the 8 bit potentiometer value PWM bits 1 0 are set to zero 2 Non linear PWM bits 9 0 are set by the transfer function y x153 This transfer function is designed to reduce changes at the low end It is optimized for translation between 8 and 10 bits assuring a 1 count change for the first few values at the low end It is designed to improve the perceived brightness changes in applications such as LED dimming Sparkfun Touch Potentiometer User Manual 24 danjuliodesigns LLC PWM Output Transfer Functions The transfer function is configured from EEPROM at power up and may be changed by writing to the Control register described in the section Control Registers Analog Output The analog output has 8 bit resolution The AD5262 presents a nominal resistance of 20 k ohms between the A and B terminals The wiper output may be set to one of 256 values Each value count is approximately 78 ohms The wiper circuitry has a typical inherent 60 ohm resistance Resistance from terminal A to the Wiper decreases with increasing Touch Potentiometer values typical values 60 138 216 ohms and so on up to approximately 19 982 ohms Resistance from terminal B to the Wiper increases with increasing Touch Potentiometer va
20. from an ideal value measured between the maximum resistance and the minimum resistance wiper positions Resistor differential nonlinearity measures the relative step change from ideal between successive tap positions The AD5262 part used in the Touch Pot is guaranteed monotonic Sparkfun Touch Potentiometer User Manual 7 danjuliodesigns LLC Mechanical Specifications 00000000 0 65 nj IE Board Dimensions inches Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Getting Started Block Diagram button sensor Touch Potentiometer Block Diagram Circuit Description The Touch Potentiometer is controlled by a Microchip PIC16F1829 8 bit micro controller that provides the host interface LED control capacitive sense and peripheral control functions The digital potentiometer functions are provided by an Analog Devices AD5262 integrated circuit Capacitive sensing is done by two interleaved sensors on the top side of the PCB that control an oscillator inside the micro controller Touching the sensors changes the oscillator frequency which is read by the micro controller Position is determined by a ratio metric calculation of the changes in oscillator frequency for both sensors The LEDs are controlled using pulse width modulation and multiplexing A push button allows changing the PC address and device calibration without an external computer or micro controller A Low dropout voltage regulator
21. gisters accessed via the Serial and I2C interfaces to query status and set operational parameters Commands to access the registers include the register address Commands with an address value outside the valid range of addresses are ignored Some registers are read only RO Write accesses to these registers have no effect Address Register Access Description Version Firmware revision Bits 7 4 Major revision Incremented when functionality is added or changed Bits 3 0 Minor revision Incremented for bug fixes ma CurPotValue Current potentiometer value Power on value is set to zero Device Status Bit 7 Reserved reads as 0 Bit 6 Button currently pressed Bit 5 Touchpad calibration procedure in progress Bit 4 I2C Address set mode in progress Bit 3 Sensor 2 upper Valid Touch detected Bit 2 Sensor 1 lower Valid Touch detected Bit 1 Sensor 2 Initial Cal in progress Bit O Sensor 1 Initial Cal in progress 3 Control RW Device Configuration Bit 7 Enable Serial Jabber Setting this bit enables the Touch Potentiometer to automatically transmit updated values through the serial interface Bit 6 Enable Interpolation Setting this bit enables the Touch Potentiometer to interpolate the potentiometer value between the current value and the value detected upon first touch over a short period of time 50 200mSec Clearing this bit causes the potentiometer value to be updated immediately Bit 5 PWM Output Configu
22. he bottom LED is lit at the beginning of this phase indicating that you should immediately touch the Sensor 1 landing area next to the lit LED and hold your touch until the phase is complete You should attempt to only touch Sensor 1 the bottom sensor and not touch any of Sensor 2 3 Sensor 2 Touched Counts The values for each sensor when Sensor 2 is touched and Sensor 1 is untouched touching the top end of the slider are saved at the end of phase 2 The top LED is lit at the beginning of this phase indicating that you should immediately touch the Sensor 2 landing area next to the lit LED and hold your touch until the phase is complete You should attempt to only touch Sensor 2 the top sensor and not touch any of Sensor 1 Sparkfun Touch Potentiometer User Manual 29 danjuliodesigns LLC o 09090000 00000000 Phase 1 Phase 2 Don t Touch Touch Lower Calibration Procedure Phases The values collected in all three phases are validated at the end of phase 3 Z OO00000 11 Phase 3 Touch Upper Both the Power on Count and Valid Touch Delta Count operational parameters and operational EEPROM locations are updated if they pass the validation checks In this case the Touch Potentiometer enters the initial calibration phase four LEDs lit waiting for you to release your touch from the top of the slider The Touch Potentiometer enters normal operation again without updating any operational parameters or EEPR
23. imum PowerOn Count Low Byte OxOE Note 1 Sensor 2 Minimum PowerOn Count High Byte 0x42 Note 1 Sensor 2 Minimum PowerOn Count Low Byte Sparkfun Touch Potentiometer User Manual 27 danjuliodesigns LLC Address Default Value Description 0x00 Note 1 Sensor 1 Valid Touch Count Delta High Byte The Valid Touch Count Delta values specify the difference in counts accumulated during a sensor sample period from the untouched average to signify a valid touch These values may vary with different label materials 0x80 Note 1 Sensor 1 Valid Touch Count Delta Low Byte mm 0x00 Note 1 Sensor 2 Valid Touch Count Delta High Byte za 0x78 Note 1 Sensor 2 Valid Touch Count Delta Low Byte Sensor Idle Count Delta High Byte The Idle Count Delta value specifies the different in counts accumulated during a sensor sample period from the untouched average at which point the values are no longer incorporated into the untouched average Oxia 0 Sensor Idle Count Delta Low Byte 0x06 Internal algorithm use Do not change this without consultation from danjuliodesigns LLC 0x00 Sensor Guard Band Specifies a region at the top and bottom of the computed linear position to consider O at the bottom of the sensor and 255 at the top of the sensor The remaining portion is rescaled between those values The Sensor Guard Band has the effect of making the Full Off and Full On touch positions larger at the expense of the linear region i
24. lues See the AD5262 specification for more information The AD5262 IC is a linear device The wiper resistance changes linearly as a function of the 8 bit value loaded into the part by the micro controller Some analog applications such as volume control typically use logarithmic potentiometers audio taper to account for human perception of loudness The Touch Potentiometer supports the AD5262 in a linear mode as well as a simulated logarithmic mode configured at power on from EEPROM This transfer function may also be changed by writing to the Control register described in Control Registers The simulated logarithmic transfer function takes the 8 bit linear potentiometer value and converts it to a 5 bit 82 position value with a 41 dB range using the function y 8 9125x10 e 7208 _ A mathematical treatment of the algorithm can be found on the web page Dr Lex Site Programming Volume Controls The parameters for this equation were chosen to maximize the dynamic range and utilize as much of the AD5262 resistive range as possible There are alternative methods for taking the output of a linear potentiometer and simulating a logarithmic device that may suite individual requirements better One of these is outlined in Appendix C 250 A 200 Analog Output Transfer Functions Sparkfun Touch Potentiometer User Manual 25 danjuliodesigns LLC Control Registers The Touch Potentiometer implements a set of addressed 8 bit re
25. n between Internal algorithm use Do not change this without consultation from danjuliodesigns LLC Internal algorithm use Do not change this without consultation from danjuliodesigns LLC Internal algorithm use Do not change this without consultation from danjuliodesigns LLC Internal algorithm use Do not change this without consultation from danjuliodesigns LLC Backup value set checksum This value is the sum of values in locations 238 255 Itisused by software to verify the integrity of the backup value set It is unused by the firmware and should not be modified by the user unless the user is modifying one of locations 238 255 not recommended Sparkfun Touch Potentiometer User Manual 28 danjuliodesigns LLC Address Default Value Description 238 255 Backup value set Contains in reverse order a backup set of values for locations O 17 Location 255 contains a backup value for location 0 and so on These values generally should not be modified by the user They are designed to be used to recover the operational values The arduino demo sketch Ip test sketch and the utility program tputil access the locations when restoring the factory default operating configuration Notes 1 These values represent calibration data that supports most touch potentiometers These values are adjusted during a factory calibration procedure and differ from what is listed here The calibration values in
26. ne used to identify when a valid touch is present These parameters may be changed by the user through either the Command Interface or a built in procedure to recalibrate the Touch Potentiometer parameters for various conditions See Appendix B for more information The Touch Potentiometer is designed to be used without any panel or with a thin panel adhesively attached to the PCB up to approximately 0 5 mm thick The sensitivity is reduced as the thickness of a cover increases The baseline frequency also is reduced The panel must not be conductive Higher dielectric materials work better than lower dielectric materials The default touchpad parameter set has been verified with polystyrene panel material attached using double sticky carpet tape Other professional pressure sensitive adhesives such as 3M 467 or 468 should work as well The adhesive should cover the entire surface of the sensor evenly Pee non conductive panel touch sensor surface adhesive typ 0 4 mm 1 6 mm Touch Potentiometer PCB Typical panel stack up Sparkfun Touch Potentiometer User Manual 20 danjuliodesigns LLC LED Display The eight LED display is used to display the current Touch Potentiometer value It may also be configured to display any pattern loaded by a host system through the Command Interface The power up configuration is loaded from EEPROM Touch Potentiometer value LED Display The value may be displayed in three different formats The form
27. nhanced example description text 1 2 1 3 1 4 Updated for firmware versions 1 3 danjuliodesigns version and version 1 4 Sparkfun version Firmware now requires 3 quick presses of the button to enter I2C Address set mode Firmware now indicates entry into I2C Address set mode with 3 quick blinks of the LED display Added indication of I2C Address set mode in the Status register bit 4 Added backup value set of EEPROM entries at the end of the EEPROM space locations 237 255 to support per device calibration with factory default restore Noted that values listed in the manual may differ in specific devices 1 3 1 4 Updated calibration procedure 1 4 1 5 1 6 Updated for firmware versions 1 5 danjuliodesigns board and 1 6 Sparkfun board 1 Firmware now supports built in calibration function entered by 4 quick presses of the button Changed button operation to determine function by the number of presses detected in a two second window Added two additional status bits indicating built in calibration mode active and button pressed Added adaptive upper limit to idle count detection to account for a condition that may occur when the sensors are exposed to electrical noise e g from a ground loop condition Disclaimer Copyright danjuliodesigns LLC 2014 2015 All rights reserved Neither the whole nor any part of the information contained in or the product described in this manual may be adapted or reprod
28. nterface should delay approximately 5 mSec after transmitting a Set EEPROM Location command before sending another command to allow the micro controller to execute the update of EEPROM storage Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Query EEPROM Location Description Read an EEPROM location value Serial command Q lt N gt lt CR gt IZC command Write lt I2C Base Addr 1 gt lt 0x51 gt lt N gt Read lt I C Base Addr 1 gt Argument lt N gt is the 8 bit address of the EEPROM location to read Serial response Returns 1 8 bit byte with the EEPROM location value encoded as an ASCII string 0 to 255 followed by lt CR gt IZC response Read 1 8 bit byte with the EEPROM location value Notes None Sparkfun Touch Potentiometer User Manual 36 danjuliodesigns LLC Appendix A Iroubieshooting Symptom LEDs are all off Device remains in Initial Calibration AD5262 Integrated Circuit U2 is hot Possible Causes No Power User Display An object is interfering with the capacitive sensors Minimum PowerOn Counts are too high No Analog Power Sparkfun Touch Potentiometer User Manual Make sure the input voltage is between 4 6 and 12 volts that the polarity is correct and that the power supply can supply enough current for the Touch Potentiometer The UserLedValue register is cleared at power up A Touch Potentiometer that is configured to display the
29. omatically if the command originates on the serial interface They must be read by the host if the command originates on the I2C interface Commands are 1 byte 8 bits in length They have ASCII representations that are an abbreviation of their function Commands are followed by zero one or two arguments representing 8 bit numeric quantities Responses are a single 8 bit numeric values Commands and responses are encoded slightly differently for serial and C communication Serial Interface Commands and arguments sent through the serial interface are encoded as ASCII values The commands are used to read the current potentiometer value access a set of control registers and EEPROM storage locations Commands are a single ASCII character with values between A and Z Arguments are one to three ASCII numbers O through 255 representing an 8 bit value Commands are issued in Command Sequences A Command Sequence consists of the command value followed by any required argument terminated with the Carriage Return character OxOD Space characters may be included between the command and argument or between the argument and the Carriage Return lt CR gt Space characters must be included between arguments Any other characters or additional arguments invalidate the Command Sequence up to the next Carriage Return Responses consist of an ASCII number O through 255 terminated with the Carriage Return character Spa
30. oparktun Touch Potentiometer User Manual danjuliodesigns LLC Revision 1 4 danjuliodesigns LLC Table of Contents Touch Potentiometer Description Features Applications Version Information Disclaimer Contact Electrical Specifications Mechanical Specifications Getting Started Block Diagram Circuit Description Connections Digital IO Analog IO Jumpers Quick Test PWM Output Example Serial Interface with a Computer I2C Interface with Arduino Analog Interface as Volume Control Operation System Description Touch Sensor LED Display Host Interface PWM Output Analog Output Control Registers EEPROM Sparkfun Touch Potentiometer User Manual o O MAO AA Oooo DD N N N NN NN lt a 2190 0 ooo ovog ho o o oo danjuliodesigns LLC Built in Parameter Calibration Procedure Command Interface Command List Get Current Value Read Control Register Write Control Register Set EEPROM Location Query EEPROM Location Appendix A Troubleshooting Appendix B Manual Calibration Procedure Appendix C Log Taper Circuit Appendix D Schematic Sparkfun Touch Potentiometer User Manual 29 31 31 32 33 34 35 36 37 40 41 43 45 danjuliodesigns LLC Touch Potentiometer Description The Sparkfun Touch Potentiometer is an intelligent linear capacitive touch sensor that implements potentiometer functionality with 256 positions It can operate as a peripheral to a computer or embedded micro controller or in a st
31. otentiometer It is provided as an alternative method for converting the linear operation of the AD5262 into a simulated logarithmic device suitable for audio volume control A simulated logarithmic transfer function may be created by adding a pad resistor from the wiper of the AD5262 to one end as shown below in a with an equivalent circuit b The transfer function is shown by the following equation Vout _ R2 Rpap Vin R R2 Rpap Circuit and transfer function The transfer function is shown in the following graph R 20000 Rpap R 0 25 gt Rpap 80 k ohms R 0 1 gt Reap 200 k ohms R 0 025 gt Reap 800 k ohms As can be seen the taper isn t a precise number of dB per potentiometer count but it does allow for better low level performance Sparkfun Touch Potentiometer User Manual 43 danjuliodesigns LLC 1 2000 1 0000 0 2000 0 0000 Transfer Function The following commentary is taken from the article verbatim You must address a couple of issues The first is that the end to end resistance of the potentiometer changes with the digital code It varies from the potentiometer resistance at one end with the wiper at the lower end to the value of the pad resistance in parallel with the potentiometer resistance at the other end If you configure the circuit as a typical attenuator and drive it from a low impedance source the low pad resistance should not present a major problem If however you a
32. ply Device fails a calibration procedure with sensor count values that are greater than the idle untouched count values Output varies slowly when being touched in one location Sparkfun Touch Potentiometer User Manual Action Make sure the power supply has adequate filtering both on the AC input side and DC output side Make sure there are no ground loops in the system Isolate digital connections to one of the power domains if it is necessary to operate in an environment with two power supplies 39 danjuliodesigns LLC Appendix B Manual Calibration The default configuration parameters in EEPROM should suffice for many applications of the Touch Potentiometer The procedure described in this section may be used to adjust the configuration parameters for situations where the default values do not provide adequate performance and the built in calibration function cannot be used An example of this situation might occur when the touchpad is enclosed with a thicker label The default values may make it difficult to sense changes in touch position or the Touch Potentiometer may remain in the Initial Calibration This procedure sets the Minimum PowerOn Counts and Valid Touch Count Delta values in the EEPROM for both sensors This is the same procedure that is implemented by the built in parameter calibration procedure The procedure requires reading the raw Sensor Count Registers Sensor1CountH Sensor1 CountL Sensor2
33. ponents in the Touch Potentiometer coupling into the audio signal Additional filtering circuitry on the input of the VIN voltage regulator may be necessary for high performance systems Sparkfun Touch Potentiometer User Manual 19 danjuliodesigns LLC Operation System Description Touch Sensor The Touch Sensor is implemented using two interleaved copper pads on the top surface of the PCB connected to the on board micro controller They are used as a variable capacitance in an oscillator circuit An algorithm running on the micro controller measures the oscillator frequency which varies as the sensor capacitance varies due to touch and computes a touch location along the length of both sensors with a resolution of 8 bits The frequency of the oscillator decreases as the capacitance increases with touch The sensors are sampled at about 30 52 Hz and the frequency is represented as a count obtained during a 8 192 mSec sample period The algorithm maintains a dynamic baseline corresponding to no touch that is initialized during the initial calibration at power up Touch sensor calibration parameters are stored in an on board EEPROM Some of the parameters specify a minimum count for the initial calibration The Touch Potentiometer will remain in initial calibration until the count for both sensors exceeds these parameters for example the sensor is being touched during initial calibration Other parameters specify delta values from the baseli
34. pot to follow the touch location After a few seconds of inactivity the LED display will automatically dim PWM Output Example The PWM output may be used to control external devices such as the intensity of LED lighting strips It is a 5V logic level active high signal with a maximum drive capability of 25 mA It may be used to directly control the gate of a MOSFET transistor base of a bipolar transistor through an appropriately sized base resistor or connect directly to another 5V logic input The PWM output has a period of approximately 488 Hz and a minimum high time of 2 uSec It may be configured with a linear or non linear transfer function The non linear transfer function is useful in dimming applications Sparkfun Touch Potentiometer User Manual 14 danjuliodesigns LLC 12 vood H 2 V LED Array J MPT3055 n channel MOSFET 100 k ohm Potentiometer 12VDC LED Strip Dimmer The PWM output controls a low side switch in this example The 100 k ohm resistor keeps the MOSFET turned off while the micro controller in the Touch Potentiometer starts up and the PWM output is not driven Serial Interface with a Computer A computer with a USB interface and terminal emulator program can access the Touch Potentiometer using the serial interface connected to a USB to serial device like a FTDI FT232R break out board or a micro controller like the Arduino Leonardo that has both a USB interface with Communications Device Clas
35. r Tolerance Digital Potentiometer Resistance Temperature Coefficient Digital Potentiometer Tap Resistance Sparkfun Touch Potentiometer User Manual Max Unit Conditions No significant current being sourced by the PWM output Wx no connect danjuliodesigns LLC Parameter Conditions Digital Potentiometer Wiper Resistance Ka Digital Potentiometer Channel Touch Pot Value 50 Resistance Matching Digital Potentiometer Resistance Drift Digital Potentiometer Ax and Bx Capacitance Digital Potentiometer Wx Capacitance Digital Potentiometer Bandwidth 3 dB Digital Potentiometer Total Harmonic Distortion Digital Potentiometer CrossTalk Va 5V Ve OV measure Vw with adjacent RDAC making full scale code change Vai 5V Ve1 OV measure Vwi with Vwe at 5V p p at f 10 kHz Digital Potentiometer Analog Crosstalk wo ad a O 3 lt Digital Potentiometer Resistor Noise Voltage Baud 12C Clock Rate 100k Hz EEPROM write cycles 100K 1M Write Ta lt 85 C Cycles EEPROM characteristic retention ep TA Provided no other specifications are violated Notes Serial Baud Rate Fixed Baud Rate Min URE an N 1 Digital Potentiometer signals Ax Bx and Wx must not exceed the voltage range between V and V Power should be applied to V V and VIN before or at the same time voltages appear on Ax Bx and Wx 2 Resistor position nonlinearity error is the deviation
36. ration Setting this bit configures the non linear transfer function Clearing this bit configures the linear transfer function Bit 4 Analog Output Configuration Setting this bit configures the simulated logarithmic transfer function Clearing this bit configures the linear transfer function Bit 3 2 LED Display Mode 00 Linear Display 01 User Display 10 Bar graph Display 11 Single dot Display Bit 1 0 LED Brightness User Bar graph Single dot 00 25 Full Brightness 01 50 Full Brightness 10 75 Full Brightness 11 Full Brightness Power on value is set from EEPROM 4 UserLedValue RW Bit mask for controlling the LED display when the LED Display Mode is set to User Display Ignored in other LED Display modes Power on value is zero Sparkfun Touch Potentiometer User Manual 26 danjuliodesigns LLC Address Register Access Description Sensor1 CountH Ro High 8 bits of the raw lower capacitive sensor value Lo Sensor1CountL Bo Low 8 bits of the raw lower capacitive sensor value Sensor2CountH mo High 8 bits of the raw upper capacitive sensor value 8 Sensor2CountL mo Low 8 bits of the raw upper capacitive sensor value EEPROM The Touch Potentiometer allows access to all 256 8 bit EEPROM locations in the micro controller Locations described below contain operational parameters that are used to configure operation at power up The remaining locations are accessible through the host interface but unus
37. re try ing to obtain a set resistance value to determine a time constant or any other application in which the resistor value is critical this approach may not work well The second issue involves over voltage The three terminals of the potentiometer can be anywhere within the supply range of the IC which is 5V for the AD52XX and 15V for the AD72XX family If you apply over voltage to one of the pins even in a transient condition the IC could latch up because of a parasitic substrate SCR Sparkfun Touch Potentiometer User Manual 44 danjuliodesigns LLC IC schemat Appendix D 10 Connections p19 o O Through Hole SMD Pads ii Vin 5 124 TP2 u3 UIN efna cL Pour 6ND EN e H ND GND a Y ne RES RES PBP SI VOD RHO BND PED RAL ANL PBL RA2 ANZ INT RA3 UPP ETE Bra CLROUT RAS OSC1 CLKIN SD02 450 PICISF1829 SD 3 presses Set I2C Address 4 presses Start Cal procedure TP3 s1 i su gt Io SND DEFAULT I2C ADDRESS 8x88 here are 64 available 12C addresses See the Changing 12C Address section of the User Guide for more info E 10K m Poe ICSP l TPL E i ee E eo I TPS 1 Capacative Sense Pad Tt LSS Se Sa eS a Ts Gs Ra
38. rkfun Touch Potentiometer User Manual 21 danjuliodesigns LLC For example the ASCII character G is used for the Get Current Value command Sending the command G lt CR gt or G lt CR gt generates a response with the form 128 lt CR gt where the value 128 is the current value of the Touch Potentiometer mid point The Touch Potentiometer can buffer multiple serial commands and arguments in an internal 16 byte FIFO It processes one command at a time including transmission of a required response It will drop commands when the FIFO is full Serial Jabber The Touch Potentiometer may be configured to automatically transmit the potentiometer value through the serial port to host interface when it changes The value consists of an ASCII number O through 255 terminated with the Carriage Return character The Jabber function is controlled by the Control register The maximum rate of values transmitted is approximately 30 values second Host Interface software must be capable of differentiating automatically transmitted potentiometer values and responses to commands that return data Typically the Jabber function is disabled before sending commands that generate a response IZC Interface The Touch Potentiometer implements a simple 7 bit slave I2C device It implements two consecutive addresses The first address is denoted as the base address and is loaded from EEPROM storage at reset The base address may be
39. s CDC support and a serial port The Touch Potentiometer serial interface operates at 5V logic levels with a data rate of 9600 baud eight data bits no parity and one stop bit 8N1 Potentiometer USB Serial Interface Sparkfun Touch Potentiometer User Manual 15 danjuliodesigns LLC The serial interface is connected to a computer using a FTDI FT232R breakout board The user may interact with the Touch Potentiometer using a terminal emulator program running on the computer The Touch Potentiometer implements a simple ASCII command interface described in the section Command List A few example commands are described below It is assumed the Touch Potentiometer has just been powered up untouched and the terminal emulator started and connected to the serial port The terminal emulator is also configured to locally echo typed characters the Touch Potentiometer does not echo back received characters 1 Type the character G followed by the Return key This gets the current potentiometer value a number between O and 255 The Touch Potentiometer powers up with a value of 0 2 Type the string W 1 128 followed by the Return key This sets the current potentiometer value to mid point You should see the LEDs immediately change to represent the change 3 Type G followed by the Return key again The Touch Potentiometer will respond with the value of 128 4 Experiment by changing the value with your
40. s each with two terminals and a wiper connection They have their own power supply connections allowing the voltage levels on the potentiometers to exceed the 5 volt logic power supply See important note below Function A Terminals for potentiometer 1 and 2 Wiper Terminals for potentiometer 1 and 2 B Terminals for potentiometer 1 and 2 Sparkfun Touch Potentiometer User Manual 11 danjuliodesigns LLC Function Positive Power Supply Connected at the factory to the 5V logic signal by jumper J1 With J1 removed may be connected to a positive voltage up to 15V Note the sum of V V must be 15V or less Negative Power Supply Connected at the factory to ground by jumper J2 With J2 removed may be connected to a negative voltage down to 5V Note the sum of V V must be 15V or less Analog IO pad descriptions Important Notes about V and V Care must be taken with V and V to prevent damage to the ICs on the Touch Potentiometer 1 V and V must always be connected to power and should be powered before or at the same time voltages appear on the A B and W signals and 5V input 2 By default V is connected to 5V with jumper J1 and V is connected to ground with jumper J2 Voltages on the A B and W signals should not exceed the range of O 5V with these jumpers installed Remove these jumpers by removing the solder blob if a different power supply will be connected to V and or V 3 The maximum volt
41. t ReadTpValue Wire requestFrom i2cAddr 1 if Wire available return Wire read else return 0 Read a Touch Potentiometer register uint8_t ReadTpReg uint8_t addr Wire beginTransmission i2cAddr 1 Wire write R Wire write addr Wire endTransmission Wire requestFrom i2cAddr 1 1 if Wire available return Wire read else return 0 Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Analog Interface as Volume Control The Touch Potentiometer s AD5262 IC provides two separate digitally controlled analog potentiometer circuits They may be used separately e g for stereo volume controls or ganged together to simulate a 10k ohm potentiometer as shown in the following simple single channel amplifier using the common LM386 amplifier IC The analog outputs may be configured to vary linearly or logarithmically The Logarithmic output is commonly used for audio level applications See Analog Output for more information 9 12 VDC Potentiometer J1 removed Audio In i Simple Audio Amplifier In this example the Touch Potentiometer replaces a logarithmic 10 k ohm potentiometer to control the volume In addition to providing a direct user control a computer or micro controller can also adjust the volume through the serial or PC interfaces Note that J1 is removed so that V can be connected directly to the analog power supply This reduces noise from the digital com
42. that generates a response before issuing another command Changing I2C Address The Base Address may be changed to any even value from O to 126 a total of 64 possible addresses allowing multiple Touch Potentiometers to operate on the same IZC bus The Base Address may be changed by writing to EEPROM location 1 or manually using the touch sensor The manual method is described in this section Press and release the push button PB1 three times quickly within 2 seconds This causes the Touch Potentiometer to enter I2C Address set mode at the end of the 2 second period It blinks all LEDs quickly three times and then displays the current I2C address in binary form on the LED display the lowest LED is bit 0 For example the default Base Address of 8 will light the 4th LED from the bottom Slide a finger up and down the touch sensor This will change the Base Address displayed on the LED display between the values of O and 126 Select the desired address Press and release the push button again This will store the new address in EEPROM and reconfigure the Touch Potentiometer with the address Sparkfun Touch Potentiometer User Manual 23 danjuliodesigns LLC Bit Value o OA e o PA 64 O O O 32 O O 16 O O O 8 O O O 4 O O O 2 O O O oA o o M7 Address 2 Address 8 Address 48 Example PC Addresses The I2C Address set mode automatically times out after 30 seconds of inactivity without changing the I2C Base Addr
43. the TX and RX signals connect to the other device s RX and TX signals respectively Make sure the host system baud rate is set to 9600 and serial port settings are 8N1 The Touch Potentiometer is designed to work with 5V host systems It should not be used with 3 3V or RS232C systems without level shifters on the serial signals Make sure the host interface is configured for 7 bit addressing 100 kHz operation and is using the correct I C address Make sure the I2C is properly pulled up The Touch Potentiometer weak pull ups are good for short connections Longer connections may require external pull ups 4 7 10 k ohm resistors Make sure the host controller issues simple PC read and writes with 7 bit addressing Make sure the writes are for the command and any required argument only Make sure the reads are for one byte Make sure the I2C read only reads one byte Make sure the only characters being sent to the Touch Potentiometer include the ASCII command optional space characters numeric characters and the lt CR gt termination character 38 danjuliodesigns LLC Symptom Possible Causes Device becomes Excessive noise e g 50 or 60 Hz is unresponsive when being coupled into the sensors touched This typically happens with poor quality power supplies e g lacking input filtering or a ground loop condition the device is connected both to a power supply and a computer with its own power sup
44. these locations are also stored in the set of backup values at the end of the EEPROM Built in Parameter Calibration Procedure The Touch Potentiometer includes a built in calibration procedure to adjust the operational and EEPROM Minimum Power on Count and Valid Touch Delta Count parameters for example after adding a label It is not typically necessary to recalibration the Touch Potentiometer The built in calibration procedure is initiated by pressing the button four times quickly within 2 seconds It is initiated at the end of the 2 second period It requires fifteen 15 seconds split into three 5 second phases indicated by patterns on the LEDs You may exit the procedure at any time without updating by pressing the button once The procedure is described in Appendix B Manual Calibration The three phases are as follows The Touch Potentiometer collects a running average set of values from the sensors and uses the average value at the end of each phase to compute the values for that phase 1 Idle no touch Sensor Counts The Idle Average values are saved at the end of phase 1 The middle six LEDs are lit at the beginning of this phase indicating the Touch Potentiometer should not be touched during this phase Make sure that nothing is touching either sensor 2 Sensor 1 Touched Counts The values for each sensor when Sensor 1 is touched and Sensor 2 is untouched touching the bottom end of the slider are saved at the end of phase 2 T
45. uced in any material or electronic form without the prior written consent of the copyright holder This product and its documentation are supplied on an as is basis and no warranty as to their suitability for any particular purpose is either made or implied danjuliodesigns LLC will not accept any claim for damages howsoever arising as a result of use or failure of this product Your statutory rights are not affected This document and the functionality of the product may be subject to change without notice Sparkfun Touch Potentiometer User Manual 4 danjuliodesigns LLC Contact Email info danjuliodesigns com Website http www danjuliodesigns com products touch pot touch pot html Sparkfun Touch Potentiometer User Manual danjuliodesigns LLC Electrical Specifications Parameter VIN Supply Range Logic Operating Current iN oO H A o j Digital Potentiometer Supply single ended V connected to GND Digital Potentiometer Supply dual ended Digital Potentiometer Operating Current source sink V V lt Digital Potentiometer Ax Bx Wx signal Voltage Range Digital Input Low Level Digital Inout High Level pramme fE Maximum output current sunk by PWM signal Maximum output current sourced by PWM signal Digital Potentiometer Ax to Bx terminal resistance Digital Potentiometer Differential Nonlinearity Digital Potentiometer Nonlinearity Digital Potentiometer Nominal Resisto
46. uch Avg Time Sensor Operation Note The Arduino Leonardo sketch tp_test_sketch available on the danjuliodesigns com website implements this calibration procedure and may be used as is or modified to suit the user s needs Procedure 1 Measure the idle no touch Sensor Counts Sensor1ldle Sensor2ldle a Position the Touch Potentiometer so the sensors are not being touched b Read the raw Sensor Count values as described above Store the Sensor 1 low sensor value as Sensor1ldle Store the Sensor 2 high sensor value as Sensor2Idle 2 Measure the Sensor 1 touch Sensor Count Sensor1 TouchA Sensor2TouchA a Touch the Sensor 1 landing area The landing area is at the bottom of the touch area below the interleaved portion of the sensor array next to the bottom most LED It is important to try not to touch the interleaved portion at all because you are trying to provide the maximum capacitive load to Sensor 1 and the minimum capacitive load to Sensor 2 b While touching the Sensor 1 landing area read the raw Sensor Count values as described above Store the Sensor 1 value as Sensor1TouchA Store the Sensor 2 value as Sensor2TouchA 3 Measure the Sensor 2 touch Sensor Count Sensor1 TouchB Sensor2TouchB a Touch the Sensor 2 landing area The landing area is at the top of the touch area above the interleaved portion of the sensor array next to the top most LED It is important to try not to touch the interleaved
Download Pdf Manuals
Related Search
Related Contents
第34期 第1四半期 B 800 P - Evolution Fitness Samsung GT-C3330 Felhasználói kézikönyv Sony CFD-S23 User's Manual インターネットサービスを利用した 健診申込の流れについて Baumer-GAPI Viewer v1.7 User's Guide for Baumer Elektrofriteusen der Serie HPRE (High Production RE Altivar 71 CogniSight SDK - General Vision Inc. chubbsafes nevo manual de instrucciones Copyright © All rights reserved.
Failed to retrieve file