Chienomi

XP-Penのサポート体験が最高だった

Live With Linux::hardware

先日XP-PenがLinux上でフルに使えてすごくいいという話をしたが、ワークルームのPCでは問題があった。

その問題というのは、「7680x2160のスクリーンが5760x1080と認識される」というものだ。 これはもう、その現象だけで厄介なものだと分かる。

問題というのは、その現象からある程度原因の切り分けができるもので、それができないようなものは非常に厄介であることが多い。 そして、実際のスクリーンサイズと認識されるスクリーンサイズが異なるというのは、一般的にはスケーリングの問題だと推測できる。 例えば、4kディスプレイ(幅3840px)でUIスケーリング2.0の環境でフルスクリーンにしたウェブブラウザなら、ビューポートの幅は1920pxに見える。

ところが、7680pxが5760pxになるのは1.33倍で、2160pxが1080pxになるのは2倍と、縦横で倍率が違う。 そのため、ペンタブレットも縦横の比率が違う動きになり、まともに操作できない。

次に考えられるのはディスプレイの認識がおかしい、ということだ。 それも、ちゃんと4kのディスプレイとして使えている以上変な話ではあるのだが、認識の仕方の問題という可能性も考えられる。

ところが、それも辻褄が合わない。 ワークルームのPCには2台のDell S2721QSが接続されている。全く同じディスプレイだ。 これが1台あたり2880x1080pxだと認識されているなら、間違ってはいるが一貫している。 しかし、実際はミラーリングにしたり、あるいは1台を無効にしたりして1台だけにすると、1920x1080だと認識される。 これは間違いではあるが、縦横とも2倍で、ちゃんと使うことができる状態になる。

2台を横に並べると縦横の比率がおかしくなる。これはすごく変だ。 寝室のPCもFHDと4kのディスプレイの組み合わせなので、「マルチディスプレイに対応していない」というようなこともない。

もうこうなると報告するのも憂鬱だ。説明が難しく、サポートの人に言っても伝わらないような内容になりやすい。 そしてそのような複雑な問題は、問い合わせても得てして無視されやすいのである。

だが、サポートを受けないわけにもいかない。 XP-Penのサポートは500文字という制限があるため、そこに書けるだけの情報を書いて送信した。

初手からしっかりした応答

サポートはメールによって行われた。 最初に来た内容がこれだ。

このドライバを使用してみてください。 (URL)

4Kモニターは、同じプラットフォームのDell S2721QSディスプレイを搭載した別のマシンに搭載されていますか?

これは2つのアプローチをしている。

1つは、最新のドライバに問題がある可能性の検証だ。 送信されたURLはひとつ古いバージョンのドライバで、私の場合以前からちゃんと使えていたとかではないため望み薄ではあるが、逆に以前の環境では正しく動作するものであった可能性を確認している。

後者は情報の確認だ。 私は寝室のPCは同一プラットフォームで、こちらは正しく動作するということを説明したが、ディスプレイに起因する問題であるか、マシン構成に起因する問題であるかを切り分けるためにそのことを改めて確認している。

どちらも問題の切り分けであり、トラブルシューティングのアプローチとしてとても正しい。

これに対して回答したところ、次はこのように来た。

ドライバ3.1.4は、ドライバ3.2.3と全く同じ問題があるのでしょうか? (URL) これは、ドライバ3.05です、それは動作しますか? そうでなければ、ドライバは、最新のドライバ3.2.3と同じ問題を示していますか?

Dell S2721QSをAcer ET322QKと交換するのは複雑ですか?この問題は、全く同じ2つのDell S2721QSモニターに起因しているのかどうか考えています。

同じ視点からより深く切り分けを行おうとしている。 これを見て私は「これは本気だ」と思った。実際、報告されても原因を突き止めるのは非常に困難であり、本気で突き止めようとすると問題の起きている環境が必要だ。 しかし、こちらに派遣して問題の究明を行えるようなことではないため、ユーザーに確認してもらうしかない。 可能性の高いセンからアプローチして、問題に近づこうとしている。

ならば私も応えよう

寝室マシンは当然寝室にあり、ワークルームとは少し離れている。 機材構成も複雑なため接続しているケーブルも多いし、ディスプレイもアームに固定されて、さらにルーターが載っているから移動も大変だ。

だが、本気でトラブルシューティングしようとしているサポートに対し、「めんどくさい」で断るのはナンセンス。 寝室の環境をワークルームに持ち込んで詳細な検証を行った。

その結果がこれだ。

HTMLで検証結果を掲載した

様々な組み合わせ、状態を作り出し、それをまとめた上でHTMLに書き起こす。 もはやいちユーザーがやるようなことではないが、向こうにはトラブルシューティングのために動かす手がないのだ。 なら私が手になるべきだ。

この検証結果はより困難なことを示唆している。

DELLのふたつのディスプレイを縦に並べるか横に並べるかで全く異なる結果になる。 Acerのディスプレイを追加した場合、Acerを左に置くと依然として問題があるが、右に置くと正しい。 極めつけは、Acerのディスプレイを接続して無効にした場合と、接続していない場合で結果が異なる。

