Author Topic: [SOLVED] Start g15daemon on startup  (Read 1703 times)

0 Members and 1 Guest are viewing this topic.

Offline rumblebee

  • Neuling
  • *
  • Posts: 24
    • Greatest British Series
  • Desktop: OpenBox
  • GPU Card: AMD Radeon HD6450
  • GPU driver: free
  • Kernel: linux315-x64
  • Skill: Novice
[SOLVED] Start g15daemon on startup
« on: 12. February 2014, 19:08:07 »
Hi,
I have a Logitech G15 Keyboard and I installed the g15daemon which let's me use the keyboard's lcd. I can start it using
Code: [Select]
sudo g15daemonEverything works perfectly

I tried then to start the daemon on starting Manjaro with:
Code: [Select]
sudo systemctl enable g15daemon
Which gives me no error message, but on restart it doesn't start.

I found this post: https://bbs.archlinux.de/viewtopic.php?pid=301008#p301008
which seemed to be the solution, so I added the udev rule and created the script, but still, nothing happens.

I changed the logging level of udev, but can't find anything about where udev actually logs (I guess it's /var/log/error.log but there is nothing about my G15). o.O

Now I tested my rule with:
Code: [Select]
sudo udevadm test /sys/bus/usb/devices/8-3(which seems to be my G15)
the output is:
Code: [Select]
=== trie on-disk ===
tool version:          208
file size:         5866515 bytes
header size             80 bytes
strings            1296323 bytes
nodes              4570112 bytes
load module index
read rules file: /usr/lib/udev/rules.d/10-dm.rules
read rules file: /usr/lib/udev/rules.d/11-dm-lvm.rules
read rules file: /usr/lib/udev/rules.d/13-dm-disk.rules
read rules file: /etc/udev/rules.d/20-G15_keyboard.rules
read rules file: /usr/lib/udev/rules.d/40-hpet-permissions.rules
read rules file: /usr/lib/udev/rules.d/40-usb_modeswitch.rules
read rules file: /usr/lib/udev/rules.d/42-usb-hid-pm.rules
read rules file: /usr/lib/udev/rules.d/50-firmware.rules
read rules file: /usr/lib/udev/rules.d/50-udev-default.rules
read rules file: /usr/lib/udev/rules.d/56-hpmud.rules
read rules file: /usr/lib/udev/rules.d/60-cdrom_id.rules
read rules file: /usr/lib/udev/rules.d/60-keyboard.rules
read rules file: /usr/lib/udev/rules.d/60-openobex.rules
read rules file: /usr/lib/udev/rules.d/60-pcmcia.rules
read rules file: /usr/lib/udev/rules.d/60-persistent-alsa.rules
read rules file: /usr/lib/udev/rules.d/60-persistent-input.rules
read rules file: /usr/lib/udev/rules.d/60-persistent-serial.rules
read rules file: /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
read rules file: /usr/lib/udev/rules.d/60-persistent-storage.rules
read rules file: /usr/lib/udev/rules.d/60-persistent-v4l.rules
read rules file: /usr/lib/udev/rules.d/60-vboxdrv.rules
read rules file: /usr/lib/udev/rules.d/61-accelerometer.rules
read rules file: /usr/lib/udev/rules.d/63-md-raid-arrays.rules
read rules file: /usr/lib/udev/rules.d/64-btrfs.rules
read rules file: /usr/lib/udev/rules.d/64-md-raid-assembly.rules
read rules file: /usr/lib/udev/rules.d/69-cd-sensors.rules
read rules file: /usr/lib/udev/rules.d/69-dm-lvm-metad.rules
read rules file: /usr/lib/udev/rules.d/69-libmtp.rules
read rules file: /usr/lib/udev/rules.d/69-xorg-vmmouse.rules
read rules file: /usr/lib/udev/rules.d/70-infrared.rules
read rules file: /usr/lib/udev/rules.d/70-power-switch.rules
read rules file: /usr/lib/udev/rules.d/70-printers.rules
read rules file: /usr/lib/udev/rules.d/70-uaccess.rules
read rules file: /usr/lib/udev/rules.d/71-seat.rules
read rules file: /usr/lib/udev/rules.d/73-seat-late.rules
read rules file: /usr/lib/udev/rules.d/75-net-description.rules
read rules file: /usr/lib/udev/rules.d/75-probe_mtd.rules
read rules file: /usr/lib/udev/rules.d/75-tty-description.rules
read rules file: /usr/lib/udev/rules.d/77-mm-ericsson-mbm.rules
read rules file: /usr/lib/udev/rules.d/77-mm-huawei-net-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-longcheer-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-mtk-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-nokia-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-pcmcia-device-blacklist.rules
read rules file: /usr/lib/udev/rules.d/77-mm-platform-serial-whitelist.rules
read rules file: /usr/lib/udev/rules.d/77-mm-simtech-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-telit-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-usb-device-blacklist.rules
read rules file: /usr/lib/udev/rules.d/77-mm-usb-serial-adapters-greylist.rules
read rules file: /usr/lib/udev/rules.d/77-mm-x22x-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-mm-zte-port-types.rules
read rules file: /usr/lib/udev/rules.d/77-nm-olpc-mesh.rules
read rules file: /usr/lib/udev/rules.d/78-sound-card.rules
read rules file: /usr/lib/udev/rules.d/80-drivers.rules
read rules file: /usr/lib/udev/rules.d/80-mm-candidate.rules
read rules file: /usr/lib/udev/rules.d/80-net-name-slot.rules
read rules file: /usr/lib/udev/rules.d/80-udisks.rules
read rules file: /usr/lib/udev/rules.d/80-udisks2.rules
read rules file: /usr/lib/udev/rules.d/85-usbmuxd.rules
read rules file: /usr/lib/udev/rules.d/90-alsa-restore.rules
read rules file: /usr/lib/udev/rules.d/90-pulseaudio.rules
read rules file: /usr/lib/udev/rules.d/95-cd-devices.rules
read rules file: /usr/lib/udev/rules.d/95-dm-notify.rules
read rules file: /usr/lib/udev/rules.d/95-udev-late.rules
read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-dell.rules
read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-fujitsu.rules
read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-gateway.rules
read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-ibm.rules
read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-lenovo.rules
read rules file: /usr/lib/udev/rules.d/95-upower-battery-recall-toshiba.rules
read rules file: /usr/lib/udev/rules.d/95-upower-csr.rules
read rules file: /usr/lib/udev/rules.d/95-upower-hid.rules
read rules file: /usr/lib/udev/rules.d/95-upower-wup.rules
read rules file: /usr/lib/udev/rules.d/99-laptop-mode.rules
read rules file: /usr/lib/udev/rules.d/99-systemd.rules
rules contain 196608 bytes tokens (16384 * 12 bytes), 27757 bytes strings
14136 strings (129077 bytes), 11869 de-duplicated (103588 bytes), 2268 trie nodes used
RUN '/usr/local/bin/start_g15' /etc/udev/rules.d/20-G15_keyboard.rules:1
IMPORT builtin 'usb_id' /usr/lib/udev/rules.d/50-udev-default.rules:9
IMPORT builtin 'hwdb' /usr/lib/udev/rules.d/50-udev-default.rules:9
MODE 0664 /usr/lib/udev/rules.d/50-udev-default.rules:36
PROGRAM '/usr/sbin/obex-check-device 046d c223' /usr/lib/udev/rules.d/60-openobex.rules:3
starting '/usr/sbin/obex-check-device 046d c223'
'/usr/sbin/obex-check-device 046d c223' [6220] exit with return code 1
RUN '/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} vboxusers' /usr/lib/udev/rules.d/60-vboxdrv.rules:6
IMPORT builtin 'path_id' /usr/lib/udev/rules.d/71-seat.rules:43
RUN 'lmt-udev force modules=usb-autosuspend devices=%k' /usr/lib/udev/rules.d/99-laptop-mode.rules:3
handling device node '/dev/bus/usb/008/017', devnum=c189:912, mode=0664, uid=0, gid=0
preserve permissions /dev/bus/usb/008/017, 020664, uid=0, gid=0
preserve already existing symlink '/dev/char/189:912' to '../bus/usb/008/017'
ACTION=add
BUSNUM=008
DEVNAME=/dev/bus/usb/008/017
DEVNUM=017
DEVPATH=/devices/pci0000:00/0000:00:13.1/usb8/8-3
DEVTYPE=usb_device
DRIVER=usb
ID_BUS=usb
ID_FOR_SEAT=usb-pci-0000_00_13_1-usb-0_3
ID_MODEL=Logitech_G15_Keyboard
ID_MODEL_ENC=Logitech\x20G15\x20Keyboard
ID_MODEL_FROM_DATABASE=G11/G15 Keyboard / USB Hub
ID_MODEL_ID=c223
ID_PATH=pci-0000:00:13.1-usb-0:3
ID_PATH_TAG=pci-0000_00_13_1-usb-0_3
ID_REVISION=0103
ID_SERIAL=Logitech_Logitech_G15_Keyboard
ID_USB_INTERFACES=:090000:
ID_VENDOR=Logitech
ID_VENDOR_ENC=Logitech
ID_VENDOR_FROM_DATABASE=Logitech, Inc.
ID_VENDOR_ID=046d
MAJOR=189
MINOR=912
PRODUCT=46d/c223/103
SUBSYSTEM=usb
TAGS=:seat:
TYPE=9/0/0
UDEV_LOG=6
UPOWER_VENDOR=Logitech, Inc.
USEC_INITIALIZED=11463827
run: '/usr/share/virtualbox/VBoxCreateUSBNode.sh 189 912 09 vboxusers'
run: 'lmt-udev force modules=usb-autosuspend devices=8-3'
unload module index

