Coder Social home page Coder Social logo

geonomad / utrak Goto Github PK

View Code? Open in Web Editor NEW

This project forked from thasti/utrak

0.0 2.0 0.0 3.39 MB

software for the payload of a pico-balloon, receiving GPS and transmitting telemetry

License: GNU General Public License v2.0

Makefile 0.14% C 13.99% Shell 0.04% C++ 0.25% Eagle 85.36% Python 0.21%

utrak's Introduction

uTrak miniature tracker repository

Abstract

This repository contains software and hardware design files for uTrak - the tracker of a series of small high altitude balloons. The software is implemented for a MSP430 MCU, with test programs runnable on a PC. project documentation can be found here: http://www.dooce.de/dokuwiki/doku.php?id=projekte:utrak:start

uTrak PCB v1

The following tasks shall be performed by the software:

  • Filtering and reading GPGGA-sentences from GPS - extracting position, altitude
  • Measuring supply voltage with internal ADC
  • Reading die temperature with internal ADC
  • Generating telemetry frames (Including position, altitude, supply voltage, temperature)
  • Configuring the Si4060 transmitter IC
  • Power management for MCU and external hardware
  • Transmission of APRS position reports

GPS input

The MSP430 USART is used to store one NMEA-sentence to RAM (from $ to newline). Filtering and processing is controlled by a simple finite state machine. Fix data (position and altitude) are extracted and converted to HAB telemetry compatible format and APRS frames.

Telemetry generation

From valid GPS data and telemetry data, packets are generated. The text string is formatted to be sent in 7 bit ASCII over RTTY. APRS transmission is done on EU APRS frequency (144.800MHz) and the telemetry frequency.

Power management

Focus of the software is to get power consumption down as low as possible. This includes using all the available power saving features of the MSP430 and peripherals:

  • Low power modes of the MSP430
  • Disabling unused peripherals
  • Power down mode of the GPS module
  • Disabling RF stage

Hardware modifications

After v1, several modifications were made to the PCB to enable more features being possible. These include:

TCXO as reference source

Frequency stability was totally unacceptable with crystals. In addition, the datasheet wrongly states that a TCXO has to be connected to XIN, while it has to be connected to XOUT. Needed after commit: edc32003

  • Instead of the XTAL, solder TCXO with clipped sine output, 16.3676Mhz.
  • cut trace from C8 to XIN
  • solder C=100pF instead as C8
  • run wire from right pad of C8 to XOUT-pad (right pad of R5)
  • solder bridge over R6
  • do not place R4, R5 and R7

TCXO source as clock input to MSP430

As DominoEX needs to me modulated coherently, MCU and PLL need to run off the same clock. Therefore, the Si4060 will buffer the TXCO signal and output it via GPIO to the MCU. Needed after commit: ee2a82f8 until 752375ca

  • solder wire from MSP430 QFN PAD 21 (PJ.4, XIN) to Si4060 QFN PAD 9 (GPIO0)

Coarse Changelog

This changelog tries to summarize the development of the tracker firmware. See the git commit log for further information.

  • 05-2014: Begin of development
  • 09-2014: first test flight (RTTY 50 baud)
  • 09-2014: change from the Linx-GPS to the uBlox M8Q module
  • 10-2014: first flight with professional PCB & uBlox (0x01, 0x02)
  • 11-2014: first flight with TCXO (0x03) - frequency stability improvement
  • 10-2014: implementation of APRS transmission
  • 11-2014: implementation of DominoEX16
  • 11-2014: first flight with APRS & DominoEX16 (0x04)
  • 12-2014: reverting to RTTY, now using 100 baud (0x05, 0x06)
  • 07-2014: first good use of APRS: antenna now 2m dipole
  • 07-2014: dropped support for DominoEX
  • 07-2014: transmitting APRS only above a certain altitude (power savings)

utrak's People

Contributors

thasti avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.