Thanks for the report. I just updated first post.
If you have time could you post 'USB descriptor' of MK02S? It may give some useful info to fix firmware.
https://github.com/tmk/tmk_keyboard/wiki/USB-Descriptor
Hey Hasu, managed to get the keyboard home at last 
 Here is the USB Descriptor log for the Xiaomi MK02s TKL Keyboard:
 Here is the USB Descriptor log for the Xiaomi MK02s TKL Keyboard:Information for device USB KB (VID=0x0483 PID=0x5710):
Connection Information:
------------------------------
Device current bus speed: FullSpeed
Device supports USB 1.1 specification
Device supports USB 2.0 specification
Device address: 0x0005
Current configuration value: 0x01
Number of open pipes: 2
Device Descriptor:
------------------------------
0x12   bLength
0x01   bDescriptorType
0x0200   bcdUSB
0x00   bDeviceClass      
0x00   bDeviceSubClass   
0x00   bDeviceProtocol   
0x40   bMaxPacketSize0   (64 bytes)
0x0483   idVendor
0x5710   idProduct
0x0202   bcdDevice
0x01   iManufacturer   "STMicroelectronics"
0x02   iProduct   "USB KB"
0x00   iSerialNumber
0x01   bNumConfigurations
Configuration Descriptor:
------------------------------
0x09   bLength
0x02   bDescriptorType
0x003B   wTotalLength   (59 bytes)
0x02   bNumInterfaces
0x01   bConfigurationValue
0x00   iConfiguration
0xA0   bmAttributes   (Bus-powered Device, Remote-Wakeup)
0x32   bMaxPower      (100 mA)
Interface Descriptor:
------------------------------
0x09   bLength
0x04   bDescriptorType
0x00   bInterfaceNumber
0x00   bAlternateSetting
0x01   bNumEndPoints
0x03   bInterfaceClass      (Human Interface Device Class)
0x01   bInterfaceSubClass   
0x01   bInterfaceProtocol   
0x00   iInterface
HID Descriptor:
------------------------------
0x09   bLength
0x21   bDescriptorType
0x0111   bcdHID
0x00   bCountryCode
0x01   bNumDescriptors
0x22   bDescriptorType   (Report descriptor)
0x0041   bDescriptorLength
Endpoint Descriptor:
------------------------------
0x07   bLength
0x05   bDescriptorType
0x81   bEndpointAddress  (IN endpoint 1)
0x03   bmAttributes      (Transfer: Interrupt / Synch: None / Usage: Data)
0x0008   wMaxPacketSize    (1 x 8 bytes)
0x01   bInterval         (1 frames)
Interface Descriptor:
------------------------------
0x09   bLength
0x04   bDescriptorType
0x01   bInterfaceNumber
0x00   bAlternateSetting
0x01   bNumEndPoints
0x03   bInterfaceClass      (Human Interface Device Class)
0x00   bInterfaceSubClass   
0x00   bInterfaceProtocol   
0x00   iInterface
HID Descriptor:
------------------------------
0x09   bLength
0x21   bDescriptorType
0x0111   bcdHID
0x00   bCountryCode
0x01   bNumDescriptors
0x22   bDescriptorType   (Report descriptor)
0x004D   bDescriptorLength
Endpoint Descriptor:
------------------------------
0x07   bLength
0x05   bDescriptorType
0x82   bEndpointAddress  (IN endpoint 2)
0x03   bmAttributes      (Transfer: Interrupt / Synch: None / Usage: Data)
0x0010   wMaxPacketSize    (1 x 16 bytes)
0x01   bInterval         (1 frames)
Microsoft OS Descriptor is not available. Error code: 0x0000001F
String Descriptor Table
--------------------------------
Index  LANGID  String
0x00   0x0000  0x0409 
0x01   0x0409  "STMicroelectronics"
0x02   0x0409  "USB KB"
------------------------------
Connection path for device: 
USB xHCI Compliant Host Controller
Root Hub
USB KB (VID=0x0483 PID=0x5710) Port: 1
Running on: Windows 10 or greater
Brought to you by TDD v2.11.0, Mar 26 2018, 09:54:50
______________________________
Let me know if you need anything else 
 
 Thanks !