bilogic / logitech-unifying-device

Use ESP8266 and NRF24L01+ as a wireless Logitech Unifying keyboard/mouse

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Library to build Logitech Unifying compatible devices

I have always wanted an 84 key standard layout, wireless, mechanical keyboard with RGB backlight and rotary knobs plus media control buttons near the spacebar. Anyway, it did not take long for me to realize that bluetooth keyboards are notoriously unreliable, intermittently disconnecting every so often. However, Unifying ones are much better.

I never planned to publish this code, thus it is not the cleanest. But since I'm stuck, I thought someone might put it to good use and maybe figure out the problem. If you can make a more secured Unifying compatible protocol, all the better.

Many thanks to:

Hardware

  • Logitech C-U0007 dongle
  • ESP8266, NRF24L01+ and a 5v power board for the NRF24L01+ module, connect them as follows:
    • WEMOS D1 mini D3 <-> power board CS
    • WEMOS D1 mini D4 <-> power board CE
    • WEMOS D1 mini D5 <-> power board SCK
    • WEMOS D1 mini D6 <-> power board MISO
    • WEMOS D1 mini D7 <-> power board MOSI
    • WEMOS D1 mini 5V <-> power board VCC
    • WEMOS D1 mini GND <-> power board GND

Software

  • Open logitech-unifying-device.code-workspace in VSCode with PlatformIO installed
  • Press ctrl + alt + u to compile
  • If it is your first time using PlatformIO, wait until the icon appears on the activity bar at the left of VSCode before compiling, it should just work

About

Use ESP8266 and NRF24L01+ as a wireless Logitech Unifying keyboard/mouse

License:GNU General Public License v3.0


Languages

Language:C++ 96.2%Language:C 3.8%