[TESTING] Kodi v19 builds for Vero 4K / 4K +

OK, thanks. Just wondered whether it was just a discovery issue or more than that.

It’s going to be difficult one to trace. My kb works fine so there must be something about yours - make and model?

No problem if i can help on something let me know.

The keyboard is a Logitech MX Keys

For me was weird to see the keyboard perfectly identified, MX Keys, just l launched bluetoothctl but see nothing in the list. Are they using the same library?

If you do have a moment, can you install libglib2.0-bin then

gdbus introspect -y -r -d org.bluez -o /org/bluez/hci1/dev_08_B7_38_20_46_C5

But replace the UUID after dev_ with your keyboard’s and post the result. Then we can get a python expert to look at it.

The output from gdbus:

  node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2 {
  interface org.freedesktop.DBus.Introspectable {
    methods:
      Introspect(out s xml);
    signals:
    properties:
  };
  interface org.bluez.Device1 {
    methods:
      Disconnect();
      Connect();
      ConnectProfile(in  s UUID);
      DisconnectProfile(in  s UUID);
      Pair();
      CancelPairing();
    signals:
    properties:
      readonly s Address = 'DF:91:1D:9B:9B:A2';
      readonly s Name = 'MX Keys';
      readwrite s Alias = 'MX Keys';
      readonly u Class;
      readonly q Appearance = 961;
      readonly s Icon = 'input-keyboard';
      readonly b Paired = true;
      readwrite b Trusted = true;
      readwrite b Blocked = false;
      readonly b LegacyPairing = false;
      readonly n RSSI;
      readonly b Connected = true;
      readonly as UUIDs = ['00001800-0000-1000-8000-00805f9b34fb', '00001801-0000-1000-8000-00805f9b34fb', '0000180a-0000-1000-8000-00805f9b34fb', '0000180f-0000-1000-8000-00805f9b34fb', '00001812-0000-1000-8000-00805f9b34fb', '00010000-0000-1000-8000-011f2000046d'];
      readonly s Modalias = 'usb:v046DpB35Bd0011';
      readonly o Adapter = '/org/bluez/hci1';
      readonly a{qv} ManufacturerData;
      readonly a{sv} ServiceData;
      readonly n TxPower;
      readonly b ServicesResolved = true;
  };
  interface org.freedesktop.DBus.Properties {
    methods:
      Get(in  s interface,
          in  s name,
          out v value);
      Set(in  s interface,
          in  s name,
          in  v value);
      GetAll(in  s interface,
             out a{sv} properties);
    signals:
      PropertiesChanged(s interface,
                        a{sv} changed_properties,
                        as invalidated_properties);
    properties:
  };
  node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000a {
    interface org.freedesktop.DBus.Introspectable {
      methods:
        Introspect(out s xml);
      signals:
      properties:
    };
    interface org.bluez.GattService1 {
      methods:
      signals:
      properties:
        readonly s UUID = '00001801-0000-1000-8000-00805f9b34fb';
        readonly o Device = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2';
        readonly b Primary = true;
    };
    interface org.freedesktop.DBus.Properties {
      methods:
        Get(in  s interface,
            in  s name,
            out v value);
        Set(in  s interface,
            in  s name,
            in  v value);
        GetAll(in  s interface,
               out a{sv} properties);
      signals:
        PropertiesChanged(s interface,
                          a{sv} changed_properties,
                          as invalidated_properties);
      properties:
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000a/char000b {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a05-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000a';
          readonly ay Value = [];
          readonly b Notifying = false;
          readonly as Flags = ['indicate'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
      node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000a/char000b/desc000d {
        interface org.freedesktop.DBus.Introspectable {
          methods:
            Introspect(out s xml);
          signals:
          properties:
        };
        interface org.bluez.GattDescriptor1 {
          methods:
            ReadValue(in  a{sv} options,
                      out ay value);
            WriteValue(in  ay value,
                       in  a{sv} options);
          signals:
          properties:
            readonly s UUID = '00002902-0000-1000-8000-00805f9b34fb';
            readonly o Characteristic = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000a/char000b';
            readonly ay Value = [];
        };
        interface org.freedesktop.DBus.Properties {
          methods:
            Get(in  s interface,
                in  s name,
                out v value);
            Set(in  s interface,
                in  s name,
                in  v value);
            GetAll(in  s interface,
                   out a{sv} properties);
          signals:
            PropertiesChanged(s interface,
                              a{sv} changed_properties,
                              as invalidated_properties);
          properties:
        };
      };
    };
  };
  node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e {
    interface org.freedesktop.DBus.Introspectable {
      methods:
        Introspect(out s xml);
      signals:
      properties:
    };
    interface org.bluez.GattService1 {
      methods:
      signals:
      properties:
        readonly s UUID = '0000180a-0000-1000-8000-00805f9b34fb';
        readonly o Device = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2';
        readonly b Primary = true;
    };
    interface org.freedesktop.DBus.Properties {
      methods:
        Get(in  s interface,
            in  s name,
            out v value);
        Set(in  s interface,
            in  s name,
            in  v value);
        GetAll(in  s interface,
               out a{sv} properties);
      signals:
        PropertiesChanged(s interface,
                          a{sv} changed_properties,
                          as invalidated_properties);
      properties:
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char000f {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a29-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char0011 {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a24-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char0013 {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a25-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char0015 {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a27-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char0017 {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a26-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char0019 {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a28-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e/char001b {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a50-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service000e';
          readonly ay Value = [];
          readonly b Notifying;
          readonly as Flags = ['read'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
    };
  };
  node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service001d {
    interface org.freedesktop.DBus.Introspectable {
      methods:
        Introspect(out s xml);
      signals:
      properties:
    };
    interface org.bluez.GattService1 {
      methods:
      signals:
      properties:
        readonly s UUID = '0000180f-0000-1000-8000-00805f9b34fb';
        readonly o Device = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2';
        readonly b Primary = true;
    };
    interface org.freedesktop.DBus.Properties {
      methods:
        Get(in  s interface,
            in  s name,
            out v value);
        Set(in  s interface,
            in  s name,
            in  v value);
        GetAll(in  s interface,
               out a{sv} properties);
      signals:
        PropertiesChanged(s interface,
                          a{sv} changed_properties,
                          as invalidated_properties);
      properties:
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service001d/char001e {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00002a19-0000-1000-8000-00805f9b34fb';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service001d';
          readonly ay Value = [];
          readonly b Notifying = false;
          readonly as Flags = ['read', 'notify'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
      node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service001d/char001e/desc0020 {
        interface org.freedesktop.DBus.Introspectable {
          methods:
            Introspect(out s xml);
          signals:
          properties:
        };
        interface org.bluez.GattDescriptor1 {
          methods:
            ReadValue(in  a{sv} options,
                      out ay value);
            WriteValue(in  ay value,
                       in  a{sv} options);
          signals:
          properties:
            readonly s UUID = '00002902-0000-1000-8000-00805f9b34fb';
            readonly o Characteristic = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service001d/char001e';
            readonly ay Value = [];
        };
        interface org.freedesktop.DBus.Properties {
          methods:
            Get(in  s interface,
                in  s name,
                out v value);
            Set(in  s interface,
                in  s name,
                in  v value);
            GetAll(in  s interface,
                   out a{sv} properties);
          signals:
            PropertiesChanged(s interface,
                              a{sv} changed_properties,
                              as invalidated_properties);
          properties:
        };
      };
    };
  };
  node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service0048 {
    interface org.freedesktop.DBus.Introspectable {
      methods:
        Introspect(out s xml);
      signals:
      properties:
    };
    interface org.bluez.GattService1 {
      methods:
      signals:
      properties:
        readonly s UUID = '00010000-0000-1000-8000-011f2000046d';
        readonly o Device = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2';
        readonly b Primary = true;
    };
    interface org.freedesktop.DBus.Properties {
      methods:
        Get(in  s interface,
            in  s name,
            out v value);
        Set(in  s interface,
            in  s name,
            in  v value);
        GetAll(in  s interface,
               out a{sv} properties);
      signals:
        PropertiesChanged(s interface,
                          a{sv} changed_properties,
                          as invalidated_properties);
      properties:
    };
    node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service0048/char0049 {
      interface org.freedesktop.DBus.Introspectable {
        methods:
          Introspect(out s xml);
        signals:
        properties:
      };
      interface org.bluez.GattCharacteristic1 {
        methods:
          ReadValue(in  a{sv} options,
                    out ay value);
          WriteValue(in  ay value,
                     in  a{sv} options);
          StartNotify();
          StopNotify();
        signals:
        properties:
          readonly s UUID = '00010001-0000-1000-8000-011f2000046d';
          readonly o Service = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service0048';
          readonly ay Value = [];
          readonly b Notifying = false;
          readonly as Flags = ['read', 'write-without-response', 'write', 'notify'];
      };
      interface org.freedesktop.DBus.Properties {
        methods:
          Get(in  s interface,
              in  s name,
              out v value);
          Set(in  s interface,
              in  s name,
              in  v value);
          GetAll(in  s interface,
                 out a{sv} properties);
        signals:
          PropertiesChanged(s interface,
                            a{sv} changed_properties,
                            as invalidated_properties);
        properties:
      };
      node /org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service0048/char0049/desc004b {
        interface org.freedesktop.DBus.Introspectable {
          methods:
            Introspect(out s xml);
          signals:
          properties:
        };
        interface org.bluez.GattDescriptor1 {
          methods:
            ReadValue(in  a{sv} options,
                      out ay value);
            WriteValue(in  ay value,
                       in  a{sv} options);
          signals:
          properties:
            readonly s UUID = '00002902-0000-1000-8000-00805f9b34fb';
            readonly o Characteristic = '/org/bluez/hci1/dev_DF_91_1D_9B_9B_A2/service0048/char0049';
            readonly ay Value = [];
        };
        interface org.freedesktop.DBus.Properties {
          methods:
            Get(in  s interface,
                in  s name,
                out v value);
            Set(in  s interface,
                in  s name,
                in  v value);
            GetAll(in  s interface,
                   out a{sv} properties);
          signals:
            PropertiesChanged(s interface,
                              a{sv} changed_properties,
                              as invalidated_properties);
          properties:
        };
      };
    };
  };
};
1 Like

Excellent. I think we rely on devices asserting a Class, which your kb doesn’t. But it’s always been like that as far as I know.

Leave it with us.

May i be free to ask, what the holdbacks are at the moment , to launch a release?
Not to put pressure, just to know… I’m curious.

There are still issues that need resolving for a stable release.
Nothing stops you from installing v19 manually however, so we think that the current release state makes sense.

1 Like

Is there a list of issues or can i follow progress somewhere?
I’m willing to wait for stable release though

This thread is the best place for tracking issues.

ok
So only screensaver issues… ?

Nope, also still AAC issues, prolly quite a few more other little things.

There aren’t any outstanding screensaver issues from our side.
Some screensavers simply don’t work.

Can you point us to where you first raised this, please?

IIRC I couldn’t reproduce it.

Sam has all the info, gave him a sample two times and I raised it at the beginning of the testing fase, so more then year ago.

Couldn’t reproduce either – but we might be talking about something different, because we haven’t had v19 test builds for more than a year.

I’ve still got David.Attenboroughs.Dragons.and.Damsels.2019-sample.mkv
We can check that again shortly.

I don’t have an issue with that clip. Can you upload some debug logs for us?

Did all back then: [TESTING] Linux 4.9 kernel and improved video stack for Vero 4K / 4K + - #548 by Theetjuh

Sorry, that upload will be long gone - deleted after 3 months. And lots of changes have happened since. Can we get a new log?

Sorry about the football BTW.

https://paste.osmc.tv/uqevelenid

Hickups at 25 and 51 seconds of the file.

Yeah shame, but atleast we won with F1 :partying_face:

One question … will Kodi 19 come as an automatic update? When will it come? Or do I have to install Kodi 19 myself?