aboutsummaryrefslogtreecommitdiff
path: root/docs/feature_bluetooth.md
diff options
context:
space:
mode:
authorchipperdoodles <myknobel@gmail.com>2018-10-07 11:23:41 -0700
committerDrashna Jaelre <drashna@live.com>2018-10-07 11:23:41 -0700
commit914d42acd01cae9fa03d9368f9316a1e1017fb17 (patch)
treedfd66be7c5b320f00d8e7d6ee1df179159bfccf7 /docs/feature_bluetooth.md
parentbe2610b6da8e7466107678a4782ddafac7002b1d (diff)
downloadqmk_firmware-914d42acd01cae9fa03d9368f9316a1e1017fb17.tar.gz
qmk_firmware-914d42acd01cae9fa03d9368f9316a1e1017fb17.zip
Update Bluetooth docs (#4062)
* syncing upstream * Bluetooth Doc update More Description in bluetooth section, Addition to Config options rules.mk section. * merge upstream chibios * lib/chibios checkout * Additional EZ key Section added back EZ-Key diy link, Cleaned up some errors
Diffstat (limited to 'docs/feature_bluetooth.md')
-rw-r--r--docs/feature_bluetooth.md32
1 files changed, 31 insertions, 1 deletions
diff --git a/docs/feature_bluetooth.md b/docs/feature_bluetooth.md
index f647adc72..3ffbfa068 100644
--- a/docs/feature_bluetooth.md
+++ b/docs/feature_bluetooth.md
@@ -1,10 +1,40 @@
1# Bluetooth 1# Bluetooth
2 2
3## Bluetooth Functionality 3## Bluetooth Known Supported Hardware
4 4
5Currently Bluetooth support is limited to AVR based chips. For Bluetooth 2.1 Qmk has support for RN-42 HID Firmware and Bluefruit EZ Key the later of which is not produced anymore. For more recent BLE protocols currently only the Adafruit Bluefruit SPI friend is directly supported. BLE is needed to connect to iOS devices. Note iOS does not support Mouse Input.
6
7|Board |Bluetooth Protocol |Connection Type |Rules.mk |Bluetooth Chip|
8|----------------------------------------------------------------|----------------------------|----------------|---------------------------|--------------|
9|[Adafruit EzKey HID]("https://www.adafruit.com/product/1535") |Bluetooth Classic | UART | BLUETOOTH = AdafruitEZKey | |
10|Rover Networks RN-42 (Sparkfun Bluesmirf) |Bluetooth Classic | UART | BLUETOOTH = RN42 | RN-42 |
11|[Bluefruit LE SPI Friend](https://www.adafruit.com/product/2633)|Bluetooth Low Energy | SPI | BLUETOOTH = AdafruitBLE | nRF5182 |
12
13Not Supported Yet but possible:
14* [Bluefruit LE UART Friend](https://www.adafruit.com/product/2479). [Possible tmk implementation found in](https://github.com/tmk/tmk_keyboard/issues/514)
15* HC-05 boards flashed with RN-42 firmware. They apparently both use the CSR BC417 Chip. Flashing it with RN-42 firmware gives it HID capability.
16* [Sparkfun Bluetooth mate](https://www.sparkfun.com/products/14839)
17* HM-13 based boards
18
19### Adafruit BLE SPI Friend
20Currently The only bluetooth chipset supported by QMK is the Adafruit Bluefruit SPI Friend. It's a Nordic nRF5182 based chip running Adafruit's custom firmware. Data is transmitted via Adafruit's SDEP over Hardware SPI. The [Feather 32u4 Bluefruit LE](https://www.adafruit.com/product/2829) is supported as it's an AVR mcu connected via SPI to the Nordic BLE chip with Adafruit firmware. If Building a custom board with the SPI friend it would be easiest to just use the pin selection that the 32u4 feather uses but you can change the pins in the config.h options with the following defines:
21* #define AdafruitBleResetPin D4
22* #define AdafruitBleCSPin B4
23* #define AdafruitBleIRQPin E6
24
25A Bluefruit UART friend can be converted to an SPI friend, however this [requires](https://github.com/qmk/qmk_firmware/issues/2274) some reflashing and soldering directly to the MDBT40 chip.
26
27## Adafruit EZ-Key hid
5This requires [some hardware changes](https://www.reddit.com/r/MechanicalKeyboards/comments/3psx0q/the_planck_keyboard_with_bluetooth_guide_and/?ref=search_posts), but can be enabled via the Makefile. The firmware will still output characters via USB, so be aware of this when charging via a computer. It would make sense to have a switch on the Bluefruit to turn it off at will. 28This requires [some hardware changes](https://www.reddit.com/r/MechanicalKeyboards/comments/3psx0q/the_planck_keyboard_with_bluetooth_guide_and/?ref=search_posts), but can be enabled via the Makefile. The firmware will still output characters via USB, so be aware of this when charging via a computer. It would make sense to have a switch on the Bluefruit to turn it off at will.
6 29
30
7<!-- FIXME: Document bluetooth support more completely. --> 31<!-- FIXME: Document bluetooth support more completely. -->
32## Bluetooth Rules.mk Options
33Use only one of these
34* BLUETOOTH_ENABLE = yes (Legacy Option)
35* BLUETOOTH = RN42
36* BLUETOOTH = AdafruitEZKey
37* BLUETOOTH = AdafruitBLE
8 38
9## Bluetooth Keycodes 39## Bluetooth Keycodes
10 40