diff options
author | Skorpionm <85568270+Skorpionm@users.noreply.github.com> | 2021-08-16 22:56:23 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-16 22:56:23 +0300 |
commit | a024e470b7878c3ff6c129e3b6cf4eac609cb1bf (patch) | |
tree | 31d97ffd9ed07fc76abd113088666ae8144ebadc /applications/subghz/subghz_i.h | |
parent | a548525d757e1e06729ffbcb405c5e5fa0de914f (diff) |
SubGhz: read and save static remotes. Create new static and dynamic remotes. (#646)
* SubGhz: the functions of saving loading KeeLog have been modified, saving KeeLog is prohibited
* SubGhz: Fix displaying Nice FlorS in the Raed scene
* SubGhz: Fix displaying Faac SLH in the Raed scene
* SubGhz: Fix displaying iDo in the Raed scene
* SubGhz: Fix displaying Star Line in the Raed scene
* SubGhz: Fix displaying Nice Flo in the Raed scene, added save and load functions. (testing needed, no remote control)
* SubGhz: subghz_beginadded common encoder upload signal
* SubGhz: add Came encoder
* SubGhz: modified pricenton encoder, fix view transmitter hide the "Send" button if there is no encoder
* SubGhz: add nice flo encoder, need testing no remote control
* SubGhz: add gate_tx encoder
* SubGhz: add nero_sketch encoder
* SubGhz: add keelog encoder
* SubGhz: add long upload upload while the button is pressed while releasing the transfer is over, with a check for sticking (maximum 200 upload repetitions)
* SubGhz: fix max upload
* SubGhz: Fix structure subghz add encoder
* SubGhz: add generating and sending a dynamic keelog key, refactoring the code
* SubGhz: add notifications
* SubGhz: add creating a new remote control (Pricenton, Nice Flo 12bit, Nice Flo 24bit, CAME 12bit, CAME 24bit, Gate TX, DoorHan)
* SubGhz: Fix load file, fix scene start
* Subghz: Fix show key
* SubGhz: Fix subghz_cli
* SubGhz: Fix furi-hal-subghz
* Format sources
* SubGhz: standard notification scheme, fix broken assert in DMA.
* SubGhz: move level alignment logic to furi-hal-subghz, fix spelling, cleanup.
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Diffstat (limited to 'applications/subghz/subghz_i.h')
-rw-r--r-- | applications/subghz/subghz_i.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/applications/subghz/subghz_i.h b/applications/subghz/subghz_i.h index a7a86a8c..8149363d 100644 --- a/applications/subghz/subghz_i.h +++ b/applications/subghz/subghz_i.h @@ -13,6 +13,7 @@ #include <furi-hal.h> #include <gui/gui.h> #include <gui/scene_manager.h> +#include <notification/notification-messages.h> #include <gui/view_dispatcher.h> #include <gui/modules/submenu.h> #include <gui/modules/dialog_ex.h> @@ -27,16 +28,22 @@ #define SUBGHZ_TEXT_STORE_SIZE 128 +#define NOTIFICATION_STARTING_STATE 0u +#define NOTIFICATION_IDLE_STATE 1u +#define NOTIFICATION_TX_STATE 2u + extern const uint32_t subghz_frequencies[]; extern const uint32_t subghz_frequencies_count; extern const uint32_t subghz_frequencies_433_92; struct SubGhz { Gui* gui; + NotificationApp* notifications; SubGhzWorker* worker; SubGhzProtocol* protocol; SubGhzProtocolCommon* protocol_result; + SubGhzProtocolEncoderCommon* encoder; SceneManager* scene_manager; @@ -47,6 +54,7 @@ struct SubGhz { Popup* popup; TextInput* text_input; char text_store[SUBGHZ_TEXT_STORE_SIZE + 1]; + uint8_t state_notifications; SubghzAnalyze* subghz_analyze; SubghzReceiver* subghz_receiver; @@ -77,4 +85,9 @@ void subghz_rx(uint32_t frequency); void subghz_tx(uint32_t frequency); void subghz_idle(void); void subghz_end(void); -bool subghz_key_load(SubGhz* subghz, const char* file_path);
\ No newline at end of file +void subghz_transmitter_tx_start(void* context); +void subghz_transmitter_tx_stop(void* context); +bool subghz_key_load(SubGhz* subghz, const char* file_path); +bool subghz_save_protocol_to_file(void* context, const char* dev_name); +bool subghz_saved_protocol_select(SubGhz* subghz); +uint32_t subghz_random_serial(void); |