Bluetooth remote as universal media/light remote ( goodbye logitech harmony )

In a different i pasted the same, but being a bit proud of what i achieved, i want to share so that others that want to do something similarcan do it as well

What i wanted:
Cheap universal remote NO IR to see button presses and do what i want with it.
all my media devices are accessible through the network ( IP )

and it is working with the help of the next topic: thnx
https://community.home-assistant.io/t/tutorial-using-bluetooth-multimedia-buttons-in-hassio-automations/153825

i used a cheap Xiomi clone. Link to ali
https://nl.aliexpress.com/item/1005008518506330.html

So first i added my bluetooth remote through SSH;
which was kinda difficult to see as the bluetoothctl commend shows you all bluetooth activity in your surroundings.
after succesfully adding the remote i got a new hardware source [ event3 ]

now it was time to set up the remote keyboard in the configuration.yaml.
Device_descriptor links to the hardware device path

keyboard_remote:
  device_descriptor: '/dev/input/event3'  
  type: "key_down"
  emulate_key_hold: true
  emulate_key_hold_delay: 0.3
  emulate_key_hold_repeat: 0.1

after a reboot you will see the integration: Keyboard remote.

from there you can filter on events and the data that is behind every key press.
i chose to work with Node-Red.

first filtering the recieved “keyboard” remote presses as the data is in the event data you need to set it

mdg.topic= $outputData(“eventData”).event_type

connecting a debugger and reading presses will output the following data:

this can be used to make switch nodes. ( i chose to do 1 per keypress )

this resulted in the following flow:
in combination with an input select with media scenes which puts my hardware in the desired setting.

Remote presses:

Scene handling:

Remote putton presses list

power	116
audio	392
1		2
2		3
3		4
4		5
5		6
6		7
7		8
8		9
9		10
0		11
info	358
ttx		136
input	167
chlist	156
set		577
netflx	416
prime 	207
up		103
down	108
left	105
right	106
ok		353
mi		150
back	158
home	172
vol+	115
vol-	114
exit	174
mute	113
ch-up	402
ch-dwn	403
red		166
green	161
yellow	410
blue	217

Hoping to help anybody that wants to achieve the same:
just ask me if something is not clear:

ciao

1 Like