After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 731977 - Wacom Intuos4 OLEDs don't show anything
Wacom Intuos4 OLEDs don't show anything
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: wacom
3.14.x
Other Linux
: Normal normal
: ---
Assigned To: Carlos Garnacho
gnome-settings-daemon-maint
Depends on:
Blocks:
 
 
Reported: 2014-06-20 17:11 UTC by w.olf
Modified: 2014-10-26 18:58 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
wacom: add missing config.h include (880 bytes, patch)
2014-08-28 19:08 UTC, Benjamin Tissoires
committed Details | Review

Description w.olf 2014-06-20 17:11:32 UTC
So, as the title says the OLEDs don't work. The tablet and the buttons work just fine. In Windows the OLEDs work as they should so the problem is with GNOME. (I've understood that GNOME is responsible for showing text in the OLEDs.) I'm not sure when this bug emerged but it was definitely earlier this year. Before that the OLEDs worked properly. I hope someone can help me with this. It's a bit hard to remember what the buttons do without the OLEDs.
Comment 1 Bastien Nocera 2014-06-20 17:58:34 UTC
Thanks for taking the time to report this bug.
This bug report isn't very useful because it doesn't describe the bug well. If you have time and can still reproduce the bug, please read http://bugzilla.gnome.org/bug-HOWTO.html and add a more useful description to this bug.
Comment 2 w.olf 2014-06-21 12:51:37 UTC
I'm sorry that I don't have much information about this bug. I don't know the exact steps to reproduce the bug because I don't know when/how it actually emerged. The only way I can think of is to get Intuos4, Arch Linux, GNOME and the Linux driver for Wacom and see if it works. Anyway, I'll try to give as much information as I can. I'm using Arch Linux and GNOME as DE. All the packages, including the Wacom driver for Linux, are up to date. Earlier this year the tablet and the OLEDs worked properly, for example one of the buttons sent keystroke ctrl+z and the OLED next to it showed text 'Ctrl+Z'. Then (most likely) I updated GNOME and the OLEDs stopped showing the text. I first thought the driver was causing the bug and reported about it on their bug tracker. Here's the link: http://sourceforge.net/p/linuxwacom/bugs/245/ As you can see, I tested if the driver was broken but the result was that driver worked just fine. It seems that somehow GNOME doesn't set the OLEDs to show text properly. I don't know why that is but maybe you can figure it out. If you need more information just tell me.
Comment 3 Bastien Nocera 2014-06-23 16:52:21 UTC
I think it's fixed by:
https://git.gnome.org/browse/gnome-settings-daemon/commit/plugins/wacom?id=288a318ea97e0e7d6ccb8e245d21f90aee33c808

Please test.

