Results 1 to 6 of 6

Thread: Logitech K400 Plus/SLES on Raspberry Pi 3 - activate module?

Hybrid View

  1. #1

    Logitech K400 Plus/SLES on Raspberry Pi 3 - activate module?

    This question arose in an earlier thread with other issues. I'm starting a new thread to separate it from the other issues, and with some additional information.

    I'm running SLES 12, aarch64, on a Raspberry Pi 3. On both Raspbian and Fedora running on the Pi, the OS saw the K400 Plus keyboard on first boot, and that keyboard/trackpad worked just fine. On SLES 12, it didn't see the K400+ (apparently), and I've had to plug in a USB kbd & mouse to do any work. I'd like to try (again) to get the K400+ working on SLES -- I'm liking SLES, but I really need to get rid of the USB devices on my Pi.

    I did find and install the Solaar package. WARNING: the version from the SUSE repository is outdated, even though the version numbers are the same! Go to the Github repository ( https://github.com/pwr/Solaar ) and download the zip from there; unzip it; connect to the Solaar master directory; and run the setup.py program there ("build" and then "install"). The updated version on Github includes support for the K400+.

    The problem is that Solaar is used to pair and configure Logitech devices. It isn't the driver for kbd/mouse that the kernel needs. That driver appears to be loaded as a module, but the keyboard still doesn't work. The kbd/trackpad are paired to the USB wireless dongle, and Solaar sees and can configure it just fine, but the kbd doesn't interact with the OS.

    Solaar reports:
    Index : 1
    Wireless PID : 404D
    Protocol : HID++ 2.0
    Polling rate : 8 ms (125Hz)
    Serial : ABAF0629
    Bootloader : BOT 22.01.B0001
    Firmware : RQK 63.01.B0014
    Other :

    modinfo reports:
    pi-6:~ # modinfo hid_logitech_dj
    filename: /lib/modules/4.4.21-90-default/kernel/drivers/hid/hid-logitech-dj.ko
    author: nlopezcasad@logitech.com
    author: Nestor Lopez Casado
    author: Logitech
    license: GPL
    srcversion: F3A9F93C83C7C05995A1FE7
    alias: hid:b0003g*v0000046Dp0000C532
    alias: hid:b0003g*v0000046Dp0000C52B
    depends:
    supported: yes
    intree: Y
    vermagic: 4.4.21-90-default SMP mod_unload modversions aarch64
    signer: SUSE Linux Enterprise Secure Boot Signkey
    sig_key: 3F:B0:77:B6:CE:BC:6F:F2:52:2E:1C:14:8C:57:C7:77:C7 :88:E3:E7
    sig_hashalgo: sha256

    So it appears that the driver has loaded, and the USB dongle is paired, but the kernel isn't seeing the characters come from the kbd/trackpad.

    Has anyone gotten this combination to work? I'm pretty sure this is a simple configuration error on my part, but after much trying, I still haven't gotten it to work.

    Thanks for any suggestions you can offer.

  2. Re: Logitech K400 Plus/SLES on Raspberry Pi 3 - activate module?

    On Fri 30 Dec 2016 05:34:01 PM CST, hdtodd wrote:

    This question arose in an earlier thread with other issues. I'm
    starting a new thread to separate it from the other issues, and with
    some additional information.

    I'm running SLES 12, aarch64, on a Raspberry Pi 3. On both Raspbian and
    Fedora running on the Pi, the OS saw the K400 Plus keyboard on first
    boot, and that keyboard/trackpad worked just fine. On SLES 12, it
    didn't see the K400+ (apparently), and I've had to plug in a USB kbd &
    mouse to do any work. I'd like to try (again) to get the K400+ working
    on SLES -- I'm liking SLES, but I really need to get rid of the USB
    devices on my Pi.

    I did find and install the Solaar package. WARNING: the version from
    the SUSE repository is outdated, even though the version numbers are the
    same! Go to the Github repository ( https://github.com/pwr/Solaar ) and
    download the zip from there; unzip it; connect to the Solaar master
    directory; and run the setup.py program there ("build" and then
    "install"). The updated version on Github includes support for the
    K400+.

    The problem is that Solaar is used to pair and configure Logitech
    devices. It isn't the driver for kbd/mouse that the kernel needs. That
    driver appears to be loaded as a module, but the keyboard still doesn't
    work. The kbd/trackpad are paired to the USB wireless dongle, and
    Solaar sees and can configure it just fine, but the kbd doesn't interact
    with the OS.

    Solaar reports:
    Index : 1
    Wireless PID : 404D
    Protocol : HID++ 2.0
    Polling rate : 8 ms (125Hz)
    Serial : ABAF0629
    Bootloader : BOT 22.01.B0001
    Firmware : RQK 63.01.B0014
    Other :

    modinfo reports:
    pi-6:~ # modinfo hid_logitech_dj
    filename:
    /lib/modules/4.4.21-90-default/kernel/drivers/hid/hid-logitech-dj.ko
    author: nlopezcasad@logitech.com
    author: Nestor Lopez Casado
    author: Logitech
    license: GPL
    srcversion: F3A9F93C83C7C05995A1FE7
    alias: hid:b0003g*v0000046Dp0000C532
    alias: hid:b0003g*v0000046Dp0000C52B
    depends:
    supported: yes
    intree: Y
    vermagic: 4.4.21-90-default SMP mod_unload modversions aarch64
    signer: SUSE Linux Enterprise Secure Boot Signkey
    sig_key:
    3F:B0:77:B6:CE:BC:6F:F2:52:2E:1C:14:8C:57:C7:77:C7 :88:E3:E7
    sig_hashalgo: sha256

    So it appears that the driver has loaded, and the USB dongle is paired,
    but the kernel isn't seeing the characters come from the kbd/trackpad.

    Has anyone gotten this combination to work? I'm pretty sure this is a
    simple configuration error on my part, but after much trying, I still
    haven't gotten it to work.

    Thanks for any suggestions you can offer.
    Hi
    A missing kernel module - hid_logitech_hidpp

    I have a K400r and connected to a laptop running SLED 12 SP2 and it
    works fine but uses the above module. Give me a few and will look at
    building a module (as a kmp) to see if all works.

    --
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    openSUSE Leap 42.1|GNOME 3.16.2|4.1.36-41-default
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!


  3. Re: Logitech K400 Plus/SLES on Raspberry Pi 3 - activate mod

    Hi
    So building that module makes my Logitech 400r spring into life, so you can download the src rpm and rebuild that locally, the reason for this is the kernel has updated and OBS only has the default kernel. Or you could just rebuild the modules in /usr/src/linux-4.4.21-90/drivers/hid and manually install the hid-logitech-hidpp.ko in /lib/modules/4.4.21-90-default/updates/.

    Else grab the src rpm from;
    http://download.opensuse.org/reposit...SP2-RPI-Extra/

    At present it's still scheduled to build;
    https://build.opensuse.org/package/s...logitech-hidpp

    Then install;
    Code:
    zypper in kernel-source make gcc rpm-build
    NOTE: If using the kmp you also need to set /etc/modprobe.d/10-unsupported-modules.conf to 1.

    Then as you user (not root) rebuild the rpm;
    Code:
    rpmbuild --rebuild hid-logitech-hidpp-{the version}.src.rpm
    su -
    zypper in /home/youruser/rpmbuild/RPMS/aarch64/hid-logitech-hidpp-kmp-default-4.4.21_k4.4.21_90-0.aarch64.rpm
    Unplug and re-plug the receiver and should see something like the following if running journalctl -f
    Code:
    Dec 30 14:54:04 statler0 kernel: usb 1-1.4: USB disconnect, device number 12
    Dec 30 14:54:08 statler0 kernel: usb 1-1.4: new full-speed USB device number 13 using dwc2
    Dec 30 14:54:08 statler0 kernel: usb 1-1.4: New USB device found, idVendor=046d, idProduct=c52b
    Dec 30 14:54:08 statler0 kernel: usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    Dec 30 14:54:08 statler0 kernel: usb 1-1.4: Product: USB Receiver
    Dec 30 14:54:08 statler0 kernel: usb 1-1.4: Manufacturer: Logitech
    Dec 30 14:54:08 statler0 kernel: logitech-djreceiver 0003:046D:C52B.0021: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-3f980000.usb-1.4/input2
    Dec 30 14:54:08 statler0 kernel: hid_logitech_hidpp: loading out-of-tree module taints kernel.
    Dec 30 14:54:08 statler0 kernel: input: Logitech K400 as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.4/1-1.4:1.2/0003:046D:C52B.0021/0003:046D:4024.0022/input/input2
    Dec 30 14:54:08 statler0 kernel: logitech-hidpp-device 0003:046D:4024.0022: input,hidraw2: USB HID v1.11 Keyboard [Logitech K400] on usb-3f980000.usb-1.4:1
    Dec 30 14:54:17 statler0 kernel: logitech-hidpp-device 0003:046D:4024.0022: HID++ 2.0 device connected.
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SUSE SLE, openSUSE Leap/Tumbleweed (x86_64) | GNOME DE
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!

  4. #4

    Re: Logitech K400 Plus/SLES on Raspberry Pi 3 - activate mod

    Good Morning, Malcom,

    THANKS! That was exactly what I needed ... I'd never have figured it out on my own. This yielded a working Logitech K400+ kbd/trackpad on SLES 12 running on Raspberry Pi 3:

    Code:
    (connect to my home directory, download the rpm to which your link points)
    su
    zypper in kernel-source make gcc rpm-build kernel-syms
    su hdtodd (my non-root account)
    rpmbuild --rebuild hid-logitech-hidpp-4.4.21-4.1.src.rpm
    exit (return to root)
    zypper in /home/hdtodd/rpmbuild/RPMS/aarch64/hid-logitech-hidpp-kmp-default-4.4.214.4.21_k4.4.21_90-4.1.aarch64.rpm
    (unplug and replug the Logitech USB dongle)
    It works!
    Note the addition of "kernel-syms" to that first zypper command: first build attempt failed without the symbols.
    I have yet to reboot to make sure the module installs at boot time. I will verify that next and post if there's a problem, but I
    wanted to get this documented (AND THANK YOU!) first.

    I did try two other approaches first, and I'll document those for others, in reverse order.

    Second, I tried to follow your instructions and rebuild the modules in /usr/src/linux-4.4.21-90/drivers/hid and then manually install the hid-logitech-hidpp.ko in /lib/modules/4.4.21-90-default/updates/.
    Unfortunately, when I tried an insmod, the system reported something about not having symbols (I've lost the exact message) and wouldn't load the module. So I went to your RPM and that
    process was successful.

    But my first attempt was also successful, except that I've forgotten how to cause modules to be loaded at boot time (or the process
    has changed enough over the years and my memory wouldn't have served me). It did generate a functioning .ko file, though.
    For those following this, here's what I did. I googled for "building hid-logitech-hidpp" and found this link (among others):
    https://www.google.com/url?sa=t&rct=...,d.eWE&cad=rja

    And from that followed his link to this page (which is where you really want to go):
    http://steamcommunity.com/groups/lin...2224235574471/
    and downloaded the driver zip from his dropbox site:
    https://www.dropbox.com/s/n4bmw631d4...ivers.zip?dl=0

    Copied the .zip to my RPi/SLES system; created a directory for it and unzipped into that directory; did a make (the hidpp.ko file is the last thing made); copied that hid_logitech_hidpp.ko file to /lib/modules/4.4.21-90-default/kernel/drivers/hid (my current SLES version); unplugged and re-plugged the USB dongle in my RPi-3. And VOILA! Both the keys and the trackpad on the K400Plus were functioning. Again, the only problem was that the module wasn't loaded on reboot.

    I'm much more comfortable with your RPM build process since I think it yields a result that will be consistent across future updates. Thanks SOOO much for the instructions!

    David

  5. Re: Logitech K400 Plus/SLES on Raspberry Pi 3 - activate mod

    Hi David
    Just an FYI, this has been fixed and should in theory pop out with the next kernel update. So you should be able to remove the kmp, kernel-source etc and reset the unsupported modules option and all should be good to go and not need a rebuild
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SUSE SLE, openSUSE Leap/Tumbleweed (x86_64) | GNOME DE
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!

  6. #6

    Re: Logitech K400 Plus/SLES on Raspberry Pi 3 - activate mod

    Thanks for the heads-up, Malcom. I got a kernel update at about the same time as your posting, so I think I'll wait until the next kernel update before reverting mine. Though I do have VNC working now so can get at the SUSE GUI from my Mac. I'm liking it more and more! About time to install a SSD or hard disk copy attached to my Pi-3. It really performs quite well, even on the microSD card; should be quite respectable with a USB-attached drive (which is how I run Raspbian on my other Pi-3).

    Thanks again for your help on this: it really made a difference.

    David

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •