Demand Peripherals     Robotics and Automation Made Easy

TOUCH4: Quad Touch Interface

The quad touch peripheral responds to four independent capacitive touch inputs. The Touch4 card has four counters which change frequency when a finger touches one of the inputs. The touch4 driver in dpdaemon keeps the average (over a minute) for all four counters. Touching an input adds capacitance and lowers the output frequency. The driver detects this change and reports the change to the 'touch' resource.



The Touch4 card has four counters that change frequency when the user touches one of the inputs. The FPGA measures the frequencies and reports them to the host every 60 milliseconds. The board has four pads for input but you can add remote sensors by connecting to a feedthrough hole near each pad. More information about the TOUCH4 card is available here cards/touch4.html.



touch : the state of the four inputs.
The touch resource works with dpcat and reports the state of all four inputs as a single hex digit. Touch input 1 is the LSB and touch input 4 the MSB.

thresholds : percent change in frequency to signify a touch event.
The thresholds resource lets you control the trade-off between sensitivity and noise immunity. The default value of ten percent requires a firm press on the contacts but is very immune to noise. In most applications a threshold of three to five percent should work. This resource works with dpset and dpget.

counts : raw frequency counts.
You can see the raw counts from the FPGA using the counts resource. The counts reported are the number of transitions (both positive and negative) at the corresponding input in the sample interval of 60 milliseconds. You can use the counts resource to see the change as you touch an input. This can help you set the threshold appropriately.



Set the thresholds to five percent then start watching for touch events.

    dpset touch4 5 5 5 5 
    dpcat touch4 touch


FPGA Defined Peripherals
User Interface
FPGA Configuration
FPGA Buttons & LEDs
Host Tx/Rx Interface
AVR Interface
Stereo Audio Amplifier
Text LCD and Keypad
Quad WS2812 Interface
Quad Slide Pot
IR Recv/Xmit
6 Digit LCD
RC Decoder
Keyfob RF Decoder
Rotary Encoder Interface
Quad Touch Interface
Motion Control
Dual DC Motor Controller
Dual Quadrature Decoder
Quad 13 Bit Servo
Bipolar Stepper Controller
Unipolar Stepper Controller
Simple Input / Output
Quad Binary Output
Quad Binary Input
Octal Input/Output
32 Channel Binary Output
32 Channel Binary Input
Quad Serial Output
Octal Serial Output
Octal 12-bit ADC
Quad Ping))) Interface
Pololu QTR Interface
Octal SRF04 Interface
Generic I2C
Generic SPI
Octal 8-Bit DAC
Quad Digital Potentiometer
Quad PWM Output
Quad PWM Input
Quad Event Counter
Real Time Clock
Dual Pulse Generator

Interface Cards
Control Cards
User Interface
Stereo Audio Amplifier
IR Recv/xmit
Six Digit LCD Display
Keyfob RF Receiver
Rotary Encoder
Quad Switch Card
Text LCD / keypad
Quad Slide Pot
Quad Touch Interface
Motion Control
Dual 7-amp H-bridge
Quad Open Drain Driver
Quad 10 Amp Relay Card
Input / Output
Octal 8-Bit DAC
Quad Digital Potentiometer
Octal 12-bit ADC
Octal SRF04
I2C Prototyping
SPI Prototyping
USB 2.0 Hub
Real Time Clock
Octal Input/Output
32 Channel Input
32 Channel Output
Power Distribution Card
15 Amp Power Distribution
5 Volt Switching Regulator
ATX Power Break-Out Card
Disk Drive Power Break-Out
MP43 Aluminum Mounting Plate
WW4 Large Prototyping Card
WW2 Prototyping Card
WW1 Small Prototyping Card
SMP SMD Prototyping Card