I0x0I / DIY-A-BLE-Keyboard

A guide on how to build a BLE keyboard
GNU General Public License v2.0
119 stars 28 forks source link

DIY A BLE Keyboard

Introduction

This is a simple open source BLE keyboard firmware for the nRF51 bluetooth chip.

How to use

How does it work

These codes originated from the hid_keyboard example and the cherry example, a timer is setted to scan the keyboard every 25ms. If there are key presses, it will create a report packet in HID keyboard format and send it to the host, when all keys are released, a packet filled with 0 will be sent. If a key is hold, no packet will be sent until it's release, the host can recongnize that the key is holding as it does not recive a released packet (full 0). Doing so is also power saving as there's no need to send packet continously when keys are holded, know more about the HID keyboard packet format in Device Class Definition for Human Interface Devices (HID) and HID Usage Table. Codes on the battery service has been removed and the whole frame work has been simplified.

Future work