SubGhz: add protocol Somfy Telis RTS, Somfy Keytis RTS (#964)

* SubGhz: add 433.42 MHz  for Somfy
* SupGhz: add protocol Somfy Telis RTS, Somfy Keytis RTS

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
Skorpionm
2022-01-27 16:28:21 +04:00
committed by GitHub
parent e804015fea
commit cb0369a7f3
7 changed files with 770 additions and 5 deletions

View File

@@ -0,0 +1,50 @@
#pragma once
#include "subghz_protocol_common.h"
typedef struct SubGhzProtocolSomfyKeytis SubGhzProtocolSomfyKeytis;
/** Allocate SubGhzProtocolSomfyKeytis
*
* @return SubGhzProtocolSomfyKeytis*
*/
SubGhzProtocolSomfyKeytis* subghz_protocol_somfy_keytis_alloc();
/** Free SubGhzProtocolSomfyKeytis
*
* @param instance
*/
void subghz_protocol_somfy_keytis_free(SubGhzProtocolSomfyKeytis* instance);
uint32_t subghz_protocol_somfy_keytis_get_press_duration(void* context);
/** Reset internal state
* @param instance - SubGhzProtocolSomfyKeytis instance
*/
void subghz_protocol_somfy_keytis_reset(SubGhzProtocolSomfyKeytis* instance);
/** Parse accepted duration
*
* @param instance - SubGhzProtocolSomfyKeytis instance
* @param data - LevelDuration level_duration
*/
void subghz_protocol_somfy_keytis_parse(
SubGhzProtocolSomfyKeytis* instance,
bool level,
uint32_t duration);
/** Outputting information from the parser
*
* @param instance - SubGhzProtocolSomfyKeytis* instance
* @param output - output string
*/
void subghz_protocol_somfy_keytis_to_str(SubGhzProtocolSomfyKeytis* instance, string_t output);
/** Loading protocol from bin data
*
* @param instance - SubGhzProtocolSomfyKeytis instance
* @param context - SubGhzProtocolCommonLoad context
*/
void subghz_decoder_somfy_keytis_to_load_protocol(
SubGhzProtocolSomfyKeytis* instance,
void* context);