TFRPM01D - RPM measuring device

Revolutions per minute measurement device for UAV. It is designed to direct connection to the Pixhawk controller (CUAV V5+ for example) through a standard I²C connector. The device is supported by PX4 firmware. The input of the meter is supposed to be a pulse signal from an optical encoder, hall sensor, etc. The pulses are counted during a predefined constant interval. The hardware is intended for measuring helicopter and autogyro rotor RPM, but its counting capability is up to 20 kHz, so it should also be used for measuring propeller or engine RPM.

Where to get it?

ThunderFly RPM counter is commercially available from ThunderFly s.r.o., write an email to info@thunderfly.cz or shop at Tindie store.

Main Features

  • Schmitt trigger input to shape a non-uniform signal from the RPM sensing element.
  • Offload the flight controller’s MCU, by self-counting and storing the number of counted pulses in I²C accessible internal memory
  • Input status LED indicator - for easy debugging of mechanical configuration
  • Short circuit protection on the probe connector
  • Pass-trough I²C connectors to allow a daisy chain of additional or multiple sensors
  • Highly robust and repairable design.

Parameters

ParameterValueDescription
Pulse frequency range0 - 20 kHz (equal high and low periods)Maximum RPM value varies by pulse number per revolution
I2C Connector2x 4-pin JST-GHConnected in parallel
RPM Pulse input connector3-pin 2.54mm pitch pin headerInternal 22k Ohm pull-up resistor
RPM Pulse input voltage range0-5VNegative voltage or overvoltage could damage the input
RPM pulse input switching thresholds+VT 1.88 V, -VT 1.12 V Typically@25°CHysteresis between VT+ and VT- is 0.756 V
I2C address0x50 defaultBy switching JP1 possible change to 0x51
I2C SCL clock frequencyMax 100 kHzOperation on 400 kHz is possible, but unreliable
Operating and storage temperature−20°C to +40°CLimited by case material
Operational power voltage+3.6V to +5.4VOvervoltage internally protected by Zener diode, Undervoltage is not treated. Current consumption is defined mainly by the used probe.
Mass4g PCB + 8g casePrinted case gcode included in docs
Dimensions23.5x42x12.5mm / 37.5x19mmCase / PCB
Weather resistanceIP40External connectors fully occupied

The 3Pin probe connector is powered from the I²C bus through an RC filter, limiting current and voltage spikes to the sensor probe. Therefore the sensor is resistant to short circuits at the probe connector power.

The two I²C Pixhawk JST-GH connectors are interconnected. This feature allows easy nesting with other I²C devices to a single Pixhawks I²C port.

Connection to the Pixhawk autopilot

The I²C interface connectors respect the Pixhawk connector standard. The signal and color coding of the connector and supplied cable are described by following table (ThunderFly color scheme):

SignalPixhawk ColorThunderFly color
+5VRedred Red
SCLBlackyellow Yellow
SDABlackgreen Green
GNDBlackblack Black

The conductor colors in the cable are different from the Pixhawk standard to increase the visual distinction between multiple cables in the UAV.

Wiring cable

To improve I2C bus reliability, the supplied cable is specifically twisted by following the scheme

  • 10 turns for each pair SCL/+5V and SDA/GND per 30cm cable length
  • The two pairs are turned again by 4 turns of pairs per 30cm cable length.

These special cable conductors’ winding method greatly improves the signal integrity by minimizing the crosstalk between the SDA and SCL signals.

I²C Address Configuration

By default, the TFRPM01C sensor is manufactured with a 0x50 I²C address. This address is possible to change to 0x51 by altering the JP1 solder junction. The junction connection to GND needs to be cut by knife and then soldered to the opposite side Vcc.

The default configuration of the junction corresponds to the following picture, where the center pin is connected to GND by copper trace.

The default 0x50 address setup

Mounting options

The device is designed to be mounted with or without a plastic case. The 3D-printed case is intended to be adjustable to particular sensor mount options. The supplied variant of the 3D-printed case supports two mount options:

  • By default the case could be mounted by the screw on a flat surface (the original screw needs to be replaced by a longer one)
  • The second option is the use of double-sided adhesive tape or reclosable fastener stuck on the side of the TFRPM01 case.

Sensor probe selection

The TFRPM01D can be used with multiple types of sensor probes. The most used one is a Hall effect probe. The magnetic probe is ideal for harsh environments, where dirt, dust, and water can contact the sensed rotor. The disadvantage is that magnet mounting is required for proper sensor work.

For more information on the options and selection of the appropriate probe, please take a look at the dedicated page Probe selection.

Software configuration

The TFRPM01 revolution counter is currently supported by PX4 firmware only. (Ardupilot pull requests are welcomed) After proper connection of the sensor with the sensing probe to an I2C port (Except port I2C3) of PX4-based autopilot you should follow instructions to PX4 software setup. After proper setup, you should get an uLog containing the RPM logged during the flight. Here is an example of rotor RPM captured during the flight of TF-G2 autogyro. The graph is rendered by flight_review.

TFRPM01 measurement of rotor RPM during the flight

FAQ

Frequently asked questions are available on separed TFRPM01 FAQ page.


Table of contents