mirror of
https://github.com/ByteWelder/Tactility.git
synced 2026-06-19 04:15:06 +00:00
* Bluetooth LE addition * fixes * use the psram! helps a little on S3 (t-deck) * custom device name * Update symbols.c * Feedback + fixes Fixes external app start/stop server (child devices) Fixes BtManage causing a full system hang upon disabling bt when a device is connected to the host. * updoot * more updoot * move back! * Revert "move back!" This reverts commit d3694365c634acc5db62ac59771c496cb971a727. * fix some of the things * Addressing feedback? hmm * Fixes Bug 1 — Reconnect loop / Reconnect not working fixed Bug 2 — Name-only advertising overwrites HID advertising Bug 3 — BleHidDeviceCtx leak on re-enable Enhancement — HID device auto-start on radio re-enable * stuff... * update for consistency with others * fix crashes and some bonus symbols * a few symbols, i2c speed, cdn message 100kHz i2c speed seems to be more compatible with m5stack modules...and probably in general. cdn message no longer applies * Hide BT Settings when bt not enabled * Addressing things and device fixes * Missed one! * stuff
35 lines
757 B
C
35 lines
757 B
C
#pragma once
|
|
|
|
#ifdef ESP_PLATFORM
|
|
#include <sdkconfig.h>
|
|
#endif
|
|
|
|
#if defined(CONFIG_BT_NIMBLE_ENABLED)
|
|
|
|
#include <tactility/drivers/bluetooth_hid_device.h>
|
|
|
|
#include <stdint.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
enum BleHidProfile { None, KbConsumer, Mouse, KbMouse, Gamepad };
|
|
|
|
struct Device;
|
|
|
|
bool ble_hid_get_active(struct Device* device);
|
|
void ble_hid_set_active(struct Device* device, bool v);
|
|
uint16_t ble_hid_get_conn_handle(struct Device* device);
|
|
void ble_hid_set_conn_handle(struct Device* device, uint16_t h);
|
|
|
|
// device must be the hid_device child Device*.
|
|
void ble_hid_init_gatt();
|
|
bool ble_hid_switch_profile(struct Device* hid_child, BleHidProfile profile);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // CONFIG_BT_NIMBLE_ENABLED
|