"lsusb | grep G15" output:
Code: [Select]
Bus 008 Device 019: ID 046d:c222 Logitech, Inc. G15 Keyboard / LCD
Bus 008 Device 018: ID 046d:c221 Logitech, Inc. G11/G15 Keyboard / Keyboard
Bus 008 Device 017: ID 046d:c223 Logitech, Inc. G11/G15 Keyboard / USB Hub

So it's the USB Hub of the keyboard, but I also tried the other IDs. I can't see anything about my rule, except that the file is found, but udev doesn't seem to connect it to the device...

I created the rule at cat /etc/udev/rules.d/20-G15_keyboard.rules
content:
Code: [Select]
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c223", RUN+="/usr/local/bin/start_g15"

I have no idea what to do next anymore, I spent hours already, but it seems to be impossible to get my LCD running without starting it manually and typing in my password.
« Last Edit: 05. March 2014, 22:04:55 by rumblebee »

Offline Verändert2.0

  • Held Mitglied
  • *****
  • Posts: 1890
  • Ni Dieu ni maître
  • Skill: Novice
Re: Start g15daemon on startup
« Reply #1 on: 12. February 2014, 21:18:52 »
Let's start with the output of systemctl status g15daemon.

No time to despair yet btw. We can just use visudo and grant you the right to autostart g15daemon as a brute force approach.

