mirror of
https://github.com/DarkFlippers/unleashed-firmware.git
synced 2024-12-30 16:56:41 +03:00
60 lines
1.3 KiB
C
60 lines
1.3 KiB
C
#pragma once
|
|
|
|
#include "serial_service.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define FURI_HAL_BT_SERIAL_PACKET_SIZE_MAX SERIAL_SVC_DATA_LEN_MAX
|
|
|
|
typedef enum {
|
|
FuriHalBtSerialRpcStatusNotActive,
|
|
FuriHalBtSerialRpcStatusActive,
|
|
} FuriHalBtSerialRpcStatus;
|
|
|
|
/** Serial service callback type */
|
|
typedef SerialServiceEventCallback FuriHalBtSerialCallback;
|
|
|
|
/** Start Serial Profile
|
|
*/
|
|
void furi_hal_bt_serial_start();
|
|
|
|
/** Stop Serial Profile
|
|
*/
|
|
void furi_hal_bt_serial_stop();
|
|
|
|
/** Set Serial service events callback
|
|
*
|
|
* @param buffer_size Applicaition buffer size
|
|
* @param calback FuriHalBtSerialCallback instance
|
|
* @param context pointer to context
|
|
*/
|
|
void furi_hal_bt_serial_set_event_callback(
|
|
uint16_t buff_size,
|
|
FuriHalBtSerialCallback callback,
|
|
void* context);
|
|
|
|
/** Set BLE RPC status
|
|
*
|
|
* @param status FuriHalBtSerialRpcStatus instance
|
|
*/
|
|
void furi_hal_bt_serial_set_rpc_status(FuriHalBtSerialRpcStatus status);
|
|
|
|
/** Notify that application buffer is empty
|
|
*/
|
|
void furi_hal_bt_serial_notify_buffer_is_empty();
|
|
|
|
/** Send data through BLE
|
|
*
|
|
* @param data data buffer
|
|
* @param size data buffer size
|
|
*
|
|
* @return true on success
|
|
*/
|
|
bool furi_hal_bt_serial_tx(uint8_t* data, uint16_t size);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|