Products for USB Sensing and Control

Products for USB Sensing and Control


Unit 1 - 6115 4 St SE
Calgary AB  T2H 2H9
+1 403 282-7335

Phidget FrequencyCounter

ID: 1054_0

Measures the frequency of a signal and powers small devices like Hall Effect sensors, flow rate sensors, and tachometers.


Quantity Available: 495

Qty Price
5 $71.25
10 $67.50
25 $60.00
50 $52.50
100 $48.75
250 $45.00
500 $41.25
1000 $37.50

The 1054 - PhidgetFrequencyCounter is designed to count events from an analog signal over time and calculate a frequency from it. The product can count a logic level or signal centered around zero volts. Signals with a different ground can be counted, provided they are within the common mode range (±10V).

The Frequency Counter can also power small devices, such as Hall effect, flow rate sensors, tachometers, and other sensors.

The PhidgetFrequencyCounter contains two channels to sense two different inputs. Each channel has two different circuits to sense for logic level-frequencies or zero-centered frequencies. The measurable frequency is accurate to 0.25% up to 1MHz. The Frequency Counter may measure frequencies past 1 Mhz, but the input voltage specifications will not hold.

The PhidgetFrequencyCounter can measure frequencies down to ~ 0.01Hz. However the response time of these measurements is directly related to the frequency, thus it could take 1 or 2 periods(100-200s) to detect the input frequency.

Comes Packaged with

Product Specifications

FrequencyCounter Input
API Object Name FrequencyCounter
Controlled By USB
Number of Channels 2
Frequency Error Max 0.25 %
Input Frequency Max 1 MHz
Frequency Input Voltage Max ± 20 V DC
Amplitude Min (Zero-Centered Input) 110 mV DC
Hysteresis (Zero-Centered Input) ± 30 mV DC
Ground Offset Min -6.3 V DC
Ground Offset Max 10.3 V DC
Low Voltage Max (False) 800 mV DC
High Voltage Min (True) 3 V DC
Electrical Properties
USB Voltage Min 4.8 V DC
USB Voltage Max 5.3 V DC
USB Speed Full Speed
Current Consumption Max 42 mA
Available External Current 450 mA
Input Impedance (30pF) 332 kΩ
Physical Properties
Recommended Wire Size 16 - 26 AWG
Operating Temperature Min 0 °C
Operating Temperature Max 70 °C

Software Objects

Channel NameAPIChannel
Frequency Input FrequencyCounter 0 - 1


Back Forward
Print this API


Library & Driver Downloads

Code Samples

FrequencyCounter C Multiple Download
FrequencyCounter C# Windows Download
FrequencyCounter Java Multiple Download
FrequencyCounter JavaScript Any Download
FrequencyCounter Objective-C macOS Download
FrequencyCounter Python Multiple Download
FrequencyCounter Visual Basic .NET Windows Download


Product History

Date Board Revision Device Version Comment
May 20110100Product Release
May 20110101getLabelString fixed for labels longer than 7 characters

Getting Started

Welcome to the 1054 user guide! In order to get started, make sure you have the following hardware on hand:

Next, you will need to connect the pieces:

1054 0 Connecting The Hardware.jpg
  1. Connect your pulse output device to the Frequency Counter Phidget. Connect the power wire to 5V, the ground wire to G, and the positive and negative data lines to '+' and '-'. If there is only one data line, connect it to '+' if it's a PNP sensor, and '-' if it's NPN.
  2. Connect the 1054 to your computer using the USB cable.

Now that you have everything together, let's start using the 1054!

Using the 1054

Phidget Control Panel

In order to demonstrate the functionality of the 1054, the Phidget Control Panel running on a Windows machine will be used.

The Phidget Control Panel is available for use on both macOS and Windows machines. If you would like to follow along, first take a look at the getting started guide for your operating system:

Linux users can follow the getting started with Linux guide and continue reading here for more information about the 1054.

First Look

After plugging the 1054 into your computer and opening the Phidget Control Panel, you will see something like this:

1054 Panel.jpg

The Phidget Control Panel will list all connected Phidgets and associated objects, as well as the following information:

  • Serial number: allows you to differentiate between similar Phidgets.
  • Channel: allows you to differentiate between similar objects on a Phidget.
  • Version number: corresponds to the firmware version your Phidget is running. If your Phidget is listed in red, your firmware is out of date. Update the firmware by double-clicking the entry.

The Phidget Control Panel can also be used to test your device. Double-clicking on an object will open an example.

Frequency Counter

