qmk / qmk_firmware

Open-source keyboard firmware for Atmel AVR and Arm USB families
https://qmk.fm
GNU General Public License v2.0
17.48k stars 37.73k forks source link

Can I overwrite the host.c file of tmk? #24029

Closed KeyMagicHorse closed 5 days ago

KeyMagicHorse commented 5 days ago

Issue Description

Why do I want to rewrite the host.c file inside keyboard? Answer: Because I am developing a Bluetooth module with nkro functionality, but nkro functionality is not implemented in bluetooth.c and host.c. qmk community response required: If my bluetooth module supports nkro and via data forwarding (via bluetooth serial), how do I modify qvod's bluetooth driver to enable nkro and via data sending and receiving?

I said my train of thought. For nkro: Just implement [void bluetooth_send_nkro(report_nkro_t *report);] in bluetooth.c. For via: I think via should not directly use the raw_hid.h this file interface, but need to interface out, in the host.c to do hid raw data read and write.

What kind of trouble does qmk get into if I try to implement my ideas?

Or I don't need to modify the original tmk code and bluetooth .c file, I just need to overwrite the original host.c and bluetooth .c in keyboards\xxx\rules.mk to achieve my goal. But the order of construction doesn't allow me to do that.

fauxpark commented 5 days ago

It is not possible right now. If you are looking to make a Bluetooth keyboard you should look at ZMK instead.

KeyMagicHorse commented 5 days ago

It is not possible right now. If you are looking to make a Bluetooth keyboard you should look at ZMK instead.

No, I have implemented the Bluetooth module. Now I only need to modify host.c, bluetooth.c and via.c to implement it. And I made a via software that adapts to the bluetooth module.