zmkfirmware / zmk

ZMK Firmware Repository
https://zmk.dev/
MIT License
2.71k stars 2.76k forks source link

Pure USB receiver dongle #1420

Closed LSChyi closed 2 years ago

LSChyi commented 2 years ago

Hi, I am wondering about is there any discussion about such a feature, that creating a pure USB receiver dongle to pair with other ZMK peripherals.

The reason and use case for this feature are:

  1. The central role of the split keyboard has much less battery life, moving the receiving work to the USB dongle improves the battery life on all half.
  2. Followed by 1., the peripherals can use cheaper BLE modules (e.g., NRF52832).
  3. For the host that has no BLE functionality, they can insert this dongle and use keyboards wirelessly, and switching between devices is very clear as one can tell from where the USB dongle is connected to.
  4. Several existing NRF52840 USB pure dongle is available on the market (e.g., Raytac MDBT50Q-RA).

I found that the Bluetooth pairing-related implementation is kind of generic, and I did just a few changes, looks like pairing multiple peripherals is feasible, and some more work to polish for such a use case (e.g., disable the BLE peripheral role on the USB dongle, change Kconfig, etc).

Is there any discussion about this? I can help implement this feature.

caksoylar commented 2 years ago

See #314 for related issue and #836 and #1282 on progress towards that.

LSChyi commented 2 years ago

Good to know that, thank you @caksoylar!