preparation for renaming the project to be more precise for what it can be used. Additional changes in different places regarding this renaming.

pull/5/head
df8oe 2017-06-14 06:46:41 +02:00
rodzic d019809035
commit 3abc827b94
7 zmienionych plików z 55 dodań i 39 usunięć

Wyświetl plik

@ -16,7 +16,7 @@ else()
CMAKE_FORCE_CXX_COMPILER(${TOOLCHAIN_DIR}/arm-none-eabi-g++.exe GNU)
endif()
project(STM32_RTTY C CXX)
project(RS41HUP C CXX)
add_definitions(-DSTM32F100C8)
add_definitions(-DSTM32F10X_MD_VL)
@ -60,5 +60,10 @@ set(CMAKE_CXX_STANDARD 11)
add_custom_target(program
DEPENDS ${PROJECT_NAME}.elf
COMMAND D:/Programy/stlink-1.3.0-win64/bin/st-flash --reset write ${BIN_FILE} 0x08000000
if(UNIX)
#TODO
else()
COMMAND D:/Programy/stlink-1.3.0-win64/bin/st-flash --reset write ${BIN_FILE} 0x08000000
endif()
COMMENT "flashing ${BIN_FILE}")

Wyświetl plik

@ -1,19 +1,44 @@
# STM32_RTTY
STM32 & SI4032 rtty test
# RS41-HUP (Ham Use Project)
Firmware for Vaisala RS41 for HAM use
It is posible to recycle Vaisala's RS41-SGP sondes for amateur radio use without any electrical changes. You just have to build a new firmware (this one) and apply it via a cheap adaptor "ST-Linkv2". Modified sonde now transmits on defineable frequenca in 70cm band GPS and telemetry data in FSK RTTY format which is used by HAB projects and additionally it transmits APRS packets on a seperately defineable TX frequency.
Released under GPL v2
# Windows:
Use:
https://www.wyzbee.com/download/Utilities/Software/CoIDE-1.7.8.exe
And:
https://launchpad.net/gcc-arm-embedded/5.0/5-2016-q3-update/+download/gcc-arm-none-eabi-5_4-2016q3-20160926-win32.exe
Using Linux:
# Linux:
cd into main folder
cmake .
make
# Configuration
All configs in ```config.h```
Shift 450Hz
* ```CALLSIGN``` RTTY callsign
* ```APRS_CALLSIGN``` APRS callsign
* ```APRS_SSID``` APRS SSID
* ```APRS_COMMENT``` APRS comment
* ```RTTY_TO_APRS_RATIO``` number of RTTY frames between each APRS frame
* ```RTTY_FREQUENCY``` RTTY frequency in MHz
* ```APRS_FREQUENCY``` APRS frequency in MHz
* ```RTTY_DEVIATION``` RTTY shift configurable in 270Hz steps
* ```RTTY_SPEED``` RTTY speed in bauds
* ```RTTY_7BIT``` Use 7 bit RTTY
* ```RTTY_USE_2_STOP_BITS``` use 2 stop bits
* ```TX_POWER``` Power 0-7, (7 means 42.95 mW@434.150 MHz measured on E4406A)
* ```TX_DELAY``` Delay between frames in milliseconds
* ```ALLOW_DISABLE_BY_BUTTON``` Allow disabling device using button
Have a nice day ;)
#Changelog
@ -25,22 +50,8 @@ Have a nice day ;)
#TODO
* More APRS config options
* Temperature and moisture sensor?
# Configuration
All configs in ```config.h```
Shift 450Hz
* ```CALLSIGN``` RTTY callsign
* ```APRS_CALLSIGN``` APRS callsign
* ```APRS_COMMENT``` APRS comment
* ```APRS_SSID``` APRS SSID - '1' -> 1, 'A' -> 10 etc.
* ```RTTY_TO_APRS_RATIO``` number of RTTY frames between each APRS frame
* ```RTTY_FREQUENCY``` RTTY frequency in MHz
* ```APRS_FREQUENCY``` APRS frequency in MHz
* ```RTTY_SPEED``` RTTY speed in bauds
* ```RTTY_7BIT``` Use 7 bit RTTY
* ```RTTY_USE_2_STOP_BITS``` use 2 stop bits
* ```Smoc``` Power 0-7, where 7 means 42.95 mW@434.150 MHz measured on E4406A
* ```tx_delay``` Delay between frames in milliseconds
* ```ALLOW_DISABLE_BY_BUTTON``` Allow disabling device using button
* Temperature and moisture sensor
* Pressure sensor
* implementing protocol for using external devices on extension header
* Configuration via extension header (serial connection) without need for reflashing firmware
* Possibly add configuration "wireless" using RFID loop present in sonde

6
aprs.h
Wyświetl plik

@ -2,8 +2,8 @@
// Created by Admin on 2017-01-09.
//
#ifndef STM32_RTTY_APRS_H
#define STM32_RTTY_APRS_H
#ifndef RS41HUP_APRS_H
#define RS41HUP_APRS_H
#ifdef __cplusplus
#include <stdint.h>
@ -21,4 +21,4 @@ extern "C" {
#ifdef __cplusplus
};
#endif
#endif //STM32_RTTY_APRS_H
#endif //RS41HUP_APRS_H

Wyświetl plik

@ -2,8 +2,8 @@
// Created by SQ5RWU on 2016-12-24.
//
#ifndef STM32_RTTY_CONFIG_H
#define STM32_RTTY_CONFIG_H
#ifndef RS41HUP_CONFIG_H
#define RS41HUP_CONFIG_H
#ifdef USE_EXTERNAL_CONFIG
#include "config_external.h"
@ -11,7 +11,7 @@
//**************RTTY Data Format**********************
$$<callsign>,<frame>,<hhmmss>,<latitude>,<longitude>,<height>,<radio chip temperature (°C)>,<battery voltage>,<used gps satellites>,<good gps datasets>,<bad gps datasets>,<gps fix>,<CRC>
// $$<callsign>,<frame>,<hhmmss>,<latitude>,<longitude>,<height>,<radio chip temperature (°C)>,<battery voltage>,<used gps satellites>,<good gps datasets>,<bad gps datasets>,<gps fix>,<CRC>
//**************config**********************
@ -71,7 +71,7 @@ $$<callsign>,<frame>,<hhmmss>,<latitude>,<longitude>,<height>,<radio chip temper
#define ALLOW_DISABLE_BY_BUTTON 1
//********** Frame Delay in msec**********************
#define tx_delay 5000
#define TX_DELAY 5000
#endif
#endif //STM32_RTTY_CONFIG_H
#endif //RS41HUP_CONFIG_H

2
main.c
Wyświetl plik

@ -77,7 +77,7 @@ void TIM2_IRQHandler(void) {
GPIO_SetBits(GPIOB, RED);
if (*(++rtty_buf) == 0) {
tx_on = 0;
tx_on_delay = tx_delay / (1000/RTTY_SPEED);
tx_on_delay = TX_DELAY / (1000/RTTY_SPEED);
tx_enable = 0;
radio_disable_tx();
}

Wyświetl plik

@ -2,8 +2,8 @@
// Created by SQ5RWU on 2016-12-24.
//
#ifndef STM32_RTTY_RADIO_H
#define STM32_RTTY_RADIO_H
#ifndef RS41HUP_RADIO_H
#define RS41HUP_RADIO_H
#include "config.h"
#include <stdint.h>
@ -37,4 +37,4 @@ int8_t radio_read_temperature();
}
#endif
#endif //STM32_RTTY_RADIO_H
#endif //RS41HUP_RADIO_H

Wyświetl plik

@ -2,8 +2,8 @@
// Created by SQ5RWU on 2016-12-27.
//
#ifndef STM32_RTTY_UBLOX_H
#define STM32_RTTY_UBLOX_H
#ifndef RS41HUP_UBLOX_H
#define RS41HUP_UBLOX_H
#include <stdint.h>
typedef struct {
@ -207,4 +207,4 @@ void ublox_handle_incoming_byte(uint8_t data);
void ublox_handle_packet(uBloxPacket *pkt);
uint8_t ublox_wait_for_ack();
#endif //STM32_RTTY_UBLOX_H
#endif //RS41HUP_UBLOX_H