 8c93695d01
			
		
	
	
		8c93695d01
		
			
		
	
	
	
	
		
			
			* SubGhz: add CC1101 Ext driver * SubGhz: move TIM2 -> TIM17 use cc1101_ext * FuriHal: SPI move channel DMA 3,4 -> 6.7 * Documentation: fix font * SubGhz: add work with SubGhz devices by link to device * SubGhz: add support switching external/internal cc1101 "subghz chat" * SubGhz: add support switching external/internal cc1101 "subghz tx" and "subghz rx" * SubGhz: add "Radio Settings" scene * SubGhz: add icon * SubGhz: add supported CC1101 external module in SubGhz app * SubGhz: fix check frequency supported radio device * SubGhz: fix clang-formatted * Sughz: move dirver CC1101_Ext to lib , compile cmd ./fbt launch_app APPSRC=radio_device_cc1101_ext * SubGhz: fix CLI * SubGhz: fix PVS * SubGhz: delete comments * SubGhz: fix unit_test * Format sources * Update api symbols and drivers targets * Drivers: find proper place for target option * SubGhz: external device connected method naming * Format sources * SubGhz: fix module selection menu, when external is not connected * SubGhz: fix furi_assert(device); * SubGhz: fix split h and c * SubGhz: furi_hal_subghz remove preset load function by name * SubGhz: deleted comments * Format Sources * SubGhz: add some consts and fix unit tests * Sync API Symbols Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
		
			
				
	
	
		
			53 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #pragma once
 | |
| 
 | |
| #include "types.h"
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| typedef struct SubGhzDevice SubGhzDevice;
 | |
| 
 | |
| void subghz_devices_init();
 | |
| void subghz_devices_deinit(void);
 | |
| 
 | |
| const SubGhzDevice* subghz_devices_get_by_name(const char* device_name);
 | |
| const char* subghz_devices_get_name(const SubGhzDevice* device);
 | |
| bool subghz_devices_begin(const SubGhzDevice* device);
 | |
| void subghz_devices_end(const SubGhzDevice* device);
 | |
| bool subghz_devices_is_connect(const SubGhzDevice* device);
 | |
| void subghz_devices_reset(const SubGhzDevice* device);
 | |
| void subghz_devices_sleep(const SubGhzDevice* device);
 | |
| void subghz_devices_idle(const SubGhzDevice* device);
 | |
| void subghz_devices_load_preset(
 | |
|     const SubGhzDevice* device,
 | |
|     FuriHalSubGhzPreset preset,
 | |
|     uint8_t* preset_data);
 | |
| uint32_t subghz_devices_set_frequency(const SubGhzDevice* device, uint32_t frequency);
 | |
| bool subghz_devices_is_frequency_valid(const SubGhzDevice* device, uint32_t frequency);
 | |
| void subghz_devices_set_async_mirror_pin(const SubGhzDevice* device, const GpioPin* gpio);
 | |
| const GpioPin* subghz_devices_get_data_gpio(const SubGhzDevice* device);
 | |
| 
 | |
| bool subghz_devices_set_tx(const SubGhzDevice* device);
 | |
| void subghz_devices_flush_tx(const SubGhzDevice* device);
 | |
| bool subghz_devices_start_async_tx(const SubGhzDevice* device, void* callback, void* context);
 | |
| bool subghz_devices_is_async_complete_tx(const SubGhzDevice* device);
 | |
| void subghz_devices_stop_async_tx(const SubGhzDevice* device);
 | |
| 
 | |
| void subghz_devices_set_rx(const SubGhzDevice* device);
 | |
| void subghz_devices_flush_rx(const SubGhzDevice* device);
 | |
| void subghz_devices_start_async_rx(const SubGhzDevice* device, void* callback, void* context);
 | |
| void subghz_devices_stop_async_rx(const SubGhzDevice* device);
 | |
| 
 | |
| float subghz_devices_get_rssi(const SubGhzDevice* device);
 | |
| uint8_t subghz_devices_get_lqi(const SubGhzDevice* device);
 | |
| 
 | |
| bool subghz_devices_rx_pipe_not_empty(const SubGhzDevice* device);
 | |
| bool subghz_devices_is_rx_data_crc_valid(const SubGhzDevice* device);
 | |
| void subghz_devices_read_packet(const SubGhzDevice* device, uint8_t* data, uint8_t* size);
 | |
| void subghz_devices_write_packet(const SubGhzDevice* device, const uint8_t* data, uint8_t size);
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 |