この検証によって、問題がより厄介であることが判明したが、進展もあった。 マシンによって結果が変わっていないので、問題はディスプレイ構成に由来しているということが分かったのだ。

この報告に対する回答はこのようなものであった。

ドライバチームに問い合わせたところ、この問題はシステムに関連している可能性があるとのことです。さらに、私たちはこのようなドライバをテストしていません。

ドライバチームがこの問題を調査するためにもっと時間が必要かもしれません。

私としては、修正に取り組んでもらえるなら待つし、さらなる情報が必要なら言ってもらえれば検証する、であった。 というより、それしか言いようがない。 暫定的な対処も提案されたし、たしかに有効なものではあったが1、採用は困難であった。

ドライバチームがこの問題を調査します。しかし、これがドライバーのバグであることが確認された場合、いつ修正されるかを約束することはできません。

2台のDell 4Kモニターがどのようにコンピューターに接続されているか教えていただけますか?HDMIケーブルまたはDisplayPortケーブルですか?

Acerの4Kモニターはどのようにコンピュータに接続しているのでしょうか?HDMIケーブルまたはDisplayPortケーブルですか?3台目の1080Pモニターは、どのようにコンピュータに接続するのですか?

正しい対応である。 もちろん修正の目処が立たないことを私は理解している。 なにせ、問題の究明が結局できていないのだ。手探りで修正するのは困難だろう。

また、接続に起因することを疑うのもトラブルシューティングとして正しい手順だ。実際、私も接続の問題である可能性を考えて接続の変更を試した。2 だが、それは解決につながらなかった。私はそのことを返信した。

はい、了解しました。 色々なテストして頂き、大変感謝致します。 ご迷惑とご不便をかけしまして、申し訳御座いません。 ご提供頂いた全ての情報を弊社の研究サポート(R&D)にフィードバックさせていただきます。 もしドライバーについて、何か修正情報があれば、 改めてメールでご連絡致します。

ありがたい話である。修正されても報告した人に連絡なんてくれないのが普通だ。 それに私からすれば、こんなおそらく稀であろうLinuxユーザーの厄介な問題報告に真摯に向き合ってくれていることがすごく嬉しい。

さらなる検証、そして解明へ

翌日、またサポートからメールが来た。

ソフトウェアをインストールしてから、Dellの4Kモニター2台のコンピュータで実行してもらえますか?エラーが表示されたら、その結果のスクリーンショットを撮っていただけませんか?

(URL)

おそらく急ごしらえで作ったのであろう、簡素なプログラムが示されていた。 スクリーンの座標を表示するソフトウェアで、問題そのものを示している。

普通は仮に解明困難な問題が報告されたとしても、そのためにプログラムを書いたりすることはない。 私もいちユーザーがやらないような手間をかけて問題を検証したが、向こうもサポートでやらないような手間をかけて究明しようとしてきている。

これは単純に実行し、スクリーンショットを送った。 それに対する回答が次のようなものだ。

ドライバーチームに写真を渡しました。彼らは、画面1と画面2のパラメータが間違っていて、DisplayPort-0-DELA198とDisplayPort-1-DELA198のパラメータが正しいかどうかを私に尋ねて欲しいと思っています。

メールにあるスクリーンショットを撮ったとき、システムのスケーリングは100%ですよね? もし100%でないなら、システムのスケーリングが100%のときにツールをチェックしてみてください(最初のメールで、スケーリングが100%のときに問題が発生したと言っていることは知っています)。

妥当な疑問だ。私は最初にスケーリングは1.0であり、2.0にしたとしても結果は変わらないことを伝えている。 その設定方法もCinnamonのシステム設定だということも伝えてある。 だが、この部分が違ったとしたら、疑うべき要素を見逃すことになるため、念押ししておくべきだ。最も可能性が高いのはスケーリングに関わる問題であると考えられるのだから。

最初、私はCinnamonのディスプレイ設定のスクリーンショットを送ろうかと思った。 だが、その前に送られたプログラムが私にヒントを与えた。そのプログラムはQtで書かれていたのだ。

Cinnamonのスケーリング設定はGNOMEのスケーリングファクターを用いて行われる。 この設定はGtkアプリケーション以外にも影響を与える。例えばffmpegだ。 なので、「システムのスケーリング」という表現は正確なものだ。

が、Qtアプリケーションとなると話が変わってくる。Qtアプリケーションはそれとは別に自前でスケーリングの仕組みを持っており、その制御方法は環境変数による。 そして、偶然にも私はその日システムの入れ直しをやっており、.xprofileを確認している。 そこで$QT_AUTO_SCREEN_SCALE_FACTORが設定されているのを見ているのだ。

検証用アプリをQtで書いているなら、Pentablet Appも独自テーマではあるがQtなのではないか? 試しにunset QT_AUTO_SCREEN_SCALE_FACTORしてからPentablet Appを起動してみる。

BINGO.

まさにこれによって正しく認識された。

