Skip to content

Navigation Menu

Sign in
Sign up

Latest commit

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

TFI2CPWM01 — Pixhawk‐compatible I2C RC Servo Controller

TFI2CPWM01 is a ThunderFly avionics module that expands Pixhawk I2C into up to 16 PWM outputs for standard RC servos. It is based on the NXP PCA9685 12‐bit PWM generator and follows the ThunderFly form factor and Pixhawk connector conventions.

Typical applications include gimbals, tilt/servo mechanisms, landing gear, camera shutters, lift control surfaces on fixed wings, and general mechatronic actuators.

TFI2CPWM01 top view

TFI2CPWM01 bottom view

Key Features

  • Up to ×ばつ PWM channels (0–4095 steps @ shared frequency)
  • I2C Fm+ interface (up to 1 MHz), Pixhawk‐compatible JST‐GH connector
  • External servo power rail via XT30 connector
  • ×ばつ16 THT RC servo header (Signal | V+ | GND) oriented longitudinally for slide‐in housing
  • Configurable I2C address (A0–A5) for multi‐board expansion
  • Optional global output enable (OE) for quick kill/disarm

Technical specification

  • Controller: NXP PCA9685
  • Channels: up to 16 PWM outputs
  • Resolution: 12‐bit (4096 steps)
  • Frequency: ~24 Hz to ~1.5 kHz (shared to all channels)
  • Logic supply (VDD): 5 V (from Pixhawk I2C connector)
    • Logic VDD: 3.3 V is internally stabilized by LDO
  • Servo power supplied via XT30. The dimensions for the expected peak current of attached servos are typically 5–8 V (HV servo rails up to 12 V are possible, and connectors and capacitors are rated accordingly). Provide adequate bulk capacitance on V+ near the header (≥ 1000 μF low‐ESR).
  • Connectors: JST‐GH I2C; ×ばつN 2.54 mm THT servo header; XT30 power
  • Addressing: A0–A5

Connectors & Pinout

I2C (JST‐GH 4‐pin, Pixhawk standard): 1=VDD, 2=SCL, 3=SDA, 4=GND Servo header (×ばつN, 2.54 mm THT, straight): row1=Signal, row2=V+ (from XT30), row3=GND Power (XT30): V+ to servo rail, GND common with logic ground.

PWM Characteristics

  • Resolution: 12‐bit total (4096 steps). At 50 Hz (20 ms period) ≈ 4.88 μs/step.
    • Typical servo pulse 1.000–2.000 ms → ≈ 205 steps per millisecond (~410 steps across the 1–2 ms span).
  • Frequency range: ~24 Hz to ~1.5 kHz (shared across all channels).
  • Output mode: push‐pull or open‐drain (board default: push‐pull).

Compatibility note: Most hobby servos accept 3.3 V logic‐high PWM. If specific servos require 5 V logic, consider external level-shifting logic.

I2C Addressing

  • Base address 0x40; A0..A5 allow up to 62 addresses on the same bus.
  • Provide solder jumpers. Document the address map silkscreen.

PX4 Integration

  1. Wire TFI2CPWM01 to a Pixhawk I2C port. Power servos via XT30.
  2. In QGroundControl → Parameters, set PCA9685_EN_BUS to the I2C bus index where the module is connected (e.g. 1). Reboot.
  3. Map functions to outputs using PCA9685_FUNC1..16 (e.g., LandingGear, GimbalTilt, etc.). Configure failsafes with PCA9685_FAILx as needed.
  4. Set actuator PWM ranges on the Actuators setup page (e.g., 1000–2000 μs). The board’s physical PWM resolution is 12‐bit; PX4 handles scaling.
  5. Select a servo frame rate (commonly 50–60 Hz) via the driver/frequency parameter set or keep default if appropriate.

The PCA9685 driver exposes channels as an auxiliary actuator bus in PX4. Duty‐cycle mode is 12‐bit; for standard servo pulse‐width output, configure channel ranges in microseconds.

Mechanical Notes

  • Straight THT ×ばつ16 header (2.54 mm) for robust servo plug engagement.
  • Board outline and connector keep‐outs sized to support a longitudinal slide‐in case.
  • Place bulk capacitors near the XT30 entry and at both ends of the servo header.
  • Provide mounting holes aligned with ThunderFly form factor.

Example Use Cases on Unmanned Systems

  • VTOL tilt mechanisms (tilt‐rotor/tilt‐servo pairs)
  • Fixed‐wing control surfaces on small airframes (flaps, rudder, elevons) where PWM expansion is needed
  • Landing gear & payload release actuators
  • Gimbals (tilt/roll/yaw) for cameras or sensors
  • Sensor deployment (e.g., probe doors, samplers) on UAS/UGV/USV
  • Antenna pointing or pan‐tilt for datalinks
  • Micro‐winches or positioners

Verification Summary

  • PX4 support: PCA9685 driver available; enable via PCA9685_EN_BUS, channel mapping and failsafes per‐channel.
  • Servo resolution: 12‐bit PWM; at 50–60 Hz, ≈4–5 μs per step; ~400+ steps across 1–2 ms servo range.

Known Limitations

  • All channels share the same PWM frequency.
  • Output high level equals VDD; check servo logic‐high requirements

About

Pixhawk compatible I2C RC servo controller

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /