Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CKB unresponsive with STRAFE RGB #113

Closed
9 of 12 tasks
SG420 opened this issue Mar 3, 2018 · 14 comments
Closed
9 of 12 tasks

CKB unresponsive with STRAFE RGB #113

SG420 opened this issue Mar 3, 2018 · 14 comments
Labels
bug Something isn't working device-strafe GUI

Comments

@SG420
Copy link

SG420 commented Mar 3, 2018


Before you proceed

  • Try the latest code by cloning and building the project manually.
  • Read the README.md in full.
  • Skim through other .md documents in the project's root. They contain more specific information.
  • Search in open and closed Issues. Here's how.
  • Avoid opening a new issue in case a similar one already exists (don't worry, we get the notifications for closed issues as well, it will be reopened if needed).
  • Keep unrelated issues separate (create a new one if you are sure yours is unique).
  • Use Markdown to write on GitHub. Use triple backticks if copy-pasting more than one line.

Now, before you proceed even further, make sure you are following the recommendations above. It will save a lot of time for you and us in the future.


Devices information

Run ckb-dev-detect from the root of the source code tree:

$ ./ckb-dev-detect

Upload ckb-dev-detect-report.gz on GitHub with this issue.


New device support request

  • Yes
  • No

leave empty if you have no new device support requests

You should upload:

  • Linux: ckb-dev-detect-report.gz is enough
  • macOS: a full dump following the instructions

Feature request

  • Yes
  • [x ] No

leave empty if you have no feature requests

What is the program's current behavior?

What would you like it to do instead?

Any other notes & comments?


Bug report

  • Yes
  • No

Whenever I open ckb, it will open the GUI, but the keyboard buttons on the GUI will al be white, and the program will be completely unresponsive. It does not set the lighting on the keyboard. I have tried installing it through both the ckb-next-git AUR package, and installing it directly from source. I am running a fresh install of Artix lxqt on a Thinkpad T420.

General information

Source

(how and where did you get this program, e.g.: "ckb-next-git package in AUR" or "built manually using quickinstall script" or "pkg for macOS")
Currently using the version built manually with the quickinstall script.

Branch

(fill in if ckb-next was compiled manually, e.g.: "master" or "newdev")
Master branch

Logs & crash reports

(any useful information - an OS crash report, debugger's backtrace, any non-standard way of usage (BIOS mode ...) etc.)
running it through a terminal outputs the following:

QObject::startTimer: Timers cannot have negative intervals
Path to settings is "/home/$USER/.config/ckb/ckb.conf"
Scanning  "/usr/lib/ckb-animations/ckb-gradient"
Scanning  "/usr/lib/ckb-animations/ckb-heat"
Scanning  "/usr/lib/ckb-animations/ckb-mviz"
Scanning  "/usr/lib/ckb-animations/ckb-pinwheel"
Scanning  "/usr/lib/ckb-animations/ckb-rain"
Scanning  "/usr/lib/ckb-animations/ckb-random"
Scanning  "/usr/lib/ckb-animations/ckb-ripple"
Scanning  "/usr/lib/ckb-animations/ckb-wave"
Starting  "/usr/lib/ckb-animations/ckb-wave"
Starting  "/usr/lib/ckb-animations/ckb-gradient"

You should upload:

  • Linux: ckb-dev-detect-report.gz is enough
  • macOS:
    • the output of ckb-daemon:
    $ sudo launchctl unload /Library/LaunchDaemons/com.ckb.daemon.plist
    $ sudo /Applications/ckb.app/Contents/Resources/ckb-daemon
    • the output of ckb (open another terminal):
    $ sudo killall -9 ckb
    $ /Applications/ckb.app/Contents/MacOS/ckb

What is the program's current behavior?

What is the expected behavior of the program?

Any other notes & comments?


Something else

if your issue is about something else, try your best to describe it here, otherwise leave empty

@SG420
Copy link
Author

SG420 commented Mar 3, 2018

ckb-dev-detect-report.gz

screenshot_20180303_134606

@Ravenslofty
Copy link
Member

Ravenslofty commented Mar 3, 2018

Hmmm, this is interesting.

Does running echo "active rgb ff0000" > /dev/input/ckb1/cmd make your keyboard turn red? If it does, the bug is in the GUI (which is what I'm expecting at the moment), otherwise it's in the daemon. I

@SG420
Copy link
Author

SG420 commented Mar 3, 2018

@ZirconiumX Yes, it does turn the keyboard red.

@tatokis
Copy link
Member

tatokis commented Mar 3, 2018

@SG420 Did this happen after a ckb update?
I guess I'll try installing Artix Linux in a VM again, as it appears I can't use pacman properly from a live environment.

@SG420
Copy link
Author

SG420 commented Mar 3, 2018

@tatokis No, this was a fresh install for me, so it's possible there was an update before I installed it (I only installed it yesterday). As for pacman working properly in artix, you need to disable the testing sources in /etc/pacman.d/mirrorlist-arch

@tatokis
Copy link
Member

tatokis commented Mar 3, 2018

@SG420 That helped with pacman, however basestrap /mnt base base-devel, as per the installation section in the wiki, is failing with missing dependencies.
My patience has pretty much ran out at this point. Maybe I will try another OS with LXQT to test.

@Ravenslofty Ravenslofty added bug Something isn't working GUI labels Mar 4, 2018
@tatokis
Copy link
Member

tatokis commented Mar 4, 2018

I tried a live lubuntu next image, however I can't reproduce the bug there.
Maybe try running the GUI with strace and see what the last few lines are before it locks up.

795453cf6e3a

@SG420
Copy link
Author

SG420 commented Mar 5, 2018

@tatokis the issue doesn't only occur on lxqt, but also on i3 (which I am using), it doesn't happen on Manjaro on my desktop, which is also running i3. With Artix, it has the calamares installer, which is what I used to install it, at least on the lxqt version.

I ran ckb with ctrace, and this is the last few lines:

statx(18, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1, ...}) = 0
read(18, "\n", 16384)                   = 1
read(18, "", 16383)                     = 0
close(18)                               = 0
semop(229376, [{0, -1, SEM_UNDO}], 1)   = 0
getpid()                                = 5348
semop(229376, [{0, 1, SEM_UNDO}], 1)    = 0
poll([{fd=4, events=POLLIN}], 1, 18)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 22)    = 0 (Timeout)
openat(AT_FDCWD, "/dev/input/ckb0/connected", O_RDONLY|O_CLOEXEC) = 18
statx(18, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1, ...}) = 0
openat(AT_FDCWD, "/dev/input/ckb0/version", O_RDONLY|O_CLOEXEC) = 19
statx(19, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=7, ...}) = 0
statx(19, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=7, ...}) = 0
read(19, "v0.2.9\n", 16384)             = 7
read(19, "", 16377)                     = 0
close(19)                               = 0
statx(18, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1, ...}) = 0
read(18, "\n", 16384)                   = 1
read(18, "", 16383)                     = 0
close(18)                               = 0
semop(229376, [{0, -1, SEM_UNDO}], 1)   = 0
getpid()                                = 5348
semop(229376, [{0, 1, SEM_UNDO}], 1)    = 0
poll([{fd=4, events=POLLIN}], 1, 8)     = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 1 ([{fd=4, revents=POLLIN}])
read(4, "\1\0\0\0\0\0\0\0", 16)         = 8
poll([{fd=4, events=POLLIN}], 1, 0)     = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 32)    = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 33^Cstrace: Process 5348 detached
 <detached ...>

@Ravenslofty
Copy link
Member

Ravenslofty commented Mar 6, 2018 via email

@SG420
Copy link
Author

SG420 commented Mar 6, 2018

Sure, if you give me the server details I can join.

@Ravenslofty
Copy link
Member

Ravenslofty commented Mar 6, 2018 via email

@Ravenslofty
Copy link
Member

A gdb backtrace showed that this seems to be because libpulse is locking up when the PulseAudio daemon isn't running. We still can't reproduce on our end, but the backtrace gave us a reasonable guide. It can be mitigated by not building with PulseAudio support in the GUI.

The fix might be to check if PulseAudio is even running before using libpulse.

@tatokis
Copy link
Member

tatokis commented Mar 11, 2018

It should be fixed by ee1a4cc

Please confirm that the issue is indeed solved.

@tatokis
Copy link
Member

tatokis commented Mar 11, 2018

Confirmed fixed on IRC.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working device-strafe GUI
Projects
None yet
Development

No branches or pull requests

3 participants