Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/flipperzero-firmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h')
-rw-r--r--firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h b/firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h
new file mode 100644
index 00000000..e9bf5765
--- /dev/null
+++ b/firmware/targets/furi_hal_include/furi_hal_usb_hid_u2f.h
@@ -0,0 +1,36 @@
+#pragma once
+
+#define HID_U2F_PACKET_LEN 64
+
+typedef enum {
+ HidU2fDisconnected,
+ HidU2fConnected,
+ HidU2fRequest,
+} HidU2fEvent;
+
+typedef void (*HidU2fCallback)(HidU2fEvent ev, void* context);
+
+/** Get HID U2F connection state
+ *
+ * @return true / false
+ */
+bool furi_hal_hid_u2f_is_connected();
+
+/** Set HID U2F event callback
+ *
+ * @param cb callback
+ * @param ctx callback context
+ */
+void furi_hal_hid_u2f_set_callback(HidU2fCallback cb, void* ctx);
+
+/** Get received U2F HID packet
+ *
+ */
+uint32_t furi_hal_hid_u2f_get_request(uint8_t* data);
+
+/** Send U2F HID response packet
+ *
+ * @param data response data
+ * @param len packet length
+ */
+void furi_hal_hid_u2f_send_response(uint8_t* data, uint8_t len);