まさかこれのために$QT_AUTO_SCREEN_SCALE_FACTORをunsetするわけにもいかないが、Pentablet Appの認識の問題であればこのアプリだけunsetすれば良い。そこで

#!/bin/zsh

unset QT_AUTO_SCREEN_SCALE_FACTOR
unset QT_SCALE_FACTOR
unset QT_SCREEN_SCALE_FACTOR

exec /usr/lib/pentablet/pentablet.sh

というスクリプトを書いてみた。

OK、問題は解決した。 呼び出しているのがシェルスクリプトだから、XP-Pen側でも同じ方法で簡単に対応できるはずだ。

私はこれまでの状況、判明したこと、解決方法を記載して返信した。 暫定策としてとは起動時にunsetすることで解決するが、Pentablet Appの表示に影響を与えるため、Qtのジオメトリを使わないほうが望ましいことを付記した。

報告を受領してもらい、終了。

本当にありがとうございました。 ご指摘の件につきまして、ドライバチームで確認させていただきます。 ご不便をおかけして申し訳ありません。

人よりも問題に遭遇しやすい私は、サポートに問題報告をする機会が、一般の人よりは多いと思う。

OSSでBTSに投げることに慣れているから、サポートに投げる前に問題の確認と再現検証などは行ってから投げる。 多くの場合、再現条件もハッキリしていて、原因まで分かっていて、すべき対応まで推測できる状態になってから投げることになるから、BTSに書くときと同等の記載を行っている。

だがそこまでやったとしても、まともに対応されることは期待できない。 最も多いのは、投げた内容と全く関係のない定型文が返ってくるというものだ。Windows Updateしろとか。 このような場合に定型文以外が返ってくる可能性はほとんどない。どれだけ丁寧に説明したとしても、ただ定型文が返ってきてサポートが拒否される。 人間である必要がない。キーワードに反応して定型文を選んで送ってくるだけなのだから、Botでいい。 LINEなんかがこのタイプだ。

もっとひどいのは、サポートがクレーム対応部署のようになっていて、定型文を送りつけて打ち切るというものがある。 ConoHaがこれである。

また、サポート条件に当てはまるかの検証をユーザーにさせるというのもある。 これは、問題の究明ではなく、サポートを拒否するためのものであり、Linux対応のソフトウェアでもUbuntuでなければだめだとかそういうのもあるが、より多いのはハードウェアに起因する場合に、不良品の返品交換を拒否することを目的としたものだ。検証を一両日中にやることを求めたりして、さらにハードルを上げる場合もある。 AMDがこのスタンスで、その検証の過程で私は3700Xを折った。

バグ報告をした場合は、中身のない応答がくる場合もある。 原因から解決策まで書いても、おそらく技術部署にエスカレーションもしていないであろうものだ。 プラネックスフォースシステムズがそんな感じだった。

こうした報告は、報告を行うまでに何時間も、場合によっては何日も費やして検証を行う必要がある。 それだけの労力をかけて報告してもぞんざいに扱われると、その徒労感は果てしないし、二度とその会社の製品は使いたくないとも思う。 最近で言うとConoHaからの転出の理由になったし、DTIからも転出を考えている。

そんな中、ごく稀に、ちゃんとサポートしてくれる会社がある。 そのような会社は本当に嬉しくなる。

今回のXP-Penの対応は、私が経験した中でも過去イチだったかもしれない。 非常に素晴らしい対応であったと思うし、かなりの労力を割いて検証したことも報われた。

XP-Penはとても信頼できる企業だ。

後日談

XP-Penの製品はLinuxにしっかりと(Windowsと同等に使えるように)対応しており、ArchlinuxやManjaro Linuxにも公式に対応している。

Deco 01v2は性能に少しだけ不満があるが、「少しだけ」であるために、高性能なペンを採用するDeco Lを購入すべきだったと感じていたし、良きタイミングで買い換えるつもりでいた。ただ、板タブは本当に壊れないので、実際に買い換えるというのは結構難しい。ペンだけ買うというのもアリではあるが。

だが、今回のサポートを受けて、XP-Penに対する信頼度が大きく上がり、ここは買おうと決めた。それに値する対応であったし、将来的にも使っていけるだろうと信じられるものであったのだ。 Linuxユーザーとしては、置き去りにされたり、サポートが打ち切られたりする可能性をどうしても考える。こうしたことでハードウェアライフよりも短く使えなくなってしまうかもしれないのだ。 ペンタブレットはHIDであるから、別に特別なドライバがなくても動くことは動くが、それでお絵描きができるかというと全くの別問題である。

さすがにDeco Lを買うとDeco 01v2が完全にいらない子になってしまうので、Deco Mを購入した。 線画には10インチのタブは大きすぎると感じた3ので、もうちょっと小さいのが欲しかったのだ。 これは最初から小さいのにすればよかったということではなく、彩色や描き込みには10インチのほうが良いと感じたから、使い分けられればちゃんとメリットがある。

なかなか時間は取れないけど、お絵描きも上達できるようにがんばりたい。