I have an NVidia Shield TV which supports bluetooth controllers. I also have a universal remote which comes with a hardwired box with HDMI connection, LAN connection and IR and Bluetooth radio's on board. At first, they promised supporting the NVidia Shield TV, but they never got around on implementing that. Recently they've added control over HDMI-CEC, but my setup doesn't cater for it and not all customers have HDMI-CEC capabilities at home.
So i've set my mind on writing my own custom driver (which is supported) and i've already implemented my first custom driver for my set top box. These drivers are written in NodeJS. So i've searched the web for a BLE HID implementation in NodeJS (i ended up with Noble) but i never found a working example. What i did find are various implementations for the espressif chip, which eventually led me to here.
Long story short; can this be done with Puck.js + Noble, running on Linux hardware with a USB BLE dongle setup correctly?
Ideally, if not yet paired to an NVidia Shield, the solution needs to start in 'advertising' mode, so i can pair it from my NVidia shield, then after seen as 'ble_hid_controls' device from the Shield, i think i can work from there...