Double-click on the Frequency Counter object in order to run the example:

1054 FrequencyCounter Example.jpg

General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Frequency: the average frequency calculated from the pulses in the event so far.
  • Total Count: the total number of pulses since opening the example.
  • Total Time: the total time in milliseconds that has elapsed since opening this example.
  • Enter a cutoff frequency in the Frequency Cutoff(Hz) textbox and the 1054 will ignore frequencies below the specified value.
  • Modify the data interval value by dragging the slider. For more information on this setting, see the data interval page.
  • Enter a filter type from the Filter Type drop-down menu. A Logic Level signal goes from alternates between 0 and VCC. A Zero Crossing signal goes from -VCC to VCC.
  • Toggle the Enabled checkbox to enable/disable the 1054.

Technical Details


The 1054 contains two channels to sense two different inputs. Each channel has two different circuits to sense for logic level-frequencies or zero-centered frequencies. The measurable frequency is accurate to 0.25% up to 1MHz. The 1054 may measure frequencies past 1MHz, but the input voltage specifications will not hold. The 1054 can measure frequencies down to ~0.01Hz. However the response time of these measurements is directly related to the frequency, thus it could take 1 or 2 periods(100-200s) to detect the input frequency.

Logic-Level Frequencies

The logic-level sensing circuit has a hysteresis range from 0.9V to 2.4V. This will allow the circuit to count both 3.3V and 5V logic levels. In addition to logic-level signals, this will also accept the pulses from sensors with open collector outputs. When the input signals are either 3.3V or 5V, the maximum sensed frequency is 1.5MHz. Most digital sensors that are powered from a signal positive power supply will output a logic-level frequency.

Zero-Centered Frequencies

The zero-centered sensing circuit can be used for input signals where you want to count as it crosses zero volts. A hysteresis of 30mVpp filters noise. At maximum frequency (1MHz), a signal of 400mVPP is required for reliable counting. A common application that uses a zero centered frequency output is a simple magnetic tachometer, which produces a sine wave around 0 volts.

Differential Inputs

The 1054 uses differential inputs, that is, the voltage being compared is the difference between the + and - inputs. If your application has a slightly different ground from your USB ground, the common mode rejection in the 1054 will handle small differences in ground. For many applications, the signal being measured is single ended, that is, your sensor outputs only one signal, and you can directly connect the ground of the sensor to the ground of the 1054. In this case, ensure the - input is tied to ground. Never allow either input to be left unconnected.

Output Voltage

USB Voltage is passed directly to the +5V terminal on the green blocks.

What to do Next

  • Software Overview - Find your preferred programming language here to learn how to write your own code with Phidgets!
  • General Phidget Programming - Read this general guide to the various aspects of programming with Phidgets. Learn how to log data into a spreadsheet, use Phidgets over the network, and much more.
  • Phidget22 API - The API is a universal library of all functions and definitions for programming with Phidgets. Just select your language and device and it'll give you a complete list of all properties, methods, events, and enumerations that are at your disposal.


You can protect your board from dust and debris by purchasing an enclosure. An enclosure will also prevent unintentional shorts caused by objects touching the pins on the bottom of the board or any terminal screws.

Product Physical Properties
Image Part Number Price Material
3813_1 $7.00 Clear Acrylic

USB Isolator

You can use a USB Isolator to increase your system stability by eliminating problems caused by ground voltage differences between your computer and the device.

Product Electrical Properties
Image Part Number Price Isolation Voltage (DC)
3060_0 $58.30 1 kV DC

USB Cables

Use a USB cable to connect this Phidget to your computer. We have a number of different lengths available, although the maximum length of a USB cable is 5 meters due to limitations in the timing protocol. For longer distances, we recommend that you use a Single Board Computer to control the Phidget remotely.

Product Physical Properties
Image Part Number Price Connector A Connector B Cable Length
3017_1 $3.00 USB Type A USB Mini-B 280 mm
3018_0 $5.00 USB Type A USB Mini-B 1.8 m
3020_0 $12.00 USB Type A USB Mini-B 4.5 m
3036_0 $3.50 USB Type A USB Mini-B 600 mm
3037_0 $4.00 USB Type A USB Mini-B 1.2 m

Here's a list of products that can count pulse signals and measure frequency:

Product FrequencyCounter Input
Image Part Number Price Number of Channels Input Frequency Max Frequency Error Max
1054_0 $75.00 2 1 MHz 0.25 %
DAQ1400_0 $20.00 1 2 MHz 1 %