diff --git a/CMakeLists.txt b/CMakeLists.txt index 77c5ce8..602702c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -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}") diff --git a/README.md b/README.md index 8f3d7ab..9f6b6ba 100644 --- a/README.md +++ b/README.md @@ -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 \ No newline at end of file + * 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 \ No newline at end of file diff --git a/aprs.h b/aprs.h index 49f9752..1c5279f 100644 --- a/aprs.h +++ b/aprs.h @@ -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 @@ -21,4 +21,4 @@ extern "C" { #ifdef __cplusplus }; #endif -#endif //STM32_RTTY_APRS_H +#endif //RS41HUP_APRS_H diff --git a/config.h b/config.h index f55b6a3..49de141 100644 --- a/config.h +++ b/config.h @@ -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********************** -$$,,,,,,,,,,,, +// $$,,,,,,,,,,,, //**************config********************** @@ -71,7 +71,7 @@ $$,,,,,, @@ -37,4 +37,4 @@ int8_t radio_read_temperature(); } #endif -#endif //STM32_RTTY_RADIO_H +#endif //RS41HUP_RADIO_H diff --git a/ublox.h b/ublox.h index 99fd10a..486dc2c 100644 --- a/ublox.h +++ b/ublox.h @@ -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 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