Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
projects:quantracker:start [2015/07/29 04:43] skyscraper created |
projects:quantracker:start [2015/09/07 21:41] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Introduction ====== | ||
DIY Antenna Tracker and OSD using STM32F4 . | DIY Antenna Tracker and OSD using STM32F4 . | ||
- | Ground side tracker. | + | This board is aimed at developers. It is currently being used to create an OSD for aircraft and to power an Antenna Tracker (in development). It is currently being used as the basis of a [[http://en.playuav.com/question/4|Flight Controller]] by adding external components. (In development) |
- | Uses a Pololu style servo motor with encoder to give continuous Azimuth rotation | + | |
- | Uses a standard RC Servo for elevation. | + | |
- | Airborne side | + | |
- | uses an OSD with telemetry via the video to send telemetry data to the tracker. | + | |
- | or an Arduino ( basic option if you have a FrSky Telemetry RC system) | + | |
- | see my website http://www.zoomworks.org/fpv/quantracker/doc/index.html for more info about the project. | + | === Features ==== |
- | See the Changelog file in this directory for changes after 16/07/2013 | + | STM32F4 microcontroller |
- | Acknowledgments | + | Black, white or gray overlay colours. |
- | With Grateful Acknowledgements to the prior work, on the OSD code of: | + | On-board switching regulator. The board can be powered by any voltage from 7 to 25 volts (or by a regulated 5 volt power) |
- | Sami Korbonen(Openpilot.org) | + | The OSD can transmit or receive data via the video signal itself, so requiring no external transmission link for telemetry, though it can also simultaneouslyy transmit via a video audio channel or via a modem using a uart. |
- | taulabs ( taulabs.com) | + | |
- | brainFPV ( brainfpv.com) | + | |
- | Thomas Oldbury (super-osd.com) | + | |
- | + | ||
- | Thanks to VEX Robotics for permission to use their step file of the VEX turntable | + | |
- | Special Thanks to Andrew Fernie for his work on the Hardware and Software. | + | Automatically detects NTSC or PAL video inputs and adjusts screen size accordingly. |
- | Dependencies | + | Default display output when there is no camera input or if the camera fails. |
- | The GNU gcc compiler. The source code is written in C++11, and requires gcc4.7 or higher | + | Simple uploading of firmware via the serial port, using a standard 6 pin Arduino style FTDI to usb connector. The board can also be programmed using ST-Link. |
- | to compile. | + | |
- | available from | + | |
- | https://launchpad.net/gcc-arm-embedded | + | 2 dedicated electrically isolated serial ports (UART), so that the Video subsystem (Camera, Vtx and OSD) can be electrically isolated from noise in other circuitry to provide a clear picture but can still communicate fast and reliably with other parts of the system. |
- | (wget https://launchpad.net/gcc-arm-embedded/4.9/4.9-2014-q4-major/+download/gcc-arm-none-eabi-4_9-2014q4-20141203-linux.tar.bz2 -O gcc-arm) | + | |
+ | 2 AC coupled audio outputs are provided. Potential uses are for voice alerts, audio variometer, sending FSK modem data via the video audio channels etc. | ||
- | The STM32F4 standard peripherals library | + | All spare pins of the STM32F4 are broken out on standard 0.1 inch pitch header pins. Spare peripherals available include (( Note that some peripherals are multiplexed on the available pins so check the stm32f4 schematic and :[[https://github.com/kwikius/quantracker/blob/master/air/osd/hardware/64_pin_lite/air_osd_v2_2/schematic/pdf/osd-MCU.pdf|mcu schematic]] for full details )) |
- | available from | + | * 2 x I2C |
+ | * 1 x SPI | ||
+ | * 3 x UART | ||
+ | * 2 x Quadrature Encoder ( 1 x16 bit , 1 x 32 bit) | ||
+ | * 6 x ADC | ||
+ | * 1 x CAN interface | ||
+ | * Up to 9 Capture/Compare I/O for signal inputs, servo control, etc. . | ||
- | http://www.st.com/st-web-ui/static/active/en/st_prod_software_internet/resource/technical/software/firmware/stm32f4_dsp_stdperiph_lib.zip | + | Board dimensions 56 mm x 31 mm. |
- | (wget http://www.st.com/st-web-ui/static/active/en/st_prod_software_internet/resource/technical/software/firmware/stm32f4_dsp_stdperiph_lib.zip -O stm32f4_dsp_stdperiph_lib.zip) | + | |
- | My quan library | + | Up to 16k is available for Flash Variables for persistent storage of settings, together with a simple API and menu system to read and write the flash variables. |
- | available from | + | |
- | + | ||
- | https://github.com/kwikius/quan-trunk | + | |
- | (wget https://github.com/kwikius/quantracker/archive/master.zip -O quantracker.zip) | + | |
- | FreeRTOS | + | The source code is written in high performance C++11 programming language. A C API is planned. |
- | available from | + | |
- | http://www.freertos.org/a00104.html | + | Read the documentation at:[[http://www.zoomworks.org/fpv/quantracker/doc/osd/index.html]] |
- | (wget http://downloads.sourceforge.net/project/freertos/FreeRTOS/V8.2.0/FreeRTOSV8.2.0.zip -O freertos.zip) | + | |
- | MAVlink | + | The project GitHub repository is at:[[https://github.com/kwikius/quantracker|quantracker repository]] |
- | available from | + | |
- | + | ||
- | https://github.com/mavlink/mavlink | + | |
- | (wget https://github.com/mavlink/c_library/archive/master.zip -O mavlink.zip) | + | |
- | TODO May need some file dir renaming to get the directories right for compiling | + | |
- | + | ||
- | + | ||
- | Once these are installed you will need to modify the paths in the Makefiles to suit your configuration. | + | |
- | See the file Sample-Dependencies.mk in the root directory for details of how to fill in dependencies | + | |
- | + | ||
- | The ground tracker relies on some means on the aircraft to get the telemetry back to the tracker | + | |
- | + | ||
- | The OSD can however be built as stand alone item. There are currenetly 2 customised example OSD,s in the quantracker/examples directory. | + | |
- | airborne option to send the data to the tracker from the aircraft. | + | |
- | + | ||
- | So far there are several airborne options | + | |
- | + | ||
- | 1) Use the OSD airborne module which uses the Video link direct to send telemetry. | + | |
- | This is currently in development but the design is all open source and in the repo. | + | |
- | I hope to have a retail version soon. | + | |
- | + | ||
- | 2) using an Arduino Pro Mini microcontroller and an FrSky Rx ( simple cheap) | + | |
- | + | ||
- | a) Use an Frsky Telemetry receiver and an Ardupilot to acquire the GPS data. | + | |
- | The source code for this option can be downloaded from | + | |
- | + | ||
- | https://github.com/kwikius/mavlink_to_frsky | + | |
- | + | ||
- | b) Use a GPS module attached direct to the Arduino and sending data down the FrSky telemetry link | + | |
- | The source code for this option is available at | + | |
- | + | ||
- | https://github.com/kwikius/quantracker_air | + | |
- | + | ||
- | ---- | + | |
- | + | ||
- | There are various other applications associated with the project. | + | |
- | + | ||
- | See https://github.com/kwikius?tab=repositories for more details | + |