Offline rumblebee

  • Neuling
  • *
  • Posts: 24
    • Greatest British Series
  • Desktop: OpenBox
  • GPU Card: AMD Radeon HD6450
  • GPU driver: free
  • Kernel: linux315-x64
  • Skill: Novice
Re: Start g15daemon on startup
« Reply #2 on: 13. February 2014, 17:32:47 »
hey, thanks for your answer.

systemctl status g15daemon says:
Code: [Select]
g15daemon.service - Logitech G15 Support Daemon
Loaded: loaded (/usr/lib/systemd/system/g15daemon.service; enabled)
Active: failed (Result: exit-code) since Do 2014-02-13 16:58:46 CET; 32min ago
Docs: man:g15daemon(1)
Process: 260 ExecStart=/usr/bin/g15daemon (code=exited, status=1/FAILURE)

Offline rumblebee

  • Neuling
  • *
  • Posts: 24
    • Greatest British Series
  • Desktop: OpenBox
  • GPU Card: AMD Radeon HD6450
  • GPU driver: free
  • Kernel: linux315-x64
  • Skill: Novice
Re: Start g15daemon on startup
« Reply #3 on: 05. March 2014, 22:04:30 »
Just to complete this topic and help others who may encounter this problem:
I managed to automatically start the g15daemon by doing exactly what is described in the post i mentioned in my first post of this thread: https://bbs.archlinux.de/viewtopic.php?pid=301008#p301008
BUT it is not
Code: [Select]
SUBSYSTEM=="usb"instead you have to use:
Code: [Select]
SUBSYSTEMS=="usb"
so plural of SUBSYSTEM ;)
Additional info: for my non-refresh G15 I used "ATTRS{idProduct}=="c222""

Offline Verändert2.0

  • Held Mitglied
  • *****
  • Posts: 1890
  • Ni Dieu ni maître
  • Skill: Novice
Re: [SOLVED] Start g15daemon on startup
« Reply #4 on: 06. March 2014, 07:27:13 »
Sorry, i hadn't seen your reply.

I marked this as solved for you now.

Offline bonedriven

  • Jr. Mitglied
  • **
  • Posts: 68
  • Branch: Stable
  • Desktop: KDE
  • GPU Card: Intel + Nvidia GT 755M
  • GPU driver: non-free
  • Kernel: linux310, linux313
  • Skill: Novice
Re: [SOLVED] Start g15daemon on startup
« Reply #5 on: 14. June 2014, 08:07:27 »
Hello, I have the same problem which g15daemon can't startup with error
Code: [Select]
$ sudo systemctl status g15daemon.service
● g15daemon.service - Logitech G15 Support Daemon
   Loaded: loaded (/usr/lib/systemd/system/g15daemon.service; enabled)
   Active: failed (Result: exit-code) since sam. 2014-06-14 07:58:36 CEST; 5min ago
     Docs: man:g15daemon(1)
  Process: 544 ExecStart=/usr/bin/g15daemon (code=exited, status=1/FAILURE)
I created the same rule udev rule and the script but still the service can't run.

However, my keyboard is logitech g105, which has pretty much the same extra keys as g15 (3 M keys and 6 G keys)