Control drones with a proper joystick
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Thomas Buck 98b36403b7
Changes to be compatible with USB lib 1.3.0
7 lat temu
.gitignore Initial commit 8 lat temu
COPYING Added README.md and COPYING 8 lat temu
README.md Changes to be compatible with USB lib 1.3.0 7 lat temu
Saitek-X52-PPM.ino Changes to be compatible with USB lib 1.3.0 7 lat temu
config.cpp Configurable CPPM output pin 8 lat temu
config.h Configurable CPPM output pin 8 lat temu
cppm.cpp Configurable CPPM output pin 8 lat temu
cppm.h Configurable CPPM output pin 8 lat temu
data.h Use TimerOne library for CPPM output. Renamed files. 8 lat temu
events.h Configurable CPPM output pin 8 lat temu
events_buttons.cpp Configurable CPPM output pin 8 lat temu
events_cppm.cpp Load/Save config on EEPROM 8 lat temu
events_deadzone.cpp Can configure debug output target 8 lat temu
frsky.cpp Fixed FrSky protocal parsing bug 8 lat temu
frsky.h Added FrSky telemetry decoding 8 lat temu
parser.cpp Changes to be compatible with USB lib 1.3.0 7 lat temu
parser.h Changes to be compatible with USB lib 1.3.0 7 lat temu
x52.cpp Changes to be compatible with USB lib 1.3.0 7 lat temu
x52.h Changes to be compatible with USB lib 1.3.0 7 lat temu

README.md

Arduino Saitek X52 USB CPPM converter

This sketch allows connecting a Saitek X52 or Saitek X52 Pro to an Arduino with a USB Host Shield. It uses the USB_Host_Shield_2.0 Library.

!!Warning!!: This software has been written for the USB Host Shield library 2.0, Version 1.2.1. There have been some changes with the library for version 1.3.0 renaming symbols used by this project. I’ve made the required changes, but these are untested! If you have any problems, I’d suggest using an older version of the library and the code in this repository.

Multicopter flight with Saitek X52

A CPPM signal is generated on a configurable pin and can be fed into a transmitter module or directly into a flight controller.

Using the Multi-Function-Display on the Joystick, every config option can be changed. These values can be stored on the EEPROM and will be loaded on every start.

I’m connecting the Arduino to the FrSky DHT module in my modified transmitter to control my Tricopter.

A modified (ie. non-inverted) FrSky Host Telemetry Port (D-Port) can be connected to the hardware serial port of the Arduino so the Telemetry data (link quality and voltages) will be displayed on the Multi-Function-Display of the joystick.

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.