mirror of
https://github.com/portapack-mayhem/mayhem-firmware.git
synced 2026-09-11 00:59:28 +00:00
EPIRB TX Application (#3081)
* First step to epirb-tx app * Next step to epirb_tx app * Fixed merge * EPIRB TX app progress - Fixed UI - Added automatic frame resend after delay - Added load of beacons from EPIRB/BEACONS.TXT file * First step to adding 121.5 MHz signal * Refactored 121.5 signal generation code * Added frequency change when switching from BPSK to AM * Added checkbox for AM signal. Added START/STOP button Added AM frequency First step to editor mode. * Next step to frame editor * Fixed location bits. * Refactored code + fixed location * Added location fields * UI fixes + settings backup Fixed lat/long display Added send on change checkbox Added settings backup Fixed locator edition Fixed BEACONS.TXT to move to Self test beacons. * Update ui_epirb_tx.cpp Fixed timeout reset * Added national location protocol. Added national location protocol. Fixed send on change. * UI fixes Added country selection Separated beacon protocol and beacon type selectors * Standard protocol Added standard protocol Added internal checkbox * Fixed fomratting * Code cleanup * Comments / doc * More comments / doc * More comments / doc Fixed pre count duration. Added frequency restore after leaving * Prepare merge * Prepare merge * Finished merge * More comments and doc * Update ui_epirb_tx.cpp Fixed out of memory error when using AlphanumView * Update proc_epirb_tx.hpp Fixed comment * Fixed copilot PR comments. * Update proc_epirb_tx.hpp Fixed formatting * Update external.ld Merge with kiss_tnc app
This commit is contained in:
@@ -156,6 +156,7 @@ class Message {
|
||||
RTTYData = 98,
|
||||
NotificationData = 99,
|
||||
TimeSinkConfig = 100,
|
||||
EPIRBTXData = 101,
|
||||
MAX
|
||||
};
|
||||
|
||||
@@ -1110,6 +1111,19 @@ class SigGenToneMessage : public Message {
|
||||
const uint32_t tone_delta;
|
||||
};
|
||||
|
||||
class EPIRBTXDataMessage : public Message {
|
||||
public:
|
||||
static constexpr uint8_t max_len = 18;
|
||||
constexpr EPIRBTXDataMessage()
|
||||
: Message{ID::EPIRBTXData} {
|
||||
}
|
||||
bool mode_bpsk = true;
|
||||
uint8_t data[max_len]{0};
|
||||
uint8_t data_len = 0;
|
||||
uint32_t pre_count = 0;
|
||||
uint32_t post_count = 0;
|
||||
};
|
||||
|
||||
class AFSKTxConfigureMessage : public Message {
|
||||
public:
|
||||
constexpr AFSKTxConfigureMessage(
|
||||
|
||||
@@ -88,6 +88,7 @@ constexpr image_tag_t image_tag_am_tv{'P', 'A', 'M', 'T'};
|
||||
constexpr image_tag_t image_tag_capture{'P', 'C', 'A', 'P'};
|
||||
constexpr image_tag_t image_tag_ert{'P', 'E', 'R', 'T'};
|
||||
constexpr image_tag_t image_tag_epirb_rx{'P', 'E', 'P', 'I'};
|
||||
constexpr image_tag_t image_tag_epirb_tx{'P', 'E', 'P', 'T'};
|
||||
constexpr image_tag_t image_tag_nfm_audio{'P', 'N', 'F', 'M'};
|
||||
constexpr image_tag_t image_tag_pocsag{'P', 'P', 'O', 'C'};
|
||||
constexpr image_tag_t image_tag_pocsag2{'P', 'P', 'O', '2'};
|
||||
|
||||
Reference in New Issue
Block a user