(apparently a change of behaviour in input device drivers in kernel 3.14)
Comment 4 w.olf 2014-06-29 17:27:05 UTC
(In reply to comment #3)
> I think it's fixed by:
> https://git.gnome.org/browse/gnome-settings-daemon/commit/plugins/wacom?id=288a318ea97e0e7d6ccb8e245d21f90aee33c808
> 
> Please test.
> 
> (apparently a change of behaviour in input device drivers in kernel 3.14)

I tried that but I couldn't build the package. I don't know what happened, everything went fine but the Makefile.in was not found. It requested me to put some m4 macros to a folder and I did that but it still wouldn't work.

I also don't know if this would help anyway because I don't have a wireless Wacom tablet. I understood that this patch is for wireless tablets.
Comment 5 Bastien Nocera 2014-06-30 10:02:24 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > I think it's fixed by:
> > https://git.gnome.org/browse/gnome-settings-daemon/commit/plugins/wacom?id=288a318ea97e0e7d6ccb8e245d21f90aee33c808
> > 
> > Please test.
> > 
> > (apparently a change of behaviour in input device drivers in kernel 3.14)
> 
> I tried that but I couldn't build the package. I don't know what happened,
> everything went fine but the Makefile.in was not found. It requested me to put
> some m4 macros to a folder and I did that but it still wouldn't work.

Install gnome-common and run the autogen.sh script. But if you struggle with it, ask your distribution to create a test package for it.

> I also don't know if this would help anyway because I don't have a wireless
> Wacom tablet. I understood that this patch is for wireless tablets.

It tangentially fixes it for wired tablets as well (the released version doesn't work, the version with that patch does, on my wired Intuos 4).
Comment 6 Benjamin Tissoires 2014-08-26 19:03:16 UTC
I just want to add by 2 cents here.

I tried really hard to make a bare new install of F21 working with the OLEDs on the Intuos 4 through bluetooth and USB. They simply do not work because the journal never shows that it calls gsd-wacom-oled-helper.
The LED part works definitively fine, but the OLED just does not.

There is not that much difference from what I can see between LEDs and OLEDs: both dconf settings are updated correctly, but the gsd-wacom-oled-helper is simply not called.

Calling manually gsd-wacom-oled-helper with the proper arguments does change the OLED display however. So my guess is that the hook which calls the helper fails somewhere, and we are stuck without OLED (which is a shame)

Bastien, do you have any clues of what could be happening?
Comment 7 Benjamin Tissoires 2014-08-28 18:00:34 UTC
Making some progress here. The following change makes the OLED back alive:

diff --git a/plugins/wacom/gsd-wacom-oled.c b/plugins/wacom/gsd-wacom-oled.c
index 004edcf..0cfad97 100644
--- a/plugins/wacom/gsd-wacom-oled.c
+++ b/plugins/wacom/gsd-wacom-oled.c
@@ -232,11 +232,6 @@ set_oled (GsdWacomDevice   *device,
        gboolean ret;
        char *buffer;
 
-#ifndef HAVE_GUDEV
-       /* Not implemented on non-Linux systems */
-       return;
-#endif
-
        char *button_id_1;
        int button_id_short;
        button_id_1 = g_strdup (button_id);

---

Is there any more elegant way to fix that?
Comment 8 Bastien Nocera 2014-08-28 18:36:15 UTC
(In reply to comment #7)
> Making some progress here. The following change makes the OLED back alive:
> 
> diff --git a/plugins/wacom/gsd-wacom-oled.c b/plugins/wacom/gsd-wacom-oled.c
> index 004edcf..0cfad97 100644
> --- a/plugins/wacom/gsd-wacom-oled.c
> +++ b/plugins/wacom/gsd-wacom-oled.c
> @@ -232,11 +232,6 @@ set_oled (GsdWacomDevice   *device,
>         gboolean ret;
>         char *buffer;
> 
> -#ifndef HAVE_GUDEV
> -       /* Not implemented on non-Linux systems */
> -       return;
> -#endif
> -
>         char *button_id_1;
>         int button_id_short;
>         button_id_1 = g_strdup (button_id);
> 
> ---
> 
> Is there any more elegant way to fix that?

#include <config.h> at the top of the file...

Not sure how we all missed that.
Comment 9 Benjamin Tissoires 2014-08-28 19:00:22 UTC
(In reply to comment #8)
> #include <config.h> at the top of the file...
> 

I confirm that this works nicely.
Preparing the patch right now.
Comment 10 Benjamin Tissoires 2014-08-28 19:08:03 UTC
Created attachment 284739 [details] [review]
wacom: add missing config.h include

Without this, HAVE_GUDEV is not defined, and set_oled terminates
abruptely, leaving out the possibility to set the OLEDs on the Intuos 4.

As Bastien said "Not sure how we all missed that".
Comment 11 Bastien Nocera 2014-08-28 19:19:14 UTC
config.h is supposed to be the first thing you include in the file
though (as it contains #defines that tell you whether or not to include
a particular feature, such as 64-bit open, etc.), so I moved it up.

Thanks for catching that!

Attachment 284739 [details] pushed as 14937ab - wacom: add missing config.h include
Comment 12 w.olf 2014-10-26 15:06:39 UTC
It seems this bug is back... Version 3.14.1-1 of gsd fixed the problem but version 3.14.1-2 brought it back - the oled screens don't work (again).
Comment 13 Bastien Nocera 2014-10-26 16:06:40 UTC
(In reply to comment #12)
> It seems this bug is back... Version 3.14.1-1 of gsd fixed the problem but
> version 3.14.1-2 brought it back - the oled screens don't work (again).

Are you sure it's not a kernel upgrade which broke it? Try downgrading to 3.14.1-1. In any case, that's a downstream change, bring it up with your distribution.
Comment 14 w.olf 2014-10-26 17:13:36 UTC
Well, here is how it went: oleds didn't work with version 3.12.2-1 of gsd. 2014-10-18 I upgraded gsd to version 3.14.1-1 and the oleds started to work again and they worked until 2014-10-25 when I upgraded gsd to version 3.14.1-2. 2014-10-23 was the last kernel upgrade and it didn't change anything. All I can think of is that gsd is causing this problem not the distribution. I don't think the Arch developers can do anything about this.
Comment 15 Bastien Nocera 2014-10-26 17:19:17 UTC
(In reply to comment #14)
> Well, here is how it went: oleds didn't work with version 3.12.2-1 of gsd.
> 2014-10-18 I upgraded gsd to version 3.14.1-1 and the oleds started to work
> again and they worked until 2014-10-25 when I upgraded gsd to version 3.14.1-2.
> 2014-10-23 was the last kernel upgrade and it didn't change anything. All I can
> think of is that gsd is causing this problem not the distribution. I don't
> think the Arch developers can do anything about this.

If it works with 3.14.1-1 and not with 3.14.1-2 then it's a packaging bug. The one difference in package release version means a packaging change by the distribution. I don't know what they did between version -1 and -2.

Also, given that there are no changes in GNOME related to wacom after the 3.14.1 release, it's definitely a distribution bug. Bring that up with your distribution.
Comment 16 w.olf 2014-10-26 18:58:06 UTC
Sorry, my bad... I'm not so familiar with these things. But thank you for the information, I'll inform the Arch guys about this.