# Copied from https://forum.libreelec.tv/thread-3581.html # Thanks to ippon I have a new TX3-Pro (S905X- Android 6) box. I run it with kszaq 7.0.2.009 version (thanks to kszaq, great job!). The only problem I had was that the remote control didn’t work at all. Also copying remote.conf from the Android /etc folder to libreelec /storage/.config didn’t help. I thought a while, that may be the device tree (dtb) was wrong for my box but this wasn’t. It was the remote.conf. It seems to me, that Android 6 uses a remote configuration different from the /system/etc/remote.conf. After ‘googleing’ a while, I found a description from a openelec user. He build a romete.conf from scratch for a WeeTeck-Box. I tried and it works. I was able to generate a working remote.conf for my box and now may remote works perfectly. Another benefit is, I was able to do my preferred key mapping. I’ve seen a lot of posts regarding a not working remote-control. Hopefully my post will help a little bit. Peparation Copy a remote.conf file to libreelec Configuration folder: Code: /storage/.config over SSH or Code: \\your_box_IP\Configuration using Windows shares. You can either use my file from the post or the file from your Android. If you use our file, take care that: all lines between key_begin and key_end are deleted or marked as comment (leading #) debug_enable = 1 Code: #********************************************************************************************************* #this file is configuration for each factory remote device # work_mode 0 :software mode 1 :hardware mode # repeat_enable 0 :disable repeat 1 :enable repeat # # factory_code each device has it's unique factory code. # pattern:custom_code(16bit)+index_code(16bit) # examble: 0xff000001 = 0xff00(custom cod) 0001 (index) # # release_delay unit:ms.release will report from kernel to user layer after this period of time # from press or repeat triggered. # # debug_enable 0 :debug disable 1 :debug disable # # SW MODE: # bit_count how many bits in each frame # tw_leader_act time window for leader active # tw_bit0 time window for bit0 time. # tw_bit1 time window for bit1 time # tw_repeat_leader time window for repeat leader # REG # reg_base_gen set value for PREG_IR_DEC_BASE_GEN # reg_control set value for PREG_IR_DEC_CONTROL # reg_leader_act set value for PREG_IR_DEC_LEADER_ACTIVE # reg_leader_idle set value for PREG_IR_DEC_LEADER_IDLE # reg_repeat_leader set value for PREG_IR_DEC_REPEAT_IDLE # reg_bit0_time set value for PREG_IR_DEC_BIT0_TIME #************************************************************************************************************* #amlogic NEC remote factory_code = 0x7f800001 work_mode = 0 repeat_enable = 1 repeat_delay = 130 repeat_peroid = 120 release_delay = 20 debug_enable = 1 # fn_key_scancode = 0x52 #MOUSE # left_key_scancode = 0x25 #LEFT # right_key_scancode = 0x27 #RIGHT # up_key_scancode = 0x26 #UP # down_key_scancode = 0x28 #DOWN # ok_key_scancode = 0x0d #OK mouse_begin # 0 0x25 #LEFT # 1 0x27 #RIGHT # 2 0x26 #UP # 3 0x28 #DOWN mouse_end key_begin # 0x51 116 #Power # 0x4d 164 #PLAYPAUSE (MUTE) # 0x09 398 #RED # 0x11 399 #GREEN # 0x54 400 #YELLOW # 0x4f 401 #BLUE # 0x56 104 #PAGEUP (VOL-) # 0xbd 168 #REWIND # 0xbb 208 #FASTFORWARD # 0x4e 109 #PAGEDOWN (VOL+) # 0x25 105 #LEFT # 0x27 106 #RIGHT # 0x26 103 #UP # 0x28 108 #DOWN # 0x0d 28 #ENTER (OK) # 0x53 102 #HOME # 0x1b 1 #ESC (BACK) # 0x49 46 #C (CONTEXTMENU) # 0x52 nn #MOUSE (dont use this line, key is mapped in fn_key_scancode) # 0x30 11 #No.0 # 0x31 2 #No.1 # 0x32 3 #No.2 # 0x33 4 #No.3 # 0x34 5 #No.4 # 0x35 6 #No.5 # 0x36 7 #No.6 # 0x37 8 #No.7 # 0x38 9 #No.8 # 0x39 10 #No.9 # 0x44 14 #BACKSPACE # 0x58 23 #INFO # 0x4d 113 #MUTE # 0x56 114 #VOLUMEDOWN # 0x4e 115 #VOLUMEUP # 0x09 364 #FAVORITES # 0x11 102 #HOME # 0x54 158 #BACK # 0x4f 171 #CONFIG key_end repeat_key_begin repeat_key_end Set Factory Code Open the /storage/.config/remote.conf in any editor. You can also use the windows share \\your_box_IP\Configuration. Open a SSH session to your box (I use putty for this. User root, password libreelec). Type ‘dmesg –c’ in the ssh terminal. Ignore the message, it’s only for clearing the cache. Press any key in your remote control and directly dmesg -c in the ssh terminal. You will get something like this: Code: wrong custom code is 0xXXYYZZZZ Go to the editor with the remote.conf. You will find a line like this: Code: factory_code = 0x12340001 If you get something else (or nothing), my method will not help for your problem. Change the code with this 0xZZZZ0001 (ZZZZ is the digits you have got from the ssh above). For example if you get in the dmesg wrong custom code is 0x14fg76ad So your code should be 0x76ad0001. Save the remote.conf and reboot your box. Factory code is set. Key Map Open the remote.conf in editor and the ssh in 2[sup]nd[/sup] window again. Type Type ‘dmesg –c’ in the ssh terminal and ignore the message. Press any key in your remote control and directly dmesg -c in the ssh terminal. You will now get something like this: Code: remote: scancode is 0x0043,invalid key is 0x0000. If you get this, the Factory code was set correctly. Now you can start the do the keymapping. In my remote.conf file, you’ll find the lines between key_begin and key_end likes this: # 0xca 116 ;POWER # 0x07 105 ;KEY_LEFT Start with the fist line. Press the POWER button on your remote. Type dmesg -c in the ssh terminal. You will now get something like this: Code: remote: scancode is 0x0043,invalid key is 0x0000. Change the 1st line in the remote.conf to 0x43 116 ;POWER This means: - removing the leading # (line is active) - change 0xca to 0x43 (change old/wong remote code with the correct code.) - keep 116 (this is the linux code for POWER button).You need to do this for all lines in the file. Don’t forget to save from time to time. Do this for all lines in the file. If you have no corresponding button on the remote, keep the line unchanged or delete it. If you have keys on the remote with no corresponding line in the file, you can create a new line. For this, you need to now this right linux code. In the link below, you’ll find all avalible codes. Not all of them work in Kodi, so you need to play a bit with the codes. https://github.com/torvalds/linux/blob/m...nt-codes.h If you set the code for all buttons on your remote, save the remote.conf and reboot your box. Key Maping is done. Mouse If you like to use the mouse function on your remote, you have to define one key on your remote as mouse key. To get the mouse working, you also need to set the values in the upper section of the remote.conf. This are the lines you need to change. The '0x25' is the value you need to change with the value you got bavk from the ‘dmesg –c’. You also need to remove the leading '#'. Code: # fn_key_scancode = 0x52 #MOUSE # left_key_scancode = 0x25 #LEFT # right_key_scancode = 0x27 #RIGHT # up_key_scancode = 0x26 #UP # down_key_scancode = 0x28 #DOWN # ok_key_scancode = 0x0d #OK mouse_begin # 0 0x25 #LEFT # 1 0x27 #RIGHT # 2 0x26 #UP # 3 0x28 #DOWN mouse_end repeat key section copy all lines beetween 'key_begin' and 'key_end' betwwen the lines 'repeat_key_begin' and 'repeat_key_end'. To be honest, I've no idea with this is good for, but it is done in all remeote.conf files I have seen.