zmk_mf68/src/endpoints.c

64 lines
1.1 KiB
C
Raw Normal View History

#include <zmk/endpoints.h>
#include <zmk/hid.h>
#include <zmk/usb_hid.h>
#include <zmk/hog.h>
2020-05-15 23:41:06 +10:00
int zmk_endpoints_init()
{
int err;
err = zmk_usb_hid_init();
if (err)
{
printk("USB HID Init Failed\n");
return err;
}
#ifdef CONFIG_ZMK_BLE
2020-05-15 23:41:06 +10:00
err = zmk_hog_init();
if (err)
{
printk("HOG Init Failed\n");
return err;
}
#endif /* CONFIG_ZMK_BLE */
2020-05-15 23:41:06 +10:00
return 0;
}
int zmk_endpoints_send_key_event(struct zmk_key_event key_event)
{
2020-05-15 23:41:06 +10:00
struct zmk_hid_report *report;
int err;
2020-05-19 13:34:36 +10:00
if (key_event.pressed)
{
2020-05-15 23:41:06 +10:00
zmk_hid_press_key(key_event.key);
}
else
{
2020-05-15 23:41:06 +10:00
zmk_hid_release_key(key_event.key);
}
report = zmk_hid_get_report();
// if (zmk_usb_hid_send_report(report) != 0)
// {
// // LOG_DBG("USB Send Failed");
// }
#ifdef CONFIG_ZMK_BLE
err = zmk_hog_send_report(report);
if (err)
2020-05-15 23:41:06 +10:00
{
printk("FAILED TO SEND OVER HOG: %d\n", err);
2020-05-15 23:41:06 +10:00
// LOG_DBG("HID Over GATTP Send Failed");
}
#endif /* CONFIG_ZMK_BLE */
